Commit Graph

1666 Commits

Author SHA1 Message Date
Wayne Witzel III
e28cd97ffb Add smart_inventories endpoint to Host 2017-05-26 10:16:12 -04:00
Chris Meyers
87eea59845 add per-inventory insights credential 2017-05-26 07:25:36 -04:00
Aaron Tan
b50820fa60 Merge pull request #6305 from jangsutsr/6272_prevent_nested_encrypted_field_leak_in_activity_stream
Prevent nested encrypted field leak in activity stream
2017-05-24 09:55:29 -04:00
Aaron Tan
a15bc6d0f7 Merge pull request #6295 from jangsutsr/6243_update_user_profile_to_record_source_backend
Introduce sso UserEnterpriseAuth model
2017-05-24 09:42:41 -04:00
Aaron Tan
7f1f68ee28 Prevent nested encrypted field leak in activity stream. 2017-05-23 14:05:55 -04:00
Chris Meyers
4461c8fe91 more robust insights error handling 2017-05-22 17:32:17 -04:00
Chris Meyers
3793f1ec09 insights proxy robust error condition handling 2017-05-22 15:02:16 -04:00
Aaron Tan
d314f83416 Introduce sso UserEnterpriseAuth model. 2017-05-22 13:30:00 -04:00
Chris Meyers
9ba0ba07ec nest insights api response data 2017-05-22 10:11:31 -04:00
Chris Meyers
fb53ca8455 insights proxy
* Issue request to Red Hat Insights API from Tower
/hosts/<id>/insights endpoint. User the first found Satellite 6
Credential as Basic Auth requests to Insights API.
2017-05-22 10:11:31 -04:00
Wayne Witzel III
bac1e8b4fe Extend SmartFilter to expand search and related search fields 2017-05-19 16:05:24 -04:00
Wayne Witzel III
e4f4cc1372 add kind to Inventory summarizable fields 2017-05-19 10:59:50 -04:00
Chris Meyers
e81a7e1c25 allow insights_system_id to be set to null via api 2017-05-18 11:31:58 -04:00
Wayne Witzel III
d652ed16d0 Dynamic -> Smart Inventory 2017-05-17 16:25:40 -04:00
Alan Rominger
430852b73d Merge pull request #6271 from AlanCoding/wfj_no_node
Remove `execution_node` from WFJ serializer
2017-05-16 14:44:50 -04:00
AlanCoding
2cbb2c6d53 remove execution_node from WFJ serializer 2017-05-16 12:31:29 -04:00
Chris Meyers
27c32de4a2 Merge pull request #6242 from chrismeyersfsu/implement-6203
associate insights machine id w/ host on fact scan
2017-05-16 10:27:45 -04:00
Matthew Jones
f96324aad8 Adding more informative fields to HA model views
Requested by the UI team to drive an Instances/InstanceGroup display
2017-05-15 15:47:48 -04:00
Wayne Witzel III
b9520c7f3b Merge pull request #6246 from wwitzel3/issue-5756
Create /inventories/N/update_inventory_sources endpoint.
2017-05-12 17:30:00 -04:00
Alan Rominger
5f3aad4972 Merge pull request #6256 from AlanCoding/relaunch_extra_creds
Job relaunch refactor to accommodate new credential system
2017-05-12 17:24:16 -04:00
AlanCoding
048804f48e Job relaunch refactor to accomidate new credential system
* make user_capability for 'start' more simple
* provide error messages if relaunch not possible
* check for prompted extra_credentials
* add extra_credentials permission checks in orphan mode
2017-05-12 17:16:06 -04:00
AlanCoding
c6a3a7cc34 JT RBAC edits for extra_credentials and vault_credential 2017-05-12 17:13:58 -04:00
Chris Meyers
45d609e6a9 Merge pull request #6251 from chrismeyersfsu/fix-6235
boolean logic performed on filter results
2017-05-12 15:34:39 -04:00
Matthew Jones
1a4a6273a4 Merge branch 'rampart_groups_setup_playbook' into devel
* rampart_groups_setup_playbook:
  Updating changelog for Instance Groups
  Fix an incorrect reference on instance group jobs list
  Purge remaining references to rampart groups
  Simplify can_access for instance groups on job templates
  Adding Instance Group permissions and tests
  Increase test coverage for task scheduler inventory updates
  Exit logic fixes for instance group tools
  View Fixes for instance groups
  new view to allow associations but no creations
  Updating acceptance documentation and system docs
  Updating unit tests for task manager refactoring
  Update views and serializers to support instance group (ramparts)
  Implementing models for instance groups, updating task manager
  Updating the setup playbook to support instance group installation
  Add nginx to server start and switch back to first tmux win
  Fix an issue where the local queue wouldn't use the rabbitmq name
