1
0
mirror of https://github.com/ansible/awx.git synced 2024-10-31 06:51:10 +03:00
Commit Graph

319 Commits

Author SHA1 Message Date
Ryan Petrello
4f585dd09e pin botocore to avoid dependency hell re: latest python-dateutil
boto decided to pin python-dateutil on a version _lower than_ what we
need for the TZID= bug fix:
90d7692702 (diff-b4ef698db8ca845e5845c4618278f29a)
2018-03-16 16:08:03 -04:00
adamscmRH
8d460490c1 add xmlsec flag to docker installs 2018-03-14 14:28:35 -04:00
Ryan Petrello
44adab0e9e bump python-dateutil to latest
this change provides support for numerous bug fixes, along with
support for parsing TZINFO= from rrule strings

related: https://github.com/ansible/ansible-tower/issues/823
related: https://github.com/dateutil/dateutil/issues/614
2018-03-12 12:20:03 -04:00
AlanCoding
4a01805a19
add shade back into AWX requirements
Last round of dependency updates showed that AWX
depended on packages which came implicitly from shade
decorator is added as an explicit dependency
and all of the rest of shade requirements are
added back in here.
2018-03-08 10:32:19 -05:00
AlanCoding
556e6c4a11
Dependency Updates
Upgrades of minor dependency upgrades
Inventory scripts were upgraded in separate commit

Major exclusions from this update
- celery was already downgraded for other reasons
- Django / DRF major update already done, minor bumps here
- asgi-amqp has fixes coming independently, not touched
- TACACS plus added features not needed

Removals of note
- remove shade from AWX requirements
- remove kombu from Ansible requirements

Other notes

Add note about pinning setuptools and pip,
done but not mentioned previously

Stop pinning gevent-websocket and twisted

upgrade Azure to Ansible core requirements

more detailed notes
https://gist.github.com/AlanCoding/9442a512ab6977940bc7b5b346d4f70b

upgrade version of Django for Exception
2018-03-06 16:04:01 -05:00
Demin, Petr
f4a241aba2
Constrain requests 2018-03-06 12:47:34 -05:00
Ryan Petrello
13672cc88c
fix busted shippable builds 2018-03-05 14:16:42 -05:00
Wayne Witzel III
73f0a0d147 Update to latest asgi-amqp 2018-02-28 14:43:37 -05:00
Chris Meyers
d551566b4d
Merge pull request #1372 from chrismeyersfsu/old-celery3
celery 4.x to 3.x roll back
2018-02-27 15:26:46 -05:00
Ryan Petrello
d743b77353 replace our rdb tooling w/ the sdb PyPI package 2018-02-26 19:05:50 -05:00
Aaron Tan
1c2621cd60 Implement session-based and OAuth 2 authentications
Relates #21. Please see acceptance docs for feature details.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2018-02-22 15:18:12 -05:00
Wayne Witzel III
91c6d406c5 Rollback celery 2018-02-22 09:37:14 -05:00
Ryan Petrello
2a168faf6a
upgrade to the latest pexpect
see: https://github.com/ansible/awx/issues/417
2018-02-12 09:18:14 -05:00
Ryan Petrello
57c22c20b2
add support for building swagger/OpenAPI JSON
to build, run `make swagger`; a file named `swagger.json` will be
written to the current working directory
2018-02-06 10:12:57 -05:00
Ryan Petrello
51f7907a01
optimize OutputEventFilter for large stdout streams
update our event data search algorithm to be a bit lazier in event data
discovery; this drastically improves processing speeds for stdout >5MB

see: https://github.com/ansible/awx/issues/417
2018-01-16 14:41:35 -05:00
Chris Meyers
2ed97aeb0c implement multiple ldap servers 2018-01-11 09:03:14 -05:00
Matthew Jones
67d927121d
Merge pull request #940 from ryanpetrello/multivenv
implement support for per-playbook/project/org virtualenvs
2018-01-10 12:15:38 -05:00
Ryan Petrello
1e8c89f536
implement support for per-playbook/project/org virtualenvs
see: https://github.com/ansible/awx/issues/34
2018-01-09 22:47:01 -05:00
Wayne Witzel III
1690938dfb Update asgi-amqp requirement 2018-01-09 23:54:30 +00:00
Matthew Jones
9dbcc5934e
Merge remote-tracking branch 'tower/release_3.2.2' into devel 2017-12-13 12:25:47 -05:00
Matthew Jones
da0b686369
Adding jupyter notebook support to the AWX development environment
* Jupyter starts alongside the other awx services and is available on
  0.0.0.0:8888
