Commit Graph
100 Commits
Author SHA1 Message Date
Ryan Petrello af238be377 address a few follow-up issues for Org -> Galaxy Credentials support
- add support for managing galaxy creds in the tower organization module
- fix a minor serializer bug
2020-09-10 11:00:21 -04:00
Ryan Petrello a817708d70 remove boto as an awx dependency
see: https://github.com/ansible/awx/issues/2115
2020-09-09 14:33:33 -04:00
Ryan Petrello c862b3e5a2 Revert "work around a memory leak in channels_redis"
This reverts commit e25da217e8.
2020-09-08 10:40:47 -04:00
Ryan Petrello f81560b12c update Django and channels_redis
see: https://github.com/ansible/tower/issues/4439
also, addresses CVE-2020-24583 and CVE-2020-24584
2020-09-08 10:39:26 -04:00
Ryan Petrello 013b411a0a remove old fact scanning plugins 2020-09-04 10:51:34 -04:00
Ryan Petrello b01d204137 if redis is unreachable, set instance capacity to zero 2020-09-03 15:11:53 -04:00
Ryan Petrello a6d26d7dab add the ability to prevent SAML auto-population behavior 2020-09-03 11:21:14 -04:00
Ryan Petrello 798f6371af update the project archive sync support for py2 compatability
playbook runs in AWX are still supported in python2, so this adds
support for archive-based project syncs in py2
2020-09-01 15:58:43 -04:00
Ryan Petrello 3edaa6bc14 remove some dead code 2020-09-01 15:26:38 -04:00
Ryan Petrello f4af74dabe renumber the Galaxy credential migration after rebasing 2020-09-01 13:47:26 -04:00
Ryan Petrello 4046b18eff properly handle Galaxy credentials if a Project is orphaned 2020-09-01 13:45:03 -04:00
Ryan Petrello a869d7da35 create the Galaxy credential for new installs in the preload script
doing this in the migration *before* any Organizations actually exist
is stirring up RBAC dragons that I don't have time to fight

this commit meanst that *new* installs will pre-create the default
Galaxy (public) credential in create_preload_data, while
*upgraded/migrations* installs will do so via the migration
2020-09-01 13:45:03 -04:00
Ryan Petrello a30ca9c19c don't run ansible-galaxy installs if there are no Galaxy credentials 2020-09-01 13:45:03 -04:00
Ryan Petrello 30da93a64e update the help text for Organization galaxy credentials 2020-09-01 13:45:03 -04:00
Ryan Petrello 011822b1f0 make a global "managed by AWX/Tower" Credential to represent Galaxy 2020-09-01 13:45:03 -04:00
Ryan Petrello e5552b547b properly migrate settings.FALLBACK_GALAXY_SERVERS 2020-09-01 13:45:02 -04:00
Ryan Petrello 1b4dd7c783 enforce Organization ownership of Galaxy credentials 2020-09-01 13:45:02 -04:00
Ryan Petrello 25a9a9c3ba remove redaction exclusions for Galaxy URLs (basic auth support is gone) 2020-09-01 13:45:02 -04:00
Ryan Petrello 130e279012 add a data migration for Galaxy credentials
see: https://github.com/ansible/awx/issues/7813
2020-09-01 13:45:02 -04:00
Ryan Petrello b8e0d087e5 add model support, an API, and a migration for Org -> Galaxy credentials
see: https://github.com/ansible/awx/issues/7813
2020-09-01 13:44:59 -04:00
Ryan Petrello 40ac719d6d add a changelog note about upgrade issues from 13.0 -> 14.0 2020-09-01 13:32:09 -04:00
Ryan Petrello 059999c7c3 update the inventory source module to respect new fields 2020-09-01 13:15:07 -04:00
Ryan Petrello 73baf3fcf9 defer loading Job.artifacts on host views to improve performance
see: https://github.com/ansible/awx/issues/8006

