Commit Graph
100 Commits
Author SHA1 Message Date
AlanCoding cd7e358b73 Inventory plugins transition dev finishing work
Bump keystone auth to resolve problem with openstack script

Clarify code path, routing to template vs. managed injector
  behavior is also now reflected in test data files

Refactor test data layout for inventory injector logic

Add developer docs for inventory plugins transition

Memoize only get_ansible_version with no parameters

Make inventory plugin injector enablement a separate
  concept from the initial_version
  switch tests to look for plugin_name as well

Add plugin injectors for tower and foreman.

Add jinja2 native types compat feature

move tower source license compare logic to management command

introduce inventory source compat mode

pin jinja2 for native Ansible types

Add parent group keys, and additional translations

manual dash sanitization for un-region-like ec2 groups

nest zones under regions using Ansible core feature just merged
  implement conditionally only with BOTH group_by options

Make compat mode default be true
  in API models, UI add and edit controllers

Add several additional hostvars to translation
Add Azure tags null case translation

Make Azure group_by key off source_vars
  to be consistent with the script

support top-level ec2 boto_profile setting
2019-03-26 10:29:39 -04:00
AlanCoding bc5881ad21 Primary development of inventory plugins, partial compat layer
Initialize some inventory plugin test data files
Implement openstack inventory plugin

This may be removed later:
- port non-JSON line strip method from core

Dupliate effort with AWX mainline devel
- Produce ansible_version related to venv

Refactor some of injector management, moving more
  of this overhead into tasks.py, when it comes to
  managing injector kwargs

Upgrade and move openstack inventory script
  sync up parameters

Add extremely detailed logic to inventory file creation
for ec2, Azure, and gce so that they are closer to a
genuine superset of what the contrib script used to give.
2019-03-26 10:29:39 -04:00
AlanCoding 622fbc116b move script injection logic to inventory file 2019-03-26 10:29:38 -04:00
AlanCoding b9d489c788 Use randomized file names for injector credential files 2019-03-26 10:29:38 -04:00
AlanCoding 5cbcfbe0c6 Port inventory source injector tests to functional tests
This new batch of tests assures that the injector logic
for inventory source in their old script version remains
untouched with the refactoring underway.

Plugins are also tested by the same means of comparing
to reference files, these will be used to assure that
all parameters that used to be respected are still
respected in the plugin system.
2019-03-26 10:29:38 -04:00
AlanCoding 43eff55fd4 fix bugs related to python3 2019-03-26 10:29:37 -04:00
AlanCoding 6c130fa6c3 Build-in inventory plugin code structure with gce working
supporting and related changes
 - Fix inconsistency between can_update / can_start
 - Avoid creating inventory file twice unnecessarily
 - Non-functional consolidation in Azure injection logic
 - Inject GCE creds as indented JSON for readability
 - Create new injector class structure, add gce
 - Reduce management command overrides of runtime environment
2019-03-26 10:29:35 -04:00
AlanCoding 7cf2bc2410 Run computed fields once for bulk delete requests 2019-03-13 15:37:01 -04:00
AlanCoding 711937b104 fix some patches that were never unapplied 2019-02-20 14:40:25 -05:00
AlanCoding 07def62373 clear the test cache at end of every test 2019-02-20 14:02:36 -05:00
AlanCoding fbf6315a8c remove star imports in tasks and non-base models 2019-02-12 19:50:30 -05:00
AlanCoding 1bf2a455c6 Do not remove edges from other inventory sources 2019-02-11 13:08:19 -05:00
AlanCoding 7676ccdbac use custom venv in inventory prooting 2019-02-01 13:29:45 -05:00
AlanCoding 13ed656506 Copy WFJT created_by to jobs it spawns 2019-01-23 09:33:14 -05:00
AlanCoding 5dd8c3ace2 Allow SCM overwrite vars in the UI 2019-01-21 13:27:57 -05:00
AlanCoding 99288a5e18 Use custom virtual environment in inventory updates 2019-01-21 06:45:55 -05:00
AlanCoding 28822d891c remove unneeded steps in inventory import
Delete some cases that directly loads scripts due
to ansible-inventory group_vars problem (now fixed)

Delete intermediate method that was a go-between the
command and the loader class

Change return type of loader from MemInventory to
a simple python dict

