Commit Graph
100 Commits
Author SHA1 Message Date
Ryan Petrello 862de0b6f3 record a start time for WorkflowApproval jobs
see: https://github.com/ansible/awx/issues/6202
2020-03-06 14:16:27 -05:00
Ryan Petrello acc34c1393 fix global schedule creation for project and inventory updates too
related: https://github.com/ansible/awx/pull/6193
2020-03-06 08:55:13 -05:00
Ryan Petrello cd1ff6b16a fix a bug in OPTIONS /api/v2/schedules/
a side effect of this bug is that `awx schedules create` doesn't work
properly for non-admin users (i.e., users who have execute access for
a JT)

see: https://github.com/ansible/awx/issues/5717
2020-03-05 14:43:54 -05:00
Ryan Petrello b5e5fea117 respect home directory symlinks for BASE_VENV_PATH 2020-03-03 16:47:38 -05:00
Ryan Petrello e232cd392c make fact saving code more robust to unexpected fact data
see: https://github.com/ansible/awx/issues/5935
2020-03-03 16:38:33 -05:00
Ryan Petrello e7f36eb2ea remove a few custom notification fields that don't work
these aren't top-level serializer fields; they're summary fields
if we want to support these properly, we should treat them as
enhancements, and write support, tests, and documentation
2020-03-03 15:20:41 -05:00
Ryan Petrello 32ef805e23 properly support job host summary data in custom notification templates
see: https://github.com/ansible/tower/issues/4148
2020-03-03 15:00:41 -05:00
Ryan Petrello 6207dad226 fix broken grafana notifications
since the custom notification template refactor, grafana notification
support has been broken; this is largely because grafana functions more
like the webhooks, and needs to send JSON in its notification body

see: https://github.com/ansible/awx/issues/6137
2020-03-03 12:44:28 -05:00
Ryan Petrello 3e0e4b6c8f cli: add the ability to specify a token description w/ awx login
see: https://github.com/ansible/awx/issues/6122
2020-02-28 11:12:26 -05:00
Ryan Petrello 5364e78397 switch the periodic scheduler to a child process (instead of a thread)
I have a hunch that our usage of a daemon thread is causing import lock
contention related to https://github.com/ansible/awx/issues/5617
We've encountered similar issues before with threads across dispatcher
processes at fork time, and cpython has had bugs like this in recent
history:

https://bugs.python.org/issue38884

My gut tells me this might be related.

The prior implementation - based on celerybeat - ran its code in
a process (not a thread), and the timing of that merge matches the
period of time we started noticing issues.

Currently testing it to see if it resolves some of the issues we're
seeing.
2020-02-27 12:15:15 -05:00
Ryan Petrello 946d643795 cli: make launch with --monitor return code respect the final job status
see: https://github.com/ansible/awx/issues/5920
see: https://github.com/ansible/awx/issues/6079
2020-02-26 12:27:06 -05:00
Ryan Petrello eaa766df77 update Django to address a few open CVEs
https://github.com/advisories/GHSA-hmr4-m2h5-33qx
https://github.com/advisories/GHSA-vfq6-hq5r-27r6
2020-02-26 08:18:14 -05:00
Ryan Petrello 8b1806d4ca add code for detecting (and killing) a hung task manager task 2020-02-26 07:53:04 -05:00
Ryan Petrello 544d4cd3b0 add translations from memsource 2020-02-25 12:24:24 -05:00
Ryan Petrello 2e3547d5cf translate a missing string in the license UI
see: https://github.com/ansible/tower/issues/3949
2020-02-24 09:00:07 -05:00
Ryan Petrello 46fceb03a5 scope counter/start/end line updates to the current job for firehose.py 2020-02-19 16:15:33 -05:00
Ryan Petrello 3a95114c3a properly configure AWX loggers for openshift installs
see: https://github.com/ansible/tower/issues/3793
2020-02-18 12:50:46 -05:00
Ryan Petrello 90cb02e0bf fix start/end line incrementing behavior 2020-02-18 11:31:05 -05:00
Ryan Petrello 717698b659 properly inherit JT fields when creating many jobs with firehose.py 2020-02-18 10:34:51 -05:00
Ryan Petrello 4d06c812e6 add the ability to load lots of jobs with firehose.py
$ awx-python tools/scripts/firehose.py --jobs 5000000 --events 100000000
2020-02-18 08:55:06 -05:00
Ryan Petrello 92cc597e84 set actual counter/start/end values in the event generation script 2020-02-12 10:22:31 -05:00
Ryan Petrello b8ec3104a9 bump version to 9.2.0 2020-02-11 14:07:02 -05:00
Ryan Petrello 487343a022 include credential type details in the webhook credential summary field
see: https://github.com/ansible/awx/issues/5882
2020-02-11 10:51:07 -05:00
Ryan Petrello 38a08d163c get rid of celery/celerybeat
alternative to https://github.com/ansible/awx/pull/2530 which makes use
of https://pypi.org/project/schedule/