2017-05-12 13:40:30 -04:00
Matthew Jones
81611b44f6 Fix an incorrect reference on instance group jobs list 2017-05-12 12:12:29 -04:00
Chris Meyers
ac534abe24 expose insights_system_id via api
* insights_system_id is read-only. Only modified via the fact gathering
code path.
2017-05-12 12:09:20 -04:00
Alan Rominger
f7f27e94d1 Merge pull request #6249 from AlanCoding/job_action_serializer
Avoid re-building fields for cancel and relaunch endpoints
2017-05-12 09:37:25 -04:00
Chris Meyers
b55af095ef boolean logic performed on filter results
* Before, the boolean logic operators were performed against the Q()
objects, iteratively. Now, boolean logic is done after
Host.objects.filter(Q()). This results in the wanted and expected
results.
2017-05-12 09:26:11 -04:00
AlanCoding
244ebecd16 avoid re-building fields for cancel and relaunch endpoints 2017-05-11 17:11:57 -04:00
Alan Rominger
7a1c6c6794 Merge pull request #6241 from AlanCoding/scm_inv_feedback
SCM inventory acceptance and bug updates
2017-05-11 16:30:26 -04:00
Wayne Witzel III
54876e71e7 Added tests for post conditional logic 2017-05-11 15:31:39 -04:00
Alan Rominger
bdde87f7f5 Merge pull request #6245 from AlanCoding/alan_rockin_ramparts
Introduce view to allow associations but no creations
2017-05-11 14:10:21 -04:00
Wayne Witzel III
aff084e1f6 Update permissions/RBAC for updates 2017-05-11 14:01:32 -04:00
Matthew Jones
47f4e5358b View Fixes for instance groups
* Return "instance_groups" instead of "rampart_groups" on the ping
  endpoint
* Don't pre-filter IG jobs endpoints for status
2017-05-11 13:55:31 -04:00
AlanCoding
14b5ab984b new view to allow associations but no creations 2017-05-11 13:11:11 -04:00
Wayne Witzel III
0e816a2d98 Create /inventories/N/update_inventory_sources endpoint 2017-05-11 13:05:49 -04:00
AlanCoding
97ca6bc897 SCM inventory acceptance and bug updates
* fixed a problem where the SCM last revision was not getting reset
* change the 400 editing error to just reset the last revision
* handle `source_vars` in the same way as custom scripts
* block unallowed `source_vars` in the validator
* hide POST in OPTIONS for inventory source sublist if not allowed
2017-05-11 12:04:48 -04:00
Ryan Petrello
44c1935590 Merge pull request #6232 from ryanpetrello/jt_promptable_extra_creds
add prompting for JT.extra_credentials
2017-05-11 07:51:36 -04:00
Ryan Petrello
53c3ece32b add prompting for JT.extra_credentials
see: #2913
2017-05-11 07:29:53 -04:00
Matthew Jones
705f8af440 Update views and serializers to support instance group (ramparts)
* includes top level views for instances and instance groups and
  extending those views to be able to view running jobs
* Associative endpoints on Organizations, Inventories, and Job
  Templates
* Related and summary field entries where appropriate
* Adding job model references to executing instance group
* Fix up default queue properties for clustering from the settings file
* Update production and default settings for instance queues in settings
2017-05-10 12:33:03 -04:00
Matthew Jones
4ced911c00 Implementing models for instance groups, updating task manager
* New InstanceGroup model and associative relationship with Instances
* Associative instances between Organizations, Inventory, and Job
  Templates and InstanceGroups
* Migrations for adding fields and tables for Instance Groups
* Adding activity stream reference for instance groups
* Task Manager Refactoring:
** Simplifying task manager relationships and move away from the
   interstitial hash tables
** Simplify dependency determination logic
** Reduce task manager runtime complexity by removing the partial
   references and moving the logic into the task manager directly or
   relying on Job model logic for determinism
2017-05-10 12:32:54 -04:00
Aaron Tan
3099fd7a01 Merge pull request #6117 from jangsutsr/dynamic_inv_src_dependency_update
Dependency updates
2017-05-10 09:57:58 -04:00
Ryan Petrello
9a6dc4d0ef add a view for /api/v2/credential_types/N/activity_stream/ 2017-05-09 15:01:04 -04:00
Ryan Petrello
2feb7d5a69 add a new read-only view for /api/v2/credential_types/N/credentials/ 2017-05-08 17:11:09 -04:00
Ryan Petrello
1568fddde1 Make CredentialType conditionally editable/readonly.
* CredentialTypes should not be editable *or* deletable if they're
  "managed_by_tower".
