1
0
mirror of https://github.com/ansible/awx.git synced 2024-11-01 08:21:15 +03:00
Commit Graph

109 Commits

Author SHA1 Message Date
Christian Adams
7040fcfd88 Fix container rsyslog dir permissions 2020-04-13 11:43:59 -04:00
Shane McDonald
c0af3c537b Configure rsyslog to listen over a unix domain socket instead of a port
- Add a placeholder rsyslog.conf so it doesn't fail on start
 - Create access restricted directory for unix socket to be created in
 - Create RSyslogHandler to exit early when logging socket doesn't exist
 - Write updated logging settings when dispatcher comes up and restart rsyslog so they  take effect
 - Move rsyslogd to the web container and create rpc supervisor.sock
 - Add env var for supervisor.conf path
2020-04-13 11:43:59 -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
Shane McDonald
6fc815937b
Tidy up the dev environment a bit 2020-04-06 11:13:51 -04:00
Christian Adams
6335004c94
Add common debugging tools to the dev container
- nmap-ncat
 - sdb
 - tcpdump
 - strace
 - vim
2020-03-25 08:03:32 -04:00
Christian Adams
3755151cc5 Update dev container to be consistent with other installation methods
- rename start_development.sh script to `launch_awx.sh`, like it is in k8 installations
2020-03-11 16:23:31 -04:00
Philip Douglass
7ae1c7c3d2 Set setuid bit on bwrap in development Dockerfile
Related: #5224

Signed-off-by: Philip Douglass <philip.douglass@amadeus.com>
2020-02-25 15:20:01 -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
Shane McDonald
3f57061509
Add packages missing from base images
Related:

- https://github.com/ansible/awx/issues/5770
- https://github.com/ansible/awx/issues/5724
2020-02-07 13:06:42 -05:00
AlanCoding
d2289fe9c6
add pycurl to container images 2020-02-04 14:41:51 -05:00
Christian Adams
d41322c63c Remove outdated Zanata translation script as part of migration to Memsource
- adds requirement for gettext to dev container for use by Memsource automation
2019-12-05 09:29:33 -05:00
Shane McDonald
c439a1ec8f
Fix permissions on projects directory by pre-creating it
This broke after
f78c9f357d
but people seem to like this functionality so instead of reverting it we can do this.
2019-12-04 17:39:38 -05:00
chris meyers
129374a1c2 keep *-devel package in the dev container
* requirements/updater.sh does pip magic. In doing this magic, devel
system packages are required to download/install/build. This change
ensures those dev packages are available.
2019-12-03 14:31:09 -05:00
Shane McDonald
fa61aef194
Install missing locales in dev container image. 2019-11-01 08:29:11 -04:00
Shane McDonald
4d4ae84e32
Fix docker cache
This was causing the cache to miss on some docker versions, in addition to
throwing a warning that says it will break soon.
2019-10-31 16:57:17 -04:00
Bill Nottingham
6057921e34 chmod the nginx cert/key/etc
EL8 OpenSSL defaults to 0600 for the key, which will not work in the
dev environment.
2019-10-31 13:53:13 -04:00
Bill Nottingham
452c1b53f7 Re-add psycopg2 for bootstrap_development.sh 2019-10-30 14:23:33 -04:00
Bill Nottingham
36996584f9 Re-add dependencies needed by UI tests to the dev env 2019-10-30 13:06:48 -04:00
Bill Nottingham
84ba383199 Trim the list of things installed during build
Swap git & vim for more minimal installs.
2019-10-29 23:19:00 -04:00
Shane McDonald
6c877a15e3
Update dev env to centos:8 2019-10-29 17:09:45 -04:00
Ryan Petrello
b45b9333e1
Merge pull request #4716 from jladdjr/perf_stats
Enable collection of performance stats
2019-10-04 17:09:30 -04:00
Jim Ladd
2c1c2f452d Add libcgroup-tools to dev env (provides cgcreate, cgexec, etc) 2019-10-04 12:48:29 -07:00
Shane McDonald
bd5003ca98
Task manager / scheduler Kubernetes integration 2019-10-04 13:21:21 -04:00
Shane McDonald
3b89e894db Stop using PG SCL in dev env 2019-09-16 11:41:13 -04:00
Christian Adams
ec1e93cc69 Upgrade to postgres 10.6
- use awx-python in shebang in dev env
  - scl enable where needed for rhel7 & container installs
  - use scram-sha-256 pg user hashing by default
  - ensure psycopg2 is using the correct PG_CONFIG at build time for the right libpq version
2019-09-12 12:52:43 -04:00
chris meyers
cc6413c44c
use ansible nightly
* ansible:devel now has ansible-galaxy collection support
2019-08-12 22:14:31 -04:00
Jeff Bradberry
10200fced0 Add patch to the list of system packages installed into the container
since it is a requirement of the new updater.sh Python requirements script.
2019-08-01 10:41:49 -04:00
softwarefactory-project-zuul[bot]
815823adc0
Merge pull request #4363 from jomach/feature/updateGitVersion
[4362] git version is old and does not work with x509 certificates