this doesn't have support for any persistence (like how celery beat uses
a shelve file), because all of our periodic jobs run at most every few
minutes
2020-02-10 17:32:02 -05:00
Ryan Petrello ad5d0b92db pin virtualenv < 20 for ansible venv builds
virtualenv version 20 just got released and broken a bunch of stuff
(like the --system-site-packages flag)
2020-02-10 16:31:34 -05:00
Ryan Petrello b08e5db267 update the changelog in anticipation of a forthcoming AWX release 2020-02-07 17:12:38 -05:00
Ryan Petrello 543a87ac88 fix error message on initial awx-manage migrate 2020-02-06 06:37:05 -05:00
Ryan Petrello 1800b49822 fix a py2/py3 compat bug in the settings CLI 2020-02-03 11:37:39 -05:00
Ryan Petrello 7055460c4c fix broken project update secret filtering for external logging 2020-02-03 10:27:31 -05:00
Ryan Petrello 326ed22efe properly handle import errors in the isolated capacity healthcheck
if the awx_capacity module runs on an isolated node with missing
libraries (i.e., psutil) or bad permissions, then the runner status will
be "failed"

in this scenario, we *still* want to react by recording a capacity=0
2020-01-31 10:17:20 -05:00
Ryan Petrello c7c899375b when a license is installed, only set TOWER_URL_BASE if necessary
it's possible for users to set this manually in /etc/tower/conf.d
prior to license application
2020-01-30 16:23:25 -05:00
Ryan Petrello 3c31e0ed16 some more minor callback cleanup and development tweaks 2020-01-27 17:18:09 -05:00
Ryan Petrello 78b00652bd add the ability to enable profiling for the callback receiver workers 2020-01-27 12:03:53 -05:00
Ryan Petrello 8f33f1a6c2 remove another expensive logging lookup in the parent callback process 2020-01-24 16:46:32 -05:00
Ryan Petrello 256404ba03 fix a bug that causes __search filters to not properly call .distinct() 2020-01-23 13:40:22 -05:00
Ryan Petrello f9af5e8959 optimize awx-manage callback_stats for larger datasets
to monitor this historically, we'd probably need to introduce a new
index on the modified column of all our event types
2020-01-22 16:52:38 -05:00
Ryan Petrello e18639b26b further optimize conf.settings access when logging is enabled
the callback receiver is still fairly slow when logging is enabled due
to constant setting lookups; this speeds things up considerably

related: https://github.com/ansible/awx/pull/5618
2020-01-22 16:17:33 -05:00
Ryan Petrello d8d1ccf810 add a script for quickly inserting lots of events 2020-01-22 11:57:47 -05:00
Ryan Petrello dfc769b8fe drastically speed up /api/v2/jobs/N/job_events/ with large counts 2020-01-20 13:24:39 -05:00
Ryan Petrello cc2ba09d3a remove an unnecessary settings optimzation 2020-01-17 14:59:56 -05:00
Ryan Petrello f79b6d3708 remove JobTemplate.job_type = 'scan'
see: https://github.com/ansible/awx/issues/5603
2020-01-15 15:05:01 -05:00
Ryan Petrello 0f0d9ba00d send inv computed tasks *after* commit to avoid a race condition 2020-01-15 14:14:26 -05:00
Ryan Petrello 6e5028587a update to latest vmware_inventory.py
https://github.com/jladdjr/ansible/blob/63737ec0f8a37da17278cc257dde39e89eec6df2/contrib/inventory/vmware_inventory.py

see: https://github.com/ansible/awx/issues/5648
2020-01-15 10:40:01 -05:00
Ryan Petrello 8c8713885b fix a bug that breaks inv sync stdout within workflows
see: https://github.com/ansible/tower/issues/4068
2020-01-15 10:12:27 -05:00
Ryan Petrello 829e9054d6 update data migration instructions 2020-01-15 09:03:36 -05:00
Ryan Petrello be68a199ec reorder migrations after a rebase 2020-01-14 16:58:33 -05:00
Ryan Petrello 568606d2c8 remove computed inventory fields from Host and Group 2020-01-14 16:37:16 -05:00
Ryan Petrello 79b8e6b6f0 renumber migrations correctly 2020-01-14 16:00:33 -05:00
Ryan Petrello 8bd9233d2c remove some unnecessary callback receiver debugging code 2020-01-14 14:21:53 -05:00
Ryan Petrello 0d2ae47238 update the CHANGELOG for 9.1.1 2020-01-14 12:39:13 -05:00
Ryan Petrello 306f504fb7 optimize the callback receiver to buffer writes on high throughput
additionaly, optimize away several per-event host lookups and
changed/failed propagation lookups