remove backport script and star imports
2019-01-17 08:44:55 -05:00
AlanCoding cccc038600 Updates to logging, specifically for unit tests 2019-01-15 11:34:54 -05:00
AlanCoding 77d2364022 Make docker environment interoperable with supervisorctl commands 2019-01-10 13:41:15 -05:00
AlanCoding d1b42fd583 Optimize dashboard using Django annotation for sum 2019-01-10 12:22:39 -05:00
AlanCoding 65e110cdbf catch python error when unable to find user 2018-12-13 11:47:54 -05:00
AlanCoding a3a5c6bf9f fix bug where some SJs could not be relaunched 2018-12-12 11:56:57 -05:00
AlanCoding 40b5ce4b2e link v1 pages to v2 credential type page 2018-12-06 15:41:26 -05:00
AlanCoding d2cd337c1f fix links to some resources that lack v1 pages 2018-12-06 08:29:23 -05:00
AlanCoding f09b8efa87 tests and optimizations for UJT list with non-joblet recent_jobs 2018-12-04 16:16:05 -05:00
AlanCoding 4b31367945 Do not update project details after sync jobs 2018-12-04 13:00:23 -05:00
AlanCoding b763c51f8a add type to recent_jobs 2018-11-30 15:16:09 -05:00
AlanCoding d6e89689ae do not pass artifacts to non-job nodes 2018-11-28 15:19:47 -05:00
AlanCoding 1adeb833fb clean up unwanted data in activity stream of nodes 2018-11-28 10:41:32 -05:00
AlanCoding 4c14727762 bump migration number 2018-11-27 16:12:41 -05:00
AlanCoding 012511e4f0 prohibit relaunching sliced jobs with changed count 2018-11-26 10:54:19 -05:00
AlanCoding 0b32733dc8 set fixed container names 2018-11-26 08:26:57 -05:00
AlanCoding b790b50a1a Fail job run if project is failed
provide message in traceback and explanation fields

