Commit Graph

298 Commits

Author SHA1 Message Date
AlanCoding
90f63774f4 flake8: comply with new E722 rule 2017-10-23 14:36:48 -04:00
Ryan Petrello
ea683344f5 remove support for job-scoped auth tokens
When Jobs and Adhoc Commands are launched, awx uses a job-scoped auth
token to dynamically fetch inventory via the awx REST API; this process
is complicated, hard to debug, and likely won't work going forward with
oauth2-based tokens in awx

see: https://github.com/ansible/awx/issues/21
2017-10-18 17:11:47 -04:00
AlanCoding
f03b40aa50 enforce max line length of 160 characters 2017-10-11 12:38:39 -04:00
Matthew Jones
6fa283fc98 Merge branch 'release_3.2.0' into devel
* release_3.2.0: (66 commits)
  fix workflow maker lookup issues
  adding extra logic check for ansible_facts in smart search
  adding "admin_role" as a default query param for insights cred lookup
  changing insights cred lookup to not use hard coded cred type
  fix rounding of capacity percentage
  Catch potential unicode errors when looking up addrinfo
  fixing typo with adding query params for instance groups modal
  move percentage capacitty to variable
  Add unit test for inventory_sources_already_updated
  Check for inventory sources already updated from start args
  Fixed inventory completed jobs pagination bug by setting default page size
  Remove the logic blocking dependent inventory updates on callbacks
  fix instance group percentage
  Remove host-filter-modal import
  Fix partial hover highlight of host filter modal row
  Removed leading slash on basePath
  Fixed host nested groups pagination
  Added trailing slash to basePath
  Fixed nested groups pagination
  Fixed host_filter searching related fields
  ...
2017-10-10 16:09:43 -04:00
Matthew Jones
64415872a0 Merge branch 'release_3.2.0' into devel 2017-09-18 10:55:45 -04:00
Ryan Petrello
4dd265633e remove legacy azure inventory script
see: ansible/ansible-tower#7629
2017-09-18 10:41:49 -04:00
Ryan Petrello
2f14dc7e5d Merge pull request #388 from ryanpetrello/fix-7470
bump azurerm dependencies to support Ansible 2.4
2017-09-11 07:45:51 -07:00
Patrick Uiterwijk
3816791aa4 Use distutils find_executable instead of which
Fixes: #44

Signed-off-by: Patrick Uiterwijk <patrick@puiterwijk.org>
2017-09-08 01:49:50 +00:00
Ryan Petrello
768c7ba3dc bump azurerm dependencies to support Ansible 2.4
see: https://github.com/ansible/ansible-tower/issues/7470
2017-09-01 15:15:53 -04:00
Ryan Fitzpatrick
5cbdadc3e8 Fix typo in scan_packages plugin 2017-08-31 13:17:30 -04:00
Matthew Jones
2b1bcc23be Merge branch 'purge_ansible_name' into release_3.2.0
* purge_ansible_name:
  Remove ansible reference from dev PKG-INFO
  Add back in PRIVILEGE_ESCALATION_METHODS inadvertantly removed
  Add awx_ and AWX_ environment vars and extra_vars alongside Tower
  Refactor some tower periodic tasks to label as awx
  Refactor Notification backend for tower -> awx
  Refactor fact cache plugin from tower -> awx
  Rename tower display plugins to awx display
  Mass rename from ansible_(awx|tower) -> (awx|tower)