we've always performed these (fairly expensive) queries *on every event
save* - if you're processing tens of thousands of events in short
bursts, this is way too slow

this commit also introduces a new command for profiling the insertion
rate of events, `awx-manage callback_stats`

see: https://github.com/ansible/awx/issues/5514
2020-01-14 12:04:26 -05:00
Ryan Petrello 18e7b6ce04 update the CHANGELOG w/ historical notes from the mailing list 2020-01-13 16:40:55 -05:00
Ryan Petrello b1f56df930 fix linting failures 2020-01-13 15:58:19 -05:00
Ryan Petrello 4a6147d4c2 add the ability to generate dot graphs for per-request profiling 2020-01-04 07:09:42 -05:00
Ryan Petrello a7a3609e48 only restrict OAuth2 tokens for external accounts *at creation time*
related: https://github.com/ansible/awx/pull/5477
2019-12-13 10:30:41 -05:00
Ryan Petrello 7396e2e7ac add an awx-manage command for re-generating SECRET_KEY 2019-12-12 16:19:20 -05:00
Ryan Petrello cac3bece56 Merge pull request #4032 from ghjm/configurable_login_3.6.2
[3.6.2] Configurable login redirect
2019-12-12 15:43:58 -05:00
Ryan Petrello e4145b580c fix a flake8 nit 2019-12-12 15:43:23 -05:00
Ryan Petrello 74076b99d6 Merge pull request #3998 from ryanpetrello/rekey-secret-key
[3.6.2] add an awx-manage command for re-generating SECRET_KEY
2019-12-12 15:25:15 -05:00
Ryan Petrello 6254129f0d Merge pull request #4021 from beeankha/custom_email_approve_deny_fix
[3.6.2 Backport] Enable Approval-Related Email Notifications to Send Properly
2019-12-10 14:31:58 -05:00
Ryan Petrello 12a8793ddb provide a better error for OAuth2 logins for external accounts
attempting to use an OAuth2 token as an externally authenticated user throws an HTTP 500 error when external oauth is disabled - this change improves that so it's a 401 Unauthorized instead.
2019-12-10 11:52:25 -05:00
Ryan Petrello f1b4e24833 use a computed inventory field for task impact math
see: https://github.com/ansible/tower/issues/4022
2019-12-09 09:38:24 -05:00
Ryan Petrello 001d469bd0 Merge pull request #4026 from AlanCoding/fix_detached_36
[3.6.2] Fix project sync errors when project branch is commit
2019-12-06 14:33:10 -05:00
Ryan Petrello b36b6978fb Merge pull request #4024 from ryanpetrello/iso-check-timeout-362
fix a bug in isolated check timeout handling
2019-12-06 14:00:05 -05:00
Ryan Petrello c4d358b870 use a computed inventory field for task impact math
see: https://github.com/ansible/tower/issues/4022
2019-12-06 12:56:18 -05:00
Ryan Petrello 5ae7df7757 fix a bug in isolated check timeout handling 2019-12-06 12:51:24 -05:00
Ryan Petrello 220168f5ee fix a bug in isolated check timeout handling 2019-12-06 12:44:50 -05:00
Ryan Petrello 9bae9d32c7 Merge pull request #4020 from ryanpetrello/always_release_lock-3-6-2
fix situation were error happened before lock was released
2019-12-05 11:32:38 -05:00
Ryan Petrello b5724adae5 fix situation were error happened before lock was released 2019-12-05 11:30:12 -05:00
Ryan Petrello 55d81cf74d Merge pull request #4012 from ryanpetrello/monkey-patch-oauth2-side-effect-362
fix an nuanced bug which can cause OAuth2 migrations to fail
2019-12-04 10:59:18 -05:00
Ryan Petrello afadfa939d fix an nuanced bug which can cause OAuth2 migrations to fail 2019-12-04 09:55:55 -05:00
Ryan Petrello a0d20a5d50 fix an nuanced bug which can cause OAuth2 migrations to fail 2019-12-04 08:38:22 -05:00
Ryan Petrello 9856c9154e Merge pull request #3999 from ryanpetrello/fix-system-jobs-362
fix a few bugs with the session and oauth2 cleanup scheduled jobs
2019-12-03 12:08:03 -05:00
Ryan Petrello 208e36f83b add an awx-manage command for re-generating SECRET_KEY 2019-12-02 18:07:22 -05:00
Ryan Petrello c373420982 fix incorrect SystemJob.job_type choices 2019-11-27 12:37:24 -05:00
Ryan Petrello ea5d429399 fix a few bugs with the session and oauth2 cleanup scheduled jobs
see: https://github.com/ansible/tower/issues/3940
2019-11-27 12:37:10 -05:00
Ryan Petrello a1af4e1808 Merge pull request #3997 from ryanpetrello/fix-busted-tests-362
fix busted tests for 3.6.2
2019-11-27 09:22:39 -05:00
Ryan Petrello ffdcb2f8eb fix busted tests 2019-11-27 08:37:30 -05:00
Ryan Petrello 7b5f4f51fb Merge pull request #3990 from AlanCoding/sanity_fixes_36
Fix duplicate exception sanity error
2019-11-27 08:35:52 -05:00
Ryan Petrello 25c2b9610a Merge pull request #3993 from ryanpetrello/fix-asgi-bug-362
bump asgi-amqp dependency
2019-11-27 08:03:05 -05:00
Ryan Petrello 68f17eb370 bump asgi-amqp dependency 2019-11-26 23:33:24 -05:00
Ryan Petrello 1ad8a49155 bump asgi-amqp dependency 2019-11-26 23:29:50 -05:00
Ryan Petrello 47ed5ef848 fix incorrect SystemJob.job_type choices 2019-11-26 23:13:39 -05:00
Ryan Petrello 632810f3a8 fix a few bugs with the session and oauth2 cleanup scheduled jobs
see: https://github.com/ansible/tower/issues/3940
2019-11-26 13:17:46 -05:00
Ryan Petrello 1fbae00e37 Merge pull request #3983 from ryanpetrello/fix-3980
Remove usage of idle_timeout when checking status of isolated / containerized jobs
2019-11-25 11:15:35 -05:00
Ryan Petrello 0d659b0111 Merge pull request #3984 from ryanpetrello/fix-3978
Adds link to docs on container groups add/edit forms
2019-11-25 10:42:59 -05:00
Ryan Petrello cbf085ab43 move migrations to accomdate a downstream migration 2019-11-25 10:06:12 -05:00
Ryan Petrello 78d715efed merge downstream branch 2019-11-25 10:05:05 -05:00
Ryan Petrello c574cdc7dc fix busted tests 2019-11-19 09:21:04 -05:00
Ryan Petrello 097b59e74a fix a bug that broken custom approval notification messages 2019-11-19 08:55:26 -05:00
Ryan Petrello 17509d560d Merge pull request #3955 from AlanCoding/lets_release
Backport collection fixes
2019-11-18 16:25:04 -05:00
Ryan Petrello 268b22c550 Merge pull request #3953 from ryanpetrello/more-container-group-fixes
[3.6.1] fix a few bugs related to container group execution
2019-11-18 14:27:18 -05:00
Ryan Petrello b525d0a6f4 Merge pull request #3967 from ryanpetrello/fix-cli-doc-typos
fix a typo in the CLI usage docs
2019-11-18 11:26:24 -05:00
Ryan Petrello 9c2797b34c fix a typo in the CLI usage docs 2019-11-18 11:21:34 -05:00
Ryan Petrello 732f7d2292 Merge pull request #3962 from ryanpetrello/license-pass
don't set rh_username and rh_password in the license upload
2019-11-18 11:03:36 -05:00
Ryan Petrello 9458741b72 don't set rh_username and rh_password in the license upload 2019-11-18 10:02:31 -05:00
Ryan Petrello a15bf9ee41 fix a few bugs related to container group execution
see: https://github.com/ansible/awx/issues/5326
2019-11-14 14:00:48 -05:00
Ryan Petrello 513f54a422 fix a few bugs related to container group execution
see: https://github.com/ansible/awx/issues/5326
2019-11-14 13:23:38 -05:00
Ryan Petrello 70979df36a prevent the creation of Host names that contain Jinja 2019-11-13 13:15:36 -05:00
Ryan Petrello 83ee39cabd remove a number of unnecessary 3.2 migrations 2019-11-13 11:46:24 -05:00