add log messages for dependency spawns
2018-11-20 07:55:37 -05:00
AlanCoding 9cd8aa1667 further update of workflow docs for inventory feature 2018-11-19 17:35:39 -05:00
AlanCoding bca9bcf6dd fix prompts contradiction: should be non-functional change 2018-11-19 12:52:54 -05:00
AlanCoding e0a28e32eb Tweak of error message wording for model-specific name 2018-11-19 12:52:47 -05:00
AlanCoding c105885c7b Do not count template variables as prompted 2018-11-19 12:52:43 -05:00
AlanCoding c1d85f568c fix survey vars bug and inventory defaults display 2018-11-19 12:52:35 -05:00
AlanCoding 7178fb83b0 migration number bumped again 2018-11-19 12:51:51 -05:00
AlanCoding 3c980d373c bump migration number 2018-11-19 12:51:37 -05:00
AlanCoding 5b3ce1e999 add test for WFJT schedule inventory prompting 2018-11-19 12:51:33 -05:00
AlanCoding 6d4469ebbd handle inventory for WFJT editing RBAC 2018-11-19 12:51:29 -05:00
AlanCoding eb58a6cc0e add test for launching with deleted inventory 2018-11-19 12:51:26 -05:00
AlanCoding a60401abb9 fix bug with WFJT launch validation 2018-11-19 12:51:22 -05:00
AlanCoding 1203c8c0ee feature docs for workflow-level inventory 2018-11-19 12:51:18 -05:00
AlanCoding 0c52d17951 fix bug, handle RBAC, add test 2018-11-19 12:51:13 -05:00
AlanCoding 44fa3b18a9 Adjust prompt logic and views to accept workflow inventory 2018-11-19 12:50:57 -05:00
AlanCoding 33328c4ad7 initial model changes for workflow inventory 2018-11-19 12:50:29 -05:00
AlanCoding 5b274cfc2a include survey_spec in activity stream 2018-11-19 12:07:48 -05:00
AlanCoding 0ed50b380a Implement deprecation of groups_with_active_failures 2018-11-19 08:29:46 -05:00
AlanCoding 53716a4c5a include migration middleware in timings and profiling 2018-11-18 10:55:37 -05:00
AlanCoding f30bbad07d License check for slicing >1 2018-11-17 22:48:46 -05:00
AlanCoding 7417f9925f Minor cleanup of task environment vars 2018-11-16 13:28:42 -05:00
AlanCoding a9d88f728d Pre-delete bulk delete related, fix parallel request conflicts 2018-11-15 11:39:48 -05:00
AlanCoding 758a488aee Add task manager rescheduling hooks, de-duplication, lifecycle tests 2018-11-14 11:31:34 -05:00
AlanCoding 5443e10697 Fix bug with non-sliced JT job spawn 2018-11-13 15:20:40 -05:00
AlanCoding cee7ac9511 get rid of star import in unified_jobs.py 2018-11-12 13:38:58 -05:00
AlanCoding 658f87953e coalesce data without setting 2018-11-09 14:00:45 -05:00
AlanCoding 5562e636ea Coalesce host and group A.S. deletion entries 2018-11-09 13:58:31 -05:00
AlanCoding 1bed5d4af2 avoid nested on_commit use 2018-11-07 13:22:41 -05:00
AlanCoding 0783d86c6c adjust recursion error text 2018-11-07 13:22:41 -05:00
AlanCoding d068481aec link workflow job node based on job type, not UJT type 2018-11-07 13:22:40 -05:00
AlanCoding 4428dbf1ff Allow use of role_level filter in UJT list 2018-11-07 13:22:39 -05:00
AlanCoding e225489f43 workflows-in-workflows add docs and tests 2018-11-07 13:22:39 -05:00
AlanCoding 5169fe3484 safeguard against infinite loop if jobs have cycles 2018-11-07 13:22:38 -05:00
AlanCoding 01d1470544 workflow variables processing, recursion detection 2018-11-07 13:22:38 -05:00
AlanCoding faa6ee47c5 allow use of workflows in workflows 2018-11-07 13:22:38 -05:00
AlanCoding 951ebf146a remove unused project field 2018-11-05 10:40:53 -05:00
AlanCoding 7a67e0f3d6 Implement deprecation of duplicated ask_ fields in job view 2018-11-05 10:38:55 -05:00
AlanCoding 6ae1e156c8 do not block superusers with MANAGE_ORGANIZATION_AUTH setting 2018-11-02 14:13:05 -04:00
AlanCoding 47fc0a759f fix bug where grandparent groups were excluded 2018-11-02 10:10:38 -04:00
AlanCoding d8d710a83d get rid of decorator dependency 2018-10-31 11:37:10 -04:00
AlanCoding f435e577b2 Adjust slicing tooltip text 2018-10-31 11:04:14 -04:00
AlanCoding 236b332a8b bump migration number 2018-10-31 11:04:13 -04:00
AlanCoding affacb8ab5 revert change of including slice wfj ids in recent_jobs list 2018-10-31 11:04:13 -04:00
AlanCoding 37f9024940 fix slicing task_impact and script gen bugs 2018-10-31 11:04:13 -04:00
AlanCoding 6dc58af8e1 slicing rename test cleanup and bugfix 2018-10-31 11:04:12 -04:00
AlanCoding bbd3edba47 rename to slicing and schema tweaks 2018-10-31 11:04:12 -04:00
AlanCoding 475a701f78 Allow use of credential password prompting with split JTs
also
*update test to work with new JT callback call pattern
*fix spelling in template
2018-10-31 11:04:11 -04:00
AlanCoding dccd7f2e9d do not split JT callback jobs 2018-10-31 11:04:11 -04:00
AlanCoding c8d76dbe78 update migration after rebase 2018-10-31 11:04:11 -04:00
AlanCoding 20226f8984 Polish split jobs API info & add fields to UI
*clarify help text and squash migrations
*adds new internal_limit field to Job model for faster reference
*if field is non-blank, populate shard params in summary_fields
*add summary information to UI job/wfj details, JT selector
2018-10-31 11:04:10 -04:00
AlanCoding 7ff04dafd3 Fix IntegrityError deleting job splitting JT
misc:
*show sharded jobs in recent_jobs
*test updates
2018-10-31 11:04:10 -04:00
AlanCoding f9bdb1da15 Job splitting access logic and more feature development
*allow sharding with prompts and schedules
*modify create_unified_job contract to pass class & parent_field name
*make parent field name instance method & set sharded UJT field
*access methods made compatible with job sharding
*move shard job special logic from task manager to workflows
*save sharded job prompts to workflow job exclusively
*allow using sharded jobs in workflows
2018-10-31 11:04:10 -04:00
AlanCoding dab678c5cc Implement splitting logic in inventory & job task code 2018-10-31 11:04:10 -04:00
AlanCoding e513f8fe31 do 2-pass cancel for workflow jobs 2018-10-26 10:28:30 -04:00
AlanCoding 482395eb6a reduce default verbosity of devel-specific callback logging 2018-10-26 10:03:46 -04:00
AlanCoding 19030b9d5f apply docker-compose fix to cluster target too 2018-10-26 09:36:11 -04:00
AlanCoding 526ca3ae42 automatically delete project files in entire cluster 2018-10-25 16:36:58 -04:00
AlanCoding 8965f1934e fix bug with relaunching with changed JT 2018-10-25 11:45:47 -04:00
AlanCoding 8b3e49cb24 fix server error using 2 creds of same type 2018-10-24 14:59:01 -04:00
AlanCoding 72ce7b194f allow UI to filter by type again 2018-10-24 13:35:04 -04:00
AlanCoding 6117f8297e remove changelog 2018-10-18 09:52:08 -04:00
AlanCoding cfa93b52b7 Always allow resource creation via global list 2018-10-11 12:21:45 -04:00
AlanCoding bdc7efb274 humble beginnings of survey question type validation 2018-10-11 12:10:40 -04:00
AlanCoding a4dfd96a8d Validate ANSIBLE_ injectors on save and increase verbosity 2018-10-09 13:46:51 -04:00
Alan Rominger 2d642b95ae Merge pull request #2369 from AlanCoding/flake8_setup
Fix flake8 errors in setup.py
2018-10-04 12:45:34 -04:00
AlanCoding b94d5c7f20 fix flake8 errors in setup.py 2018-10-04 12:25:07 -04:00
AlanCoding 5900af726b log no-op operation and changed status 2018-09-21 15:23:02 -04:00
Alan Rominger 50a9f0be6b Merge pull request #2960 from AlanCoding/bad_locks
Put atomic block inside lock block
2018-08-30 14:53:01 -04:00