this data can be *really* large, and we don't actually need it for the summary fields on this API endpoint
2020-08-26 13:34:15 -04:00
Ryan Petrello 04229ba14b gather facts for image builds so we can detect arch
related: https://github.com/ansible/awx/pull/7607/
2020-08-25 11:36:26 -04:00
Ryan Petrello e0acf73ac6 add a changelog note about the channels_redis memory leak 2020-08-25 09:58:04 -04:00
Ryan Petrello e25da217e8 work around a memory leak in channels_redis
see: https://github.com/django/channels_redis/issues/212
see: https://github.com/django/channels_redis/pull/219/
2020-08-25 09:58:03 -04:00
Ryan Petrello 04188aa2d6 Bump version to 14.1.0 2020-08-25 09:45:05 -04:00
Ryan Petrelloandkldavis52 64da67fa2e mprove error message when changing an inventory from regular -> smart
see: https://github.com/ansible/awx/issues/5744
Co-Authored-By: kldavis52 <kyle.linnard.davis@gmail.com>
2020-08-25 09:25:54 -04:00
Ryan Petrello de59d1d3f6 improve job reaping for jobs that were started on a missing Instance
see: https://github.com/ansible/awx/issues/7848
2020-08-21 16:32:17 -04:00
Ryan Petrello 0266ed3836 more changelog updates 2020-08-20 10:44:06 -04:00
Ryan Petrello 821cfba88a changelog for arm64 builds 2020-08-20 10:05:27 -04:00
Ryan Petrello b14515b287 fix a bug that prevents the explicit removal of instances from groups 2020-08-19 13:22:31 -04:00
Ryan Petrello 815d691622 clean up old authtoken support
just use Bearer tokens - those are the only type of tokens we support
2020-08-19 12:23:00 -04:00
Ryan Petrello 612bb81976 add a deprecation warning for mercurial project syncs
see: https://github.com/ansible/awx/issues/7932
2020-08-19 11:19:03 -04:00
Ryan Petrello 33e2c059ed make event stdout encoding more resilient to UTF-16 surrogate pairs
see: https://en.wikipedia.org/wiki/Universal_Character_Set_characters#Surrogates
2020-08-18 10:23:20 -04:00
Ryan Petrello 5fb1b1ceea changelog updates for recent additions 2020-08-11 12:52:52 -04:00
Ryan Petrello 987c7d48a0 minor cleanup up CLI import -f yaml support 2020-08-11 09:44:13 -04:00
Ryan Petrello 5e9d372db2 update to a newer python-ldap to address a bug
see: https://github.com/ansible/awx/issues/7868
2020-08-11 09:34:04 -04:00
Ryan Petrello 32542021c6 fix busted flake8 CI 2020-08-10 12:26:12 -04:00
Ryan Petrello 99e417d748 Bump version to 14.0.0 2020-08-05 16:22:03 -04:00
Ryan Petrello 6067fc36f6 begin a 14.0.0 changelog 2020-08-05 14:53:01 -04:00
Ryan Petrello 0c6be1f4d7 Merge branch 'downstream' into devel 2020-08-05 14:48:36 -04:00
Ryan Petrello 76ba363513 mark PRIMARY_GALAXY_USERNAME and PRIMARY_GALAXY_PASSWORD as deprecated 2020-08-04 10:18:40 -04:00
Ryan Petrello 820c0782ad remove vNNN from example migration files 2020-08-03 15:30:37 -04:00
Ryan Petrello a0e5e74cab fix a typo in an f-string 2020-07-31 12:48:45 -04:00
Ryan Petrello 5b8cfa353f make these issue template sentences comments
(because people are filing issues and leaving this text at the top)
2020-07-31 09:58:52 -04:00
Ryan Petrello 1ad623f253 only support ansible-galaxy collection in 2.9+
see: https://github.com/ansible/awx/issues/7769
2020-07-31 09:42:07 -04:00
Ryan Petrello 173628c709 update the bug report and feature templates w/ additional instructions 2020-07-30 13:24:54 -04:00
Ryan Petrello 7938bf58d4 Merge pull request #4485 from ryanpetrello/more-cred-failure-cleanup-372
properly obfuscate connection errors for credential lookup failure
2020-07-28 12:04:03 -04:00
Ryan Petrello 91594a1ae8 properly obfuscate connection errors for credential lookup failure 2020-07-28 11:38:48 -04:00
Ryan Petrello b03b12163f Merge pull request #4486 from ryanpetrello/fix-372-unit-tests
pin pytest-forked to fix broken unit tests
2020-07-28 11:18:52 -04:00
Ryan Petrello 1c08206792 pin pytest-forked to fix broken unit tests 2020-07-28 11:16:52 -04:00
Ryan Petrello 847d6c65bd Merge pull request #4480 from ryanpetrello/372-cred-plugin-30x
properly report 30x errors on credential plugin tests
2020-07-23 15:27:27 -04:00
Ryan Petrello f29e7b9c81 properly report 30x errors on credential plugin tests 2020-07-23 14:50:35 -04:00
Ryan Petrello 32831794ee Merge pull request #4477 from ryanpetrello/372-signal-deadlock
force worker processes to have a different signal handler from the parent
2020-07-23 12:21:44 -04:00
Ryan Petrello 26660fa82e Merge pull request #4464 from ryanpetrello/named-url-vuln-372
update the named URL code to properly return 404 vs 403
2020-07-23 12:07:33 -04:00
Ryan Petrello 860183f178 update the named URL code to properly return 404 vs 403 2020-07-22 12:15:34 -04:00
Ryan Petrello 34be08d38e add tests for filtering User.created_by in the API 2020-07-20 11:28:32 -04:00
Ryan Petrello 959b81aec5 refactor k8s credential injectors to properly handle verify=f 2020-07-16 12:43:10 -04:00
Ryan Petrello 1a39cbc2f4 add tests for k8s credential usage in Job Templates 2020-07-16 12:22:11 -04:00
Ryan Petrello 715dc4ece8 add a license for ruamel.ordereddict (for openshift lib support) 2020-07-16 11:38:54 -04:00
Ryan Petrello c44f8e9122 implement k8s credential selection in the new patternfly UI 2020-07-16 11:25:03 -04:00
Ryan Petrello 75a0382c31 show k8s credentials in the Job Template prompt on launch UI 2020-07-16 10:53:21 -04:00
Ryan Petrello 0b221a42c0 Add the ability to specify K8S/OCP credentials on a Job Template
see: https://github.com/ansible/awx/issues/5735
2020-07-15 17:44:07 -04:00
Ryan Petrello c410f1f344 Merge pull request #4458 from ryanpetrello/fifo-cred-plugin-hang-372
[3.7.2] remove the usage of create_temporary_fifo from credential plugins
2020-07-14 17:21:35 -04:00
Ryan Petrello 310a0f88e5 remove the usage of create_temporary_fifo from credential plugins
this resolves an issue that causes an endless hang on with Cyberark AIM
lookups when a certificate *and* key are specified

