Ryan Petrello
49dfb5dcaf
add a changelog note for the sumologic token fix
...
see: https://github.com/ansible/awx/issues/7139
2020-05-27 18:25:15 -04:00
Ryan Petrello
01c89398b7
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-05-27 17:46:00 -04:00
Ryan Petrello
8b97e3f8bb
fix a typo in the playbook discovery tooling
2020-05-27 10:24:34 -04:00
Ryan Petrello
43825faa72
add some recent changes to the changelog for the next major release
2020-05-21 13:50:41 -04:00
Ryan Petrello
d35e87ace7
test that CI works for version checking
2020-05-21 12:46:40 -04:00
Ryan Petrello
0c6b7fdb59
don't use symlinks for awxkit VERSION
...
as much as I'd like this to just work, certain versions of pip just
don't support it -_-
see: https://github.com/ansible/awx/issues/7107
see: https://github.com/pypa/pip/issues/7555
so unfortunately, we just have to track these as two distinct files and
just keep them in sync
2020-05-21 12:10:33 -04:00
Ryan Petrello
53be991cfe
Revert "follow symlinks while discovering valid playbooks"
...
This reverts commit 3dd21d720e .
2020-05-20 16:30:44 -04:00
Ryan Petrello
296995e8bd
speed up .egg-info generation on certain systems
2020-05-19 15:00:13 -04:00
Ryan Petrello
fbe679e651
make the run_wsbroadcast command less noisy at startup
...
this command yells a lot until migrations are finished; let's make it
not do that
see: https://github.com/ansible/awx/issues/7000
2020-05-19 13:09:49 -04:00
Ryan Petrello
c7bb5a3e7b
Merge branch 'downstream' into devel
2020-05-15 12:38:47 -04:00
Ryan Petrello
3c195eed9f
mark the idle dialog continue button for translation
2020-05-15 12:35:05 -04:00
Ryan Petrello
54178a1982
stop pre-generating awx.egg-info
2020-05-15 11:47:53 -04:00
Ryan Petrello
74308f3dad
further optimize job host summary queries
2020-05-12 16:38:28 -04:00
Ryan Petrello
917c6b405e
properly update .failed, .last_job_id, and last_job_host_summary
2020-05-12 14:46:57 -04:00
Ryan Petrello
3cb2475307
properly handle host summary bulk updates if hosts go missing
2020-05-12 09:38:59 -04:00
Ryan Petrello
e7347d15c1
drastically optimize job host summary creation
...
see: https://github.com/ansible/awx/issues/6991
2020-05-11 17:13:06 -04:00
Ryan Petrello
086d6951b4
Merge branch 'downstream' into devel
2020-05-08 16:48:48 -04:00
Ryan Petrello
9668d18203
Merge pull request #4313 from ryanpetrello/more-fips-monkey-business
...
monkey-patch another Django names_digest for FIPS support
2020-05-08 15:14:25 -04:00
Ryan Petrello
814f033d46
monkey-patch another Django names_digest for FIPS support
2020-05-08 14:12:50 -04:00
Ryan Petrello
e7e716742a
Merge branch 'downstream' into devel
2020-05-05 20:12:24 -04:00
Ryan Petrello
a7ca6e2eea
Merge pull request #4293 from chrismeyersfsu/fix-ws_disconnect_log
...
missing f"" on log statement
2020-05-05 11:16:13 -04:00
Ryan Petrello
2997911fd4
Merge branch 'downstream' into devel
2020-05-01 13:53:30 -04:00
Ryan Petrello
9c5f04b1e0
Merge pull request #4287 from ryanpetrello/flake8-whoops
...
fix busted flake8
2020-05-01 13:52:52 -04:00
Ryan Petrello
b4b261b918
fix busted flake8
2020-05-01 13:51:37 -04:00
Ryan Petrello
cd21dd69f5
Merge pull request #4284 from ryanpetrello/more-event-sanitization-tweaks
...
only sanitize project update events for the scm modules
2020-05-01 11:48:24 -04:00
Ryan Petrello
bf65b40241
only sanitize project update events for the scm modules
...
these are the only modules in the project update playbook that actually
utilize the SCM URL (which is what potentially contains sensitive data)
2020-05-01 11:39:46 -04:00
Ryan Petrello
18607107a7
remove the deprecated extra_credentials endpoints
2020-04-30 10:22:02 -04:00
Ryan Petrello
9aed49e146
update the 11.2.0 changelog
2020-04-29 14:49:09 -04:00
Ryan Petrello
99c7f2f70d
Merge pull request #4278 from elyezer/drop-awxkit-requirements-txt
...
[3.7.0] Keep awxkit's requirements on the setup.py
2020-04-29 14:46:58 -04:00
Ryan Petrello
67e2f19aaf
cleanup and clarify some installation instructions
2020-04-29 14:09:04 -04:00
Ryan Petrello
6b976c4239
Merge pull request #4276 from rebeccahhh/release_3.7.0
...
put remaining correct links for 'Source Variables' in Source Page
2020-04-28 15:31:37 -04:00
Ryan Petrello
3f00329abd
bump version 11.2.0
2020-04-28 13:55:59 -04:00
Ryan Petrello
aad371d224
Merge branch 'downstream' into devel
2020-04-28 12:18:13 -04:00
Ryan Petrello
0d30a67756
Merge pull request #4273 from wenottingham/certscertscerts
...
Allow unsigned certs in logging if cert verification is disabled.
2020-04-28 11:17:19 -04:00
Ryan Petrello
94692c2364
Merge pull request #4272 from chrismeyersfsu/sos_report_redis_logs
...
sos report redis logs
2020-04-28 11:00:41 -04:00
Ryan Petrello
29abe35799
Merge pull request #4268 from fosterseth/fix-ip_conflict_cluster
...
Unset IP address of old instance if conflicting with new instance IP
2020-04-28 10:59:27 -04:00
Ryan Petrello
e1cedcfb04
Merge pull request #4266 from rooftopcellist/rsyslog_followup
...
Increase stopwait time for rsyslogd service
2020-04-27 15:26:49 -04:00
Ryan Petrello
efe9d85685
Merge pull request #4260 from jlmitch5/fixNotificationPagination
...
make sure right endpoint is getting called for notification pagination
2020-04-27 09:18:34 -04:00
Ryan Petrello
1f1069e9f3
Merge pull request #4261 from jlmitch5/fixLicenseTranslation
...
Remove unnecessary nesting license translate directive
2020-04-24 16:03:10 -04:00
Ryan Petrello
04e6482f36
Merge pull request #6832 from ghjm/service_command
...
Improve the ansible-tower-service script
2020-04-24 15:24:40 -04:00
Ryan Petrello
e51d0b6fde
add a setting for enabling high rsyslogd verbosity
2020-04-24 14:01:17 -04:00
Ryan Petrello
31c6b3337c
allow users to test log aggregration if awx isn't in the loggers list
2020-04-23 15:15:37 -04:00
Ryan Petrello and Francois Herbert
3dd21d720e
follow symlinks while discovering valid playbooks
...
related: https://github.com/ansible/awx/pull/6769
Co-authored-by: Francois Herbert <francois@herbert.org.nz >
2020-04-22 13:38:29 -04:00
Ryan Petrello
2742612be9
bump version to 11.1.0
2020-04-22 13:00:41 -04:00
Ryan Petrello
edd9972435
include the AWX version as a header in all responses
2020-04-22 12:07:31 -04:00
Ryan Petrello
af11055e5c
update (dead) links to example inv source vars
...
see: https://github.com/ansible/awx/issues/6538
some of these are subject to change (in particular, the azure one), but
this at least fixes the dead links for now in ansible devel
2020-04-21 14:00:54 -04:00
Ryan Petrello
41586ea3a6
update postgres minimum version
2020-04-21 12:49:33 -04:00
Ryan Petrello
9e30f004d3
let users configure the destination and max disk size of rsyslogd spool
2020-04-20 19:12:28 -04:00
Ryan Petrello
f62dfe85cc
escape certain log aggregator settings when generating rsyslog config
...
see: https://github.com/ansible/awx/issues/6760
2020-04-20 18:05:01 -04:00
Ryan Petrello
cec7cb393d
record redis config in the sosreport
2020-04-20 17:03:50 -04:00
Ryan Petrello
7bfc99a615
don't expose redis port
2020-04-17 15:34:11 -04:00
Ryan Petrello
f159a6508e
rsyslogd: set some higher limits for disk-assisted queues
2020-04-17 14:34:07 -04:00
Ryan Petrello
8ed5964871
bump version for 11.0.0
2020-04-15 22:10:12 -04:00
Ryan Petrello
8464ec5c49
update custom credential plugin docs to point at an example project
2020-04-15 09:59:09 -04:00
Ryan Petrello
262d99fde6
properly implement TCP timeouts for external log aggregation
...
see: https://github.com/ansible/awx/issues/6683
2020-04-14 17:06:30 -04:00
Ryan Petrello
e95938715a
make rsyslog service restarts a bit less noisy
2020-04-14 14:18:30 -04:00
Ryan Petrello
75bb7cce22
don't wait on memcached TCP
2020-04-14 11:45:27 -04:00
Ryan Petrello
52a253ad18
add a few minor logging changes to accomodate Splunk's API
...
see: https://docs.splunk.com/Documentation/Splunk/8.0.3/Data/UsetheHTTPEventCollector
2020-04-14 11:45:04 -04:00
Ryan Petrello
0f74a05fea
rsyslogd: ignore /dev/log when we load imuxsock
2020-04-14 11:34:58 -04:00
Ryan Petrello
dbe949a2c2
Merge pull request #6697 from chrismeyersfsu/fix-collection_tests
...
ensure last comma removed in select
2020-04-14 11:05:29 -04:00
Ryan Petrello
f7f1bdf9c9
properly configure supervisorctl to point at the web volume mount
2020-04-13 21:56:52 -04:00
Ryan Petrello
69cf915a20
add rsyslogd block to the k8s supervisord config file
2020-04-13 20:25:53 -04:00
Ryan Petrello
9440785bdd
properly set the group on the rsyslog config
2020-04-13 19:46:34 -04:00
Ryan Petrello
e52cebc28e
rsyslogd: use %rawmsg-after-pri% instead of %msg%
...
after some prolonged RFC reading and tinkering w/ rsyslogd...
cpython's SysLogHandler doesn't emit RFC3164 formatted messages
in the format you'd expect; it's missing the ISO date, hostname, etc...
along with other header values; the handler implementation relies on you
to specify a syslog-like formatter (we've replaced all of this with our
own *custom* logstash-esque formatter that effectively outputs valid JSON
- without dates and other syslog header values prepended)
because of this unanticipated format, rsyslogd chokes when trying to
parse the message's parts; AWX is emitting:
<priority>RAWJSON
...so the usage of `%msg%` isn't going to work for us, because rsyslog
tries to parse *all* of the possible headers (and yells, because it
can't find a date to parse):
see: https://www.rsyslog.com/files/temp/doc-indent/configuration/properties.html#message-properties
this is fine, because we don't *need* any of that message parsing
anyways; in the end, we're *just* interested in forwarding the raw
JSON/text content to the third party log handler
2020-04-13 11:44:00 -04:00
Ryan Petrello
bb5136cdae
properly escape URL paths and querystrings for paths in logging settings
2020-04-13 11:44:00 -04:00
Ryan Petrello
b0db2b7bec
add some exception handling for dealing with logging connection resets
...
when rsyslogd restarts due to config changes, there's a brief moment
where the socket will refuse connections on teardown; exception handling
is needed here to deal with that
2020-04-13 11:44:00 -04:00
Ryan Petrello
1000dc10fb
an an rsyslogd config check to the logging test endpoint
2020-04-13 11:44:00 -04:00
Ryan Petrello
2a4b009f04
rsyslogd: use %rawmsg-after-pri% instead of %msg%
...
after some prolonged RFC reading and tinkering w/ rsyslogd...
cpython's SysLogHandler doesn't emit RFC3164 formatted messages
in the format you'd expect; it's missing the ISO date, hostname, etc...
along with other header values; the handler implementation relies on you
to specify a syslog-like formatter (we've replaced all of this with our
own *custom* logstash-esque formatter that effectively outputs valid JSON
- without dates and other syslog header values prepended)
because of this unanticipated format, rsyslogd chokes when trying to
parse the message's parts; AWX is emitting:
<priority>RAWJSON
...so the usage of `%msg%` isn't going to work for us, because rsyslog
tries to parse *all* of the possible headers (and yells, because it
can't find a date to parse):
see: https://www.rsyslog.com/files/temp/doc-indent/configuration/properties.html#message-properties
this is fine, because we don't *need* any of that message parsing
anyways; in the end, we're *just* interested in forwarding the raw
JSON/text content to the third party log handler
2020-04-13 11:44:00 -04:00
Ryan Petrello
8cdd42307c
clarify that logging username/password is only valid for HTTP/s
2020-04-13 11:44:00 -04:00
Ryan Petrello
269558876e
only use a basic auth password for external logging if username is set
2020-04-13 11:44:00 -04:00
Ryan Petrello
bba680671b
when writing the rsyslog config, do it post-commit
...
there's a race condition if we do this pre-commit where the correct
value isn't actually *persisted* to the database yet, and we end up
saving the *prior* setting values
2020-04-13 11:44:00 -04:00
Ryan Petrello
f70a76109c
make rsyslog fall back to no-op if logging is disabled
2020-04-13 11:44:00 -04:00
Ryan Petrello
f7dac8e68d
more external logging unit test fixups
2020-04-13 11:44:00 -04:00
Ryan Petrello
39648b4f0b
fix up a few test and lint errors related to external logging
2020-04-13 11:44:00 -04:00
Ryan Petrello
ce82b87d9f
rsyslog hardening (fixing a few weird things we noticed)
2020-04-13 11:44:00 -04:00
Ryan Petrello
589d27c88c
POC: replace our external log aggregation feature with rsyslog
...
- this change adds rsyslog (https://github.com/rsyslog/rsyslog ) as
a new service that runs on every AWX node (managed by supervisord)
in particular, this feature requires a recent version (v8.38+) of
rsyslog that supports the omhttp module
(https://github.com/rsyslog/rsyslog-doc/pull/750 )
- the "external_logger" handler in AWX is now a SysLogHandler that ships
logs to the local UDP port where rsyslog is configured to listen (by
default, 51414)
- every time a LOG_AGGREGATOR_* setting is changed, every AWX node
reconfigures and restarts its local instance of rsyslog so that its
fowarding settings match what has been configured in AWX
- unlike the prior implementation, if the external logging aggregator
(splunk/logstash) goes temporarily offline, rsyslog will retain the
messages and ship them when the log aggregator is back online
- 4xx or 5xx level errors are recorded at /var/log/tower/external.err
2020-04-13 11:43:59 -04:00
Ryan Petrello
9843e21632
skip non-files when consuming events synced from isolated hosts
...
see: https://github.com/ansible/awx/issues/6675
2020-04-13 10:14:10 -04:00
Ryan Petrello
80147acc1c
work around redis connection failures in the callback receiver
...
if redis stops/starts, sometimes the callback receiver doesn't recover
without a restart; this fixes that
2020-04-09 15:38:03 -04:00
Ryan Petrello
6b4219badb
more ansible runner isolated cleanup
...
follow-up to https://github.com/ansible/awx/pull/6296
2020-04-08 01:18:05 -04:00
Ryan Petrello
0bf1116ef8
properly respect REFRESH_TOKEN_EXPIRE_SECONDS when generating new tokens
...
see: https://github.com/ansible/awx/issues/6630
see: https://github.com/jazzband/django-oauth-toolkit/issues/746
2020-04-07 11:34:01 -04:00
Ryan Petrello
771ca2400a
don't send tags to the Grafana annotations API if none are specified
...
see: https://github.com/ansible/awx/issues/6580
2020-04-06 15:47:48 -04:00
Ryan Petrello
2cefba6f96
properly serialize external logs that contain decimal.Decimal objects
2020-04-06 14:24:24 -04:00
Ryan Petrello
014c995a8f
fix a typo in the credentials UI
...
this is causing 400 level errors for some users
2020-04-06 10:45:33 -04:00
Ryan Petrello
6bd5053ae8
remove the limitation on (very) old DTSTART values for schedules
2020-04-03 10:59:35 -04:00
Ryan Petrello
8b00b8c9c2
remove deprecated legacy manual inventory source support
...
see: https://github.com/ansible/awx/issues/6309
2020-04-03 10:54:43 -04:00
Ryan Petrello
9fe2211f82
get rid of the activity stream middleware
...
it has bugs and is very confusing
see: https://github.com/ansible/tower/issues/4037
2020-04-01 16:02:42 -04:00
Ryan Petrello
f9b8a69f7b
remove some unused code from the redis rewrite
2020-04-01 08:03:59 -04:00
Ryan Petrello
4423e6edae
update to the latest twisted to address two open CVEs
2020-03-31 13:47:56 -04:00
Ryan Petrello
42336355bb
bump django-extensions version to address a bug in shell_plus
...
see: https://github.com/ansible/awx/pull/6441
see: https://github.com/django-extensions/django-extensions/commit/e8d5daa06e5b6419e54d6c925f86a0adbe58ce8b
2020-03-31 13:39:13 -04:00
Ryan Petrello
d19a9db523
detect event migration tables in a less noisy way
...
see: https://github.com/ansible/awx/issues/6493
2020-03-31 00:05:30 -04:00
Ryan Petrello
140dbbaa7d
disable host key checking when installing galaxy roles/collections
...
see: https://github.com/ansible/awx/issues/5947
2020-03-30 17:03:14 -04:00
Ryan Petrello
831bf9124f
prevent manual updates at POST /api/v2/inventory_sources/N/update/
...
see: https://github.com/ansible/awx/issues/6309
2020-03-30 15:35:04 -04:00
Ryan Petrello
32627ce51a
promote AWX CLI installation instructions to the global INSTALL.md
...
a few users have had trouble finding these instructions, so let's move
them into the top level installation docs
2020-03-30 11:46:10 -04:00
Ryan Petrello
04dd1352c9
prevent ws group subscription if not specified in the valid format
2020-03-27 17:13:21 -04:00
Ryan Petrello
ea54815e6b
fix a bug that broke awx config
...
see: https://github.com/ansible/tower/issues/4206
2020-03-27 17:07:48 -04:00
Ryan Petrello
6914213aa0
bump version 10.0.0
2020-03-27 12:51:18 -04:00
Ryan Petrello
301d6ff616
make the job event bigint migration chunk size configurable
2020-03-27 09:28:10 -04:00
Ryan Petrello
c8044b4755
migrate event table primary keys from integer to bigint
...
see: https://github.com/ansible/awx/issues/6010
2020-03-26 15:54:38 -04:00
Ryan Petrello
90d35f07f3
clarify some documentation on summary_fields
2020-03-26 14:54:28 -04:00
Ryan Petrello
464db28be5
update to the latest version of ansible-runner
2020-03-26 14:49:45 -04:00