* CredentialTypes should not be deletable if they're in use by one or
  more Credentials.
* CredentialType.inputs should not be editable if they're in use by one
  or more Credentials.

see: #6077
2017-05-08 16:13:26 -04:00
Aaron Tan
3110a9b4b0 Merge pull request #6185 from jangsutsr/6023_add_prompt_for_verbosity
Add prompt for verbosity
2017-05-08 14:42:04 -04:00
Alan Rominger
f954507a8c Merge pull request #6186 from AlanCoding/scm_inv_stability
SCM Inventory task system and variables stability edits
2017-05-08 14:31:58 -04:00
Ryan Petrello
b7b9fb531e properly support (cloud|network)_credential for JT update *and* create
fix a bug which caused `POST /api/v1/job_templates/` to not properly set
`JobTemplate.extra_credentials`.

see: #5807
2017-05-08 13:50:28 -04:00
Aaron Tan
cfb633e8a6 Dependency Updates
* Dynamic Inventory Source
Template against ansible 2.3 dynamic inventory sources.
The major change is removal of `rax.py`. Most upstream scripts except
`foreman.py` has quite trivial coding style changes, or minor functional
extensions  that does not affect Tower inventory update runs.
`foreman.py`, on the other hand, went through quite a major refactoring,
but functionalities stay the same.

Major python dependency updates include apache-libcloud (1.3.0 -->
2.0.0), boto (2.45.0 --> 2.46.1) and shade (1.19.0 --> 1.20.0). Minor
python dependency updates include indirect updates via `pip-compile`,
which are determined by base dependencies.

Some minor `task.py` extensions:
 - `.ini` file for ec2 has one more field `stack_filter=False`, which
   reveals changes in `ec2.py`.
 - `.ini` file for cloudforms will catch these four options from
   `source_vars_dict` of inventory update: `'version', 'purge_actions',
   'clean_group_keys', 'nest_tags'`. These four options have always been
   available in `cloudforms.py` but `cloudforms.ini.example` has not
   mentioned them until the latest version. For consistency with upstream
   docs, we should make these fields available for tower user to customize.
 - YAML file of openstack will catch ansible options `use_hostnames`,
   `expand_hostvars` and `fail_on_errors` from `source_vars_dict` of
   inventory update as a response to issue #6075.

* Remove Rackspace support
Supports of Rackspace as both a dynamic inventory source and a cloud
credential are fully removed. Data migrations have been added to support
arbitrary credential types feature and delete rackspace inventory
sources.

Note also requirement `jsonschema` has been moved from
`requirements.txt` to `requirements.in` as a primary dependency to
reflect it's usage in `/main/fields.py`.

Connected issue: #6080.

* `pexpect` major update
`pexpect` stands at the very core of our task system and underwent a
major update from 3.1 to 4.2.1. Although verified during devel, please
still be mindful of any suspicious issues on celery side even after this
PR gets merged.

* Miscellaneous
 - requests now explicitly declared in `requirements.in` at version 2.11.1
   in response to upstream issue
 - celery: 3.1.17 -> 3.1.25
 - django-extensions: 1.7.4 -> 1.7.8
 - django-polymorphic: 0.7.2 -> 1.2
 - django-split-settings: 0.2.2 -> 0.2.5
 - django-taggit: 0.21.3 -> 0.22.1
 - irc: 15.0.4 -> 15.1.1
 - pygerduty: 0.35.1 -> 0.35.2
 - pyOpenSSL: 16.2.0 -> 17.0.0
 - python-saml: 2.2.0 -> 2.2.1
 - redbaron: 0.6.2 -> 0.6.3
 - slackclient: 1.0.2 -> 1.0.5
 - tacacs_plus: 0.1 -> 0.2
 - xmltodict: 0.10.2 -> 0.11.0
 - pip: 8.1.2 -> 9.0.1
 - setuptools: 23.0.0 -> 35.0.2
 - (requirements_ansible.in only)kombu: 3.0.35 -> 3.0.37
2017-05-08 12:03:02 -04:00
AlanCoding
890b5bba58 SCM Inventory task system and variables stability edits
* Ensure "fresh bits" in dependent jobs
  - run IUs in same context and dependent PU
  - review docs for update-on-launch expectations
* Avoid customer variable precedence upgrade issues
  - only allow SCM types to have overwrite_vars=true
  - do not run other cloud sources through the backported script
* Make extra sure to echo stdout and stderr in event of error
2017-05-08 09:43:11 -04:00