2017-07-26 23:06:55 -04:00
Matthew Jones
cc0802c87e Refactor fact cache plugin from tower -> awx 2017-07-26 13:33:30 -04:00
Matthew Jones
d4b1a07495 Rename tower display plugins to awx display 2017-07-26 13:33:30 -04:00
Chris Meyers
ef055110f5 handle unicode host names in fact cache 2017-07-26 12:41:13 -04:00
Ryan Petrello
e29492a259 more tower -> awx for task execution and isolated tooling 2017-07-25 10:36:06 -04:00
Alan Rominger
ca2671f17e Merge pull request #2 from AlanCoding/ansible_inv_update
Pull upstream changes for ansible-inventory backport
2017-07-24 16:34:12 -04:00
Ryan Petrello
8ce1421c6a fix tower-expect -> awx-expect for isolated tower builds 2017-07-24 16:03:58 -04:00
AlanCoding
4aa332d7e1 pull upstream changes for ansible-inventory backport 2017-07-24 15:25:54 -04:00
Chris Meyers
e1a24d9849 structure scan modules as dicts not arrays 2017-07-11 14:14:48 -04:00
Chris Meyers
1331865749 take into account memcached key restrictions
* Keys can't contain spaces or control characters
2017-07-05 15:39:04 -04:00
Chris Meyers
3d4f8b0074 support clear_facts 2017-07-05 10:33:36 -04:00
Chris Meyers
eda0679eb3 Revert "support clear_facts"
This reverts commit e5432c231d1ab38807c8be10133d35ede237a519.
2017-07-05 10:32:13 -04:00
Chris Meyers
06edb6774a support clear_facts 2017-07-05 10:26:49 -04:00
Ryan Petrello
413e8c3bc9 isolated nodes should report their awx version in their heartbeat
see: #6810
2017-06-29 16:55:11 -04:00
Ryan Petrello
405c01a847 more isolated production tinkering
see: #5903
see: #6507
2017-06-29 09:35:26 -04:00
Chris Meyers
12cdbcf8b5 adds per-host timeout 2017-06-21 13:45:27 -04:00
Chris Meyers
817dbe8d33 add fact modified time 2017-06-21 13:45:27 -04:00
Chris Meyers
626e2d1c9b tower fact cache implementation
* Tower now injects facts into jobs via memcached for use by Ansible
playbooks. On the Ansible side, this is accomplished by the existing
mechanism, an Ansible Fact Cache Plugin + memcached. On the Tower side,
memcached is leveraged heavily.
2017-06-21 13:44:08 -04:00
Ryan Petrello
422950f45d Support for executing job and adhoc commands on isolated Tower nodes (#6524) 2017-06-14 11:47:30 -04:00
Chris Meyers
ca1eb28d1f don't assume insights id is a uuid 2017-05-25 17:52:46 -04:00
Chris Meyers
eb27233e5c clear insights system id if not found
* Host previously found to have an insights system id that then later
are found to not have an insights system id, have their system id
cleared.
2017-05-12 12:00:30 -04:00
Chris Meyers
3cdc332497 rename insight tracking field; handle duplicate
* rename from insights_machine_id to insights_system_id
* gracefully handle duplicate insights machine id's
2017-05-12 10:47:49 -04:00
Chris Meyers
b9b0b29d97 associate insights machine id w/ host on fact scan
* Add inisghts fact scan module
* Update fact scan playbook to call new insight fact scan module
* JT run w/ store_facts=True will save scanned facts. We "skim" the
machine_id fact from Insights fact scans and associate it with the host
that the fact scan came from.
2017-05-11 11:20:52 -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
Alan Rominger
84b8dcece0 Merge pull request #6120 from AlanCoding/ansible-inventory
Inventory updates through `ansible-inventory`
2017-05-02 16:19:58 -04:00
Chris Meyers
4795fd28bf always gather facts
* bolt on the fact scan gather to all jobs
2017-05-01 16:03:16 -04:00
AlanCoding
a92c7cec7d remove code to parse inventory files 2017-05-01 14:37:42 -04:00
AlanCoding
8e6020436c modularization of inventory_import command
This separates file parsing logic that was mixed
in with other important code inside of the
inventory import command.

The logic around MemObject data structures was
moved to utils, and the file parsing was moved
to a legacy module. As of this commit, that
module can operate within the Tower environment
but it will be removed.

Also refactor the loggers to fix old bug and
work inside of the different contexts - the
Loader classes, mem objects, and hopefully
the inventory modules eventually.
2017-05-01 14:37:42 -04:00
AlanCoding
2488dabca6 add ansible-inventory backport from upstream
This is a separately maintained repo
https://github.com/ansible/ansible-inventory-backport
tests and compatibility is managed in that location
2017-05-01 14:37:42 -04:00
Graham Mainwaring
5098d0e99c Fix case where Get-ChildItems does not return any results 2017-03-10 14:53:05 -05:00
Chris Meyers
608975ff2f bump vmware inventory script 2017-01-26 16:01:57 -05:00
Bill Nottingham
e12ae193db Merge foreman inventory script performance fixes.
Sent & accepted upstream.
2017-01-24 16:40:59 -05:00
Chris Meyers
b72a148cbc vmware_inventory dyn inv script support 2016-12-19 16:39:10 -05:00
Chris Meyers
2f98716c0b Merge pull request #4493 from chrismeyersfsu/fix-3954
fix license not found err msg
2016-12-19 13:01:09 -05:00
Chris Meyers
1c4e6c55f5 bump foreman and expose new grouping features
related to #3467
related to #5226
related to #4373
2016-12-19 11:26:43 -05:00
Chris Meyers
a95880b60a fix license not found err msg 2016-12-19 10:39:28 -05:00
Chris Meyers
a566cec5db rectifiy arch name in fact scans 2016-12-16 10:06:34 -05:00
Chris Meyers
248f030744 bump dyn inv sync scripts 2016-12-13 17:14:43 -05:00
Matthew Jones
35b9786e06 Fixing up fact cachine related unit tests 2016-11-18 10:23:07 -05:00
Matthew Jones
3b07d9745d Port fact caching system to rabbitmq
* Purge all references to zmq also
* New setting to control the queue it works on
2016-11-18 09:44:17 -05:00