* make target: make jupyter
* default settings in settings/development.py
* Added jupyter, matplotlib, numpy to dev dependencies
2017-12-05 23:46:18 -05:00
Shane McDonald
ec14ae1930 Add m2r to setup requirements file
We `pip download` this file for offline installs. Automat lists this package as a setup_requires, but `pip download` doesn’t resolve these dependencies (distutils will attempt to install them via easy_install when setup.py is invoked).
2017-12-05 15:26:56 -05:00
Wayne Witzel III
a858093db8 Update to asgi_amqp 1.0.1 2017-11-27 19:41:30 +00:00
Wayne Witzel III
f118e27047
Flake8 fixes and URL updates 2017-11-10 17:04:33 -05:00
Wayne Witzel III
8faf588775
Update package versions, settings, and tooling 2017-11-09 17:17:30 -05:00
Ryan Petrello
e06d4d7734 don't install pycurl from pypi; use a system package instead
the ovirt4 sdk relies on pycurl, which is complicated to install w/ pip;
rely on pycurl to be provided by a system package instead
2017-10-10 14:38:44 -04:00
Ryan Petrello
7438062b97 add ovirt sdk dependency for ovirt4 support 2017-10-10 14:38:44 -04: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
Shane McDonald
5af04e3164 Add pycrypto to Tower's requirements files
This is needed for GCE inventory syncs to work. Inventory Syncs run through the Tower virtual environment.
2017-08-10 09:10:10 -04:00
Shane McDonald
ac9fcdb63e Bump setuptools version
This addresses a bug I was seeing when running `pip download setuptools --no-binary=:all:`.
2017-08-01 10:13:04 -04:00
Ryan Petrello
ad66ff9938 pin kombu to a known working version (from tower 3.1.4)
we're encountering some *really* gnarly bugs with newer version of
celery and kombu; pin to *exactly* what works in 3.1.4 to try to avoid
them, because we can't upgrade celery to 4.0 (where this bug *may* be
fixed)

see: https://github.com/ansible/ansible-tower/issues/6534
see: https://github.com/celery/celery/issues/3712
see: https://github.com/celery/kombu/pull/760
2017-07-28 10:59:06 -04:00
Ryan Petrello
9784633728 pin websocket-client to a known working version
websocket-client 0.43.0 has a bug in its https client that breaks
requests:
https://github.com/websocket-client/websocket-client/issues/326

slackclient is affected by this bug:
https://github.com/slackapi/python-slackclient/issues/189

this commits also upgrades slackclient to add proxy support