Reviewed-by: https://github.com/softwarefactory-project-zuul[bot]
2019-07-30 21:07:24 +00:00
Jorge Machado
76933ed889 * upgrade from git on containers
* agreed with terms of DCO 1.1

Signed-off-by: Jorge Machado <jorge@jmachado.me>
2019-07-30 07:04:04 +02:00
chris meyers
9236fd2a53 fake it till you make it!
* The user awx is passed to the launch of our dev docker container. The
docker system automagically creates that user for us and sets the home
dir to /tmp in /etc/passwd. Many methods of detecting the user home dir
don't use that. Instead, they use the HOME env var. This is a half-way
solution that solves the problem of python expanding the ~ dir.
* If other things break because they determine the users home dir via
/etc/passwd entry then a more in-depth fix will be needed.
2019-07-29 09:58:47 -04:00
Ryan Petrello
b620d8505a
build and link a newer sqlite3 to make Django happy 2019-07-16 10:50:49 -04:00
Ryan Petrello
a4b2d6bf88
Revert "Change the devel containers to be based on Fedora instead of CentOS"
This reverts commit 7936dff188.
2019-07-16 09:18:24 -04:00
Jeff Bradberry
dd8ca5acc4 Ensure that the Postgres client is installed 2019-07-12 16:22:52 -04:00
Shane McDonald
7936dff188 Change the devel containers to be based on Fedora instead of CentOS
since we need a more recent version of sqlite.
2019-07-12 15:11:22 -04:00
Shane McDonald
ef22986aa0 Install latest tini from RPM 2019-06-03 16:03:51 -04:00
Kia Lam
15c699de7c
Update dockerfile to build using node v10.15.0. 2019-05-29 13:00:06 -04:00
Shane McDonald
2f77c67a62 Changes to enable tests in k8s 2019-05-28 13:22:15 -04:00
Shane McDonald
7d8a910be7 Improve dev environment init process
This ensures that /etc/passwd is always written, regardless of how the container starts.
2019-05-10 10:14:51 -04:00
Shane McDonald
0be8fe521a Refactor Dockerfiles
This commit does a few things:

- Add the `--squash` option to the `awx-devel-build` make target. This reduces the resulting image size from 2.12 GB to 1.37 GB. I think we can get this down even more by inspecting the image contents.
- Reorganize commands so that the cache expires less often. Before this commit, any changes to the Makefile would essentially cause the entire image to rebuild.
- Break yum dependencies up into multiple lines. This makes it easier to see what changes in a diff.
- Use `n` to install our required version of node (rather `curl node | bash`). I’ve found this to be easier to maintain / more portable when working with other Dockerfiles.
- General organizational changes to make things easier to parse visually.
2019-05-08 20:36:41 -04:00
Ryan Petrello
766a5c0c3f
remove honcho in the dev environment (just use foregrounded supervisor)
using supervisor gives us the ability to restart entire processes on
code change (like the dispatcher and callback receiver)
2019-05-08 14:44:07 -04:00
Bill Nottingham
0d18d46ccc Sync docker-compose dockerfile with image build dockerfile.
It was installing an IUS repo, rabbitmq-server, and other unneeded things.
2019-04-18 16:50:38 -04:00
Matthew Jones
fd3a423b07
The python 3.6 package seems to already make this symlink 2019-04-04 18:35:56 -04:00
Matthew Jones
91cbaa1096 Install supervisor into the dev environment 2019-03-21 15:58:24 -04:00
Bruno Thomsen
2e0edcbabd docker: yum: use https for postgresql rpm download.
Signed-off-by: Bruno Thomsen <bruno.thomsen@gmail.com>
2019-03-14 17:14:17 +01:00
Matthew Jones
5cf7cc21c8
Revert "Fix chrome can not be started with unit-tests due to missing shared libraries"
This reverts commit d558ffd699.
2019-03-07 10:07:08 -05:00
Matthew Jones
499fd7b2f1
Revert "Fix chrome can not be started with unit-tests due to missing shared libraries"
This reverts commit 3e5f328b52.
2019-03-07 10:06:30 -05:00
Ryan Petrello
6f43875e80
record profile data in /var/log/tower, not /var/lib/awx 2019-02-15 14:34:55 -05:00
Hideki Saito
3e5f328b52 Fix chrome can not be started with unit-tests due to missing shared libraries
- Added installation packages conforming to the unit-tests/Dockerfile

Signed-off-by: Hideki Saito <saito@fgrep.org>
2019-01-31 13:02:23 +09:00
Hideki Saito
d558ffd699 Fix chrome can not be started with unit-tests due to missing shared libraries
- Modify Dockerfile to install necesarry shared libraries for chrome

Signed-off-by: Hideki Saito <saito@fgrep.org>
2019-01-31 09:54:55 +09:00
Ryan Petrello
c6482137d1
parametrize PYTHON for Ubuntu py35 support 2019-01-15 14:09:05 -05:00