this commit implements the bulk of `awx-manage run_dispatcher`, a new
command that binds to RabbitMQ via kombu and balances messages across
a pool of workers that are similar to celeryd workers in spirit.
Specifically, this includes:
- a new decorator, `awx.main.dispatch.task`, which can be used to
decorate functions or classes so that they can be designated as
"Tasks"
- support for fanout/broadcast tasks (at this point in time, only
`conf.Setting` memcached flushes use this functionality)
- support for job reaping
- support for success/failure hooks for job runs (i.e.,
`handle_work_success` and `handle_work_error`)
- support for auto scaling worker pool that scale processes up and down
on demand
- minimal support for RPC, such as status checks and pool recycle/reload
* Break requirements down into ansible and tower reqs
* Generate separate Ansible and Tower virtual environments
* Install appropriate requirements files into each one
* Modify development tools to use these venvs instead of our old
site-packages
* Modify settings to indicate venv enablement and location of venvs
* Modify tasks to use the proper virtual environment for its purpose
* release_2.3: (54 commits)
Upgrade changelog for 2.3
Purge superlance
Purge an old supervisor config
Require chris-lea libzmq3
Use the htpasswd command, not the module
Fix a playbook syntax error for postgres
Ensure postgres is started earlier in setup role
Allow customizing npm path
Include RPM-GPG-KEY-ansible-release for all releases
Simplify GPG keys
Correct broken RPM-GPG-KEY
Use gpg --passphrase for signing CHECKSUM
Handle rpm --addsign pasphrase prompts
Adding docker-compose development workflow
Fix license in spec file.
Updates to selinux policy for some munin plugins
ansible 1.8.4 requires sudo:true when using sudo_user
Fix expect script timeout
Disable timeout and correct sign.exp error
Fix expect script hang
...
* upstream/release_2.3: (91 commits)
Include python-{paramiko,ecdsa} dependencies
Remove extra epel testing stanzas
Unit test for ec2 credentialless inventory
Fix issue with ec2 iam sync with no credential.
Use the htpasswd command instead the ansible module
Pip is no longer needed
check local user root or not in ./configure
Remove unneeded when check for super user addition
Improve distro detection in setup.sh
Fix superuser check on upgrade
Minor improvements to setup.sh
Remove ansible prerequisite check from configure
Attempt to install ansible within setup.sh
Allow munin processes to access postgres
Move up base package dependency install
fixes jenkins failures
Proper flake8 fix
fixes executing processes with correct PYTHONPATH will pickup .pth files
Show the repo for bundled package file dump
Proper flake8 fix
...
* Add reprepro target
* Use debuild for building deb packages
* Use the same setuptools target for RPM and DEB
* Update rpm and deb changelogs for existing releases