see: #7088
see: #7093
2017-07-17 12:04:30 -04:00
Ryan Petrello
0239cd37fe pin celery to a known version that works
newer celery 3.x seems to a bug which causes forked celery worker
interprocess communication to hang (see: #6534)
2017-07-13 16:24:30 -04:00
Ryan Petrello
5f6ed1bd6c upgrade to the latest version of tacacs_plus 2017-07-12 13:52:37 -04:00
Chris Meyers
f1b1c4ee97 avoid instance record deadlock by using pglock 2017-07-05 09:38:19 -04:00
Aaron Tan
9aa4ea8e61 Add boto3 dependency and remove requests freezing 2017-06-29 16:03:07 -04:00
Ryan Petrello
45bdd9f747 improve readability of the honcho console logs in the dev environment
* colorize uwsgi and celery logs; DEBUG lines are green, WARN lines
  are yellow, ERROR lines (and tracebacks) are red
* pretty-print fact callback receiver JSON
* simplify the uwsgi log format so it's more legible
2017-06-22 09:19:32 -04:00
Ryan Petrello
44e0c8621a isolated ramparts: replace systemd unit with a tower-expect binary
instead of launching isolated tasks via `systemctl`, treat
`awx.main.isolated.run` as an executable that knows how to daemonize

additionally, add `setup.py isolated_build` for isolated Tower source
distribution
2017-06-16 09:59:21 -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
Shane McDonald
dfdf59bcf5 Fix RPM builds
The version of setuptools bundled with virtualenv is broken. This fixes things for both online and offline pip installs.
2017-05-11 14:26: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
Matthew Jones
a39b1e8436 Fix ipython version in dev container to 5.2.1 2017-04-26 09:57:51 -04:00
Chris Meyers
5a7b78220d pin twisted and asgiref for asgi-amqp
* asgi-amqp translation layer needs a specific version of channels which
requires a specific version of daphne and all of the fall out.
2017-04-19 13:56:36 -04:00
Chris Meyers
42a4bfa926 Merge pull request #5944 from chrismeyersfsu/improvement-pyparsing
add pyparsing a top level dep and fix other deps
2017-04-17 14:26:31 -04:00
Ryan Petrello
9f46b3c704 add tacacs_plus package as a dependency 2017-04-12 15:39:11 -04:00
Chris Meyers
67633b2387 add pyparsing a top level dep and fix other deps
* bump shade
* remove pyrax as a dep
* pin daphne so channels doens't pick up the wrong, too new, version
2017-04-03 16:17:05 -04:00
Shane McDonald
93dda555f1 Get offline pip installs working
I had to pull the git urls out of the main requirements files because in order to install offline (--no-index), we need pip to install from local package archives rather than cloning repo.

The weird `cat` thing going on in the Makefile is because we need to install everything as part of a single `pip install` transaction. Without this, installing only requirements_git.txt will result in dependencies getting unintentionally updated.
2017-03-29 14:30:58 -04:00
Shane McDonald
f79cd028f0 Add separate requirements file for setup_requires stuff
pip doesnt know how to resolve setup_requires dependencies.

we need this for offline pip installs when building in brew
2017-03-15 11:04:54 -04:00
Shane McDonald
4742cede0d Add pip and setuptools to requirements files
These packages were getting silently updated, making vendoring these dependencies difficult.

This ensures that the expected versions of these packages are installed in the virtualenvs.
2017-03-15 11:04:54 -04:00
Wayne Witzel III
9eed328107 update asgi_amqp version 2017-02-28 14:03:52 -05:00
Ryan Petrello
30a3439aa9 pin appdirs==1.4.2
setuptools requires appdirs >= 1.4.0
ff371f18f0 (diff-2eeaed663bd0d25b7e608891384b7298)
2017-02-27 12:06:35 -05:00
Wayne Witzel III
4d02ee9445 Make current_groups a set to easily avoid duplicates, update asgi-amqp requirement 2017-02-24 16:59:39 -05:00
Matthew Jones
7ca496b6ef Merge branch 'release_3.1.0' into multi_worker_callbacks 2017-01-18 20:39:15 -05:00
Matthew Jones
1cdeb4d2af Refactor event emitter to not use event partials
event emitter now caches to memcache where it is eventually picked up
by the stdout event emitter. This obviates event reassembly in the
callback receiver.
2017-01-17 15:59:43 -05:00
Bill Nottingham
f3ade65ac6 Vendor pywinrm and deps for Ansible. 2017-01-10 14:27:55 -05:00
Bill Nottingham
acaa8a75b2 Update boto to 2.45.0, add eu-west-2 and ca-central-1 2016-12-20 16:24:57 -05:00
Chris Meyers
f5ccdde508 pip prefers - not _ 2016-12-20 15:15:10 -05:00
Chris Meyers
6373642a67 explicitly install ssl backport for gce libcloud 2016-12-20 11:08:51 -05:00
Chris Meyers
139d80bcbb deps for new vmware inv script 2016-12-19 17:03:18 -05:00
AlanCoding
08bdbe6eca general update of requirements 2016-12-16 13:13:52 -05:00
AlanCoding
ce56a5e824 documentation feedback from pip-complie tool incorporated 2016-12-16 12:46:33 -05:00
AlanCoding
42713c9916 add requirements for service identity module causing warning messages 2016-12-16 11:47:35 -05:00
Chris Meyers
b533a9eb7b purge make requirements_jenkins 2016-12-14 10:30:28 -05:00
Chris Meyers
6348ed97dd uninstall certifi if installed in venv's 2016-12-14 09:53:24 -05:00
Chris Meyers
44c6127a48 fix gce and maybe azure cert issues 2016-12-13 17:11:44 -05:00
Chris Meyers
35fe4c8448 remove pyzmq 2016-12-09 14:34:32 -05:00
Chris Meyers
49a5c136dd add vmware deps to ansible venv 2016-12-06 13:29:53 -05:00
Ryan Fitzpatrick
69e7ef7110 Include pyrax in ansible requirements (#4283)
* Include pyrax in ansible requirements

* generate requirements_ansible.txt

* Add secretstorage backend in requirements_ansible.in
2016-12-05 16:14:46 -05:00
Matthew Jones
e5195032f6 Add back in some older dependencies that we had un-tracked
We'll need to figure out why dm.xmlsec.binding is segfaulting without these
2016-12-03 15:51:56 -05:00
Matthew Jones
1921f8cf04 Re-sync tower and ansible dependencies 2016-11-29 15:02:20 -05:00
Matthew Jones
7df11c59c0 Adding requests-futures dependency 2016-11-29 13:40:35 -05:00
Matthew Jones
cad112e8da Add python-logstash dependency 2016-11-29 13:29:13 -05:00
Ryan Fitzpatrick
d77cc5c984 Replace dropped psutil in ansible requirements (#4118) 2016-11-28 10:19:42 -05:00
Matthew Jones
95f3eacf25 Remove -e flags from requirements to fix build
These cause some odd behavior with egg-info links
2016-11-23 04:50:43 -05:00
Chris Meyers
bd78ff0a42 bump ansible requirements 2016-11-21 17:33:36 -05:00
Chris Meyers
1049b0bfd5 removed, seemingly, uneeded base packages 2016-11-21 17:33:36 -05:00
Chris Meyers
f2fac1fa91 factored out base python requirements
* use pip-tools to programatically build requirements.txt
2016-11-21 17:33:35 -05:00
Chris Meyers
4ec8a2f429 selectively bump base requirements 2016-11-21 17:33:14 -05:00
Chris Meyers
9f56d39644 factored out base requirements
* bumped all dependent packages that are not base
2016-11-21 17:33:14 -05:00
Chris Meyers
4a1a3bd1e8 do not coerce jsonbfield to string in db
* functional tests do coerce because they assume they are running on
sqlite
2016-11-18 11:29:42 -05:00
Chris Meyers
edaf018f2c Revert "factored out base requirements"
This reverts commit c5129a054c272a5e59008b3dc4d8a2f287f310a6.
2016-11-16 13:39:44 -05:00
Chris Meyers
827b4e1537 factored out base requirements
* bumped all dependent packages that are not base
2016-11-16 13:35:35 -05:00
Chris Meyers
1883485724 towards virtualenv being exactly requirements.txt
* Ignore already installed (usually global) packages when installing
requirements.txt into the virtualenv.
2016-11-15 09:19:29 -05:00
Chris Meyers
81720a6a2a bump cellery billiard requirement 2016-11-15 08:43:51 -05:00
Chris Meyers
f1f92deb1f bump up django-jsonfield 2016-11-14 14:34:46 -05:00
Chris Meyers
0c2d9e09b9 use known working django-jsonfield 2016-11-14 13:26:24 -05:00
Chris Meyers
ec83a1cb47 use django-jsonfield not jsonfield 2016-11-14 12:18:29 -05:00
Chris Meyers
356b0af3cd bump channels version 2016-11-14 11:11:29 -05:00
Chris Meyers
1d513252e4 fix up requirements 2016-11-14 09:16:26 -05:00
Chris Meyers
545412a6b5 remove inline requirements comment 2016-11-14 08:46:46 -05:00
Chris Meyers
241019568c use jsonfield instead of django-jsonfield 2016-11-11 15:47:41 -05:00
Chris Meyers
697ff11e3b move python dep git repos to ansible org 2016-11-10 09:27:44 -05:00
Chris Meyers
b9462bfad6 remove, not used, gevent-socketio 2016-11-10 09:10:26 -05:00
Chris Meyers
5d205f1e1b remove deprecated mongo fact code and deps
* We have the requirements that users with Tower < 3.0.x must upgrade to
3.0.x before > 3.0.x. Thus, we are save to delete all mongo migration
code and deps.
2016-11-09 16:25:27 -05:00
Chris Meyers
766e4af38e low hanging fruit requirements spring cleaning
* django-jsonfield PR accepted upstream
* django-rest-framework-mongoengine legacy system tracking dep
* python-social-auth PR accepted upstream
2016-11-09 16:12:27 -05:00
Bill Nottingham
eab6511682 Sort requirements 2016-11-04 16:48:18 -04:00
Matthew Jones
fa0780b9d0 Optimize uwsgi launching in dev container and prod
* Set --master flag so we have a preforking master process to manage
  subprocs
* Set max-requests to 1000 so uwsgi will recycle processes after 1000
  requests
* Set --no-orphans so uwsgi will track child processes and clean them up
  in order to respawn children
* Turn stats on in the container and install uwsgitop in dev
  requirements so we can track uwsgi stats
2016-11-04 13:38:23 -04:00
Chris Meyers
13c89ab78c HAify job schedules and more task_manager renaming 2016-11-01 13:50:42 -05:00
Chris Meyers
4ef4b4709b workflow execution added 2016-11-01 13:50:42 -05:00
Matthew Jones
96355854a8 Bump django version for CVE
https://www.djangoproject.com/weblog/2016/nov/01/security-releases/
2016-11-01 14:40:32 -04:00