the underlying issue here is that we can't rely on the underyling Python
ssl implementation to *only* read from the fifo that stores the pem data
*only once*; in reality, we need to just use *actual* tempfiles for
stability purposes

see: https://github.com/ansible/awx/issues/6986
see: https://github.com/urllib3/urllib3/issues/1880
2020-07-14 16:24:03 -04:00
Ryan Petrello 3ef07ee5f7 Merge pull request #4447 from ryanpetrello/372-master-main-links
fixed broken UI links
2020-07-13 15:49:11 -04:00
Ryan Petrello ab11d3188d refactor the job type name into a single property 2020-07-13 09:43:43 -04:00
Ryan Petrello f51774c06e add job type to Host summary_fields.recent_jobs
see: https://github.com/ansible/awx/issues/5236
2020-07-13 09:02:04 -04:00
Ryan Petrello 140d9ae3ee Merge pull request #4429 from wenottingham/label-maker
Reintroduce label filtering
2020-07-09 09:00:57 -04:00
Ryan Petrello 7322e13436 add tests for clarified label permissions 2020-07-08 16:53:05 -04:00
Ryan Petrello 1cf2f009ed prevent unsafe jinja from being saved in the first place for cred types
see: https://github.com/ansible/tower-security/issues/21
2020-07-08 15:48:58 -04:00
Ryan Petrello 2bdd83e029 use jinja2.sandbox for credential type injectors 2020-07-08 15:48:47 -04:00
Ryan Petrello 319308193c show user capabilities for instance groups 2020-07-08 09:17:55 -04:00
Ryan Petrello bc14e995fd Merge pull request #4434 from ryanpetrello/jinja-injector-sandbox-validation
prevent unsafe jinja from being saved in the first place for cred types
2020-07-07 12:47:15 -04:00
Ryan Petrello 61d3a765ee prevent unsafe jinja from being saved in the first place for cred types
see: https://github.com/ansible/tower-security/issues/21
2020-07-07 10:59:14 -04:00
Ryan Petrello f943277ef0 Merge pull request #4433 from ghjm/webhook_error_detail
Error detail in webhook and credential tests
2020-07-07 10:35:21 -04:00
Ryan Petrello 8aa11f4848 Merge pull request #4430 from ryanpetrello/jinja2-injector-sandbox
use jinja2.sandbox for credential type injectors
2020-07-06 15:21:21 -04:00
Ryan Petrello 2f1b4d81e1 use jinja2.sandbox for credential type injectors 2020-07-06 13:50:33 -04:00
Ryan Petrello 1434e5812f don't allow users to specify $encrypted$ for encrypted credential fields
this keyword only has value when you _update_ an existing credential
2020-07-01 15:53:09 -04:00
Ryan Petrello 78229f5871 replace certain terms with more inclusive language
see: https://www.redhat.com/en/blog/making-open-source-more-inclusive-eradicating-problematic-language
2020-06-30 10:49:19 -04:00
Ryan Petrello a62047809f update awx-manage bottleneck's help text 2020-06-24 10:25:09 -04:00
Ryan Petrello b1fcc0578c default awx-manage bottleneck --threshold to 30s 2020-06-24 10:23:01 -04:00
Ryan Petrello dd42f6351b minor refactoring of awx-manage bottleneck 2020-06-24 10:19:26 -04:00
Ryan Petrello ce65f994dc refactor some timedelta formatting in awx-manage bottleneck 2020-06-24 09:56:23 -04:00
Ryan Petrello 5532760ccf respect --no-color in awx-manage bottleneck 2020-06-24 09:52:30 -04:00
Ryan Petrello 21ea7eb5dc add the name of the task to awx-manage bottleneck output 2020-06-24 09:44:39 -04:00
Ryan Petrello b01ac1bfa6 add support to the bottleneck script for configuring history size 2020-06-24 09:22:53 -04:00
Ryan Petrello 180ed4cd3d add a tool for discovering which tasks/hosts are slow for a JT
this tool looks at the most recent jobs for a specific job template and
attempts to discover the _slowest_ tasks and hosts

$ awx-manage bottleneck --template N
$ awx-manage bottleneck --template N --threshold 1 --ignore yum
$ awx-manage bottleneck --template N --ignore pause --ignore yum
2020-06-24 08:59:48 -04:00
Ryan Petrello b6c210ee97 update instructions and metadata for awxkit/cli installs 2020-06-23 17:53:14 -04:00
Ryan Petrello a9938c0e64 minor CHANGELOG verbiage tweak 2020-06-23 15:33:22 -04:00
Ryan Petrello 8174516d3b properly write rsyslog configuration as 0640
see: https://github.com/ansible/tower/issues/4383
2020-06-23 11:25:39 -04:00
Ryan Petrello d016de8103 adding a few CHANGELOG items 2020-06-23 11:24:22 -04:00
Ryan Petrello 31ab386591 move tmux to dev dependencies 2020-06-19 08:47:11 -04:00
Ryan Petrello e732d03b20 awxkit dropped py2 support awhile ago; stop running tests in py2 2020-06-18 15:31:35 -04:00
Ryan Petrello 6376395c68 Merge pull request #4409 from ryanpetrello/371-host-summary-regression
fix a regression in how job host summaries are generated
2020-06-16 17:04:22 -04:00
Ryan Petrello eaadbe9730 fix a regression in how job host summaries are generated
this change fixes a bug introduced in the optimization at https://github.com/ansible/awx/pull/7352

1. Create inventory with multiple hosts
2. Run a playbook with a limit to match only one host
3. Run job, verify that it only acts on the one host
4. Go to inventory host list and see that all the hosts have last_job updated to point to the job that only acted on one host.
2020-06-16 13:18:14 -04:00
Ryan Petrello 70afbe0b8d fix a regression in how job host summaries are generated
this change fixes a bug introduced in the optimization at https://github.com/ansible/awx/pull/7352

1. Create inventory with multiple hosts
2. Run a playbook with a limit to match only one host
3. Run job, verify that it only acts on the one host
4. Go to inventory host list and see that all the hosts have last_job updated to point to the job that only acted on one host.
2020-06-16 13:06:22 -04:00
Ryan Petrello fe221c2473 Merge pull request #4399 from shanemcd/kube-queues
Add queue / instance group registration to heartbeat for k8s installs
2020-06-11 09:00:16 -04:00
Ryan Petrello 64ebfa75a8 remove a highly verbose log lines 2020-06-10 11:50:13 -04:00