1
0
mirror of https://github.com/ansible/awx.git synced 2024-11-02 09:51:09 +03:00
Commit Graph

427 Commits

Author SHA1 Message Date
Jake McDermott
374453391d update tower build url 2017-01-31 10:43:20 -05:00
Ryan Petrello
73cbcc2de0 add awx.conf tests to our various test run environments 2017-01-30 12:37:17 -05:00
Ryan Petrello
2568c86b71 Merge pull request #4955 from ryanpetrello/fix-4900
move the uwsgi master FIFO from /tmp/awxfifo to /var/lib/awx/awxfifo
2017-01-26 10:11:21 -05:00
Shane McDonald
35deb0be37 Simplify UI / Docker targets
- Renamed npm scripts to reflect what they are actually doing. Nothing is being built here!
- Not sure why the default django_host was 0.0.0.0…
- Removed unnecessary logic from build-docker-cid
2017-01-25 18:45:48 -05:00
Shane McDonald
790f30b3cd Prevent npm install from running every time make ui-docker* is invoked
awx/ui/package.json is a normal file in the repo, not created by Make.
2017-01-25 18:45:47 -05:00
Ryan Petrello
f061505895 move the uwsgi master FIFO from /tmp/awxfifo to /var/lib/awx/awxfifo
Resolves #4900
2017-01-25 16:37:11 -05:00
Bill Nottingham
c01eccca7e Remove most SELinux policy.
Add file contexts to policy instead of using semanage.
2017-01-24 01:50:34 -05:00
Shane McDonald
b60b4b2bc1 Generate .mo files without django, enable API l10n at build time. 2017-01-23 12:25:56 -05:00
Shane McDonald
cbf0c2704d Separate API and UI l10n make targets.
A couple reasons for this:

- The command for generating the API l10n files is currently broken, and I want to get the translation folks looking at the UI ASAP.
- These things require different environments:
  - Generating the UI files requires Grunt, which is only available *before* packaging. We generate the static files before invoking mock or pbuilder.
  - Generating the API files requires Django, which is only available inside the virtual environment. This will likely need to be invoked somewhere inside of the install playbooks.
2017-01-12 21:09:18 -05:00
AlanCoding
cc4aa49556 pool restart with thread-based external log config
for CTiT enablement of celery task Tower logs
2017-01-04 14:53:49 -05:00
AlanCoding
67686f640b finish implementation of data generator presets, fix flake8 2017-01-03 09:23:27 -05:00
AlanCoding
c3aaccc0d4 make it so that repeated runs do not cause problems 2016-12-22 13:53:19 -05:00
AlanCoding
1346f7b580 fixing some of most annoying problems with bulk data generator 2016-12-22 12:03:56 -05:00
Chris Meyers
b533a9eb7b purge make requirements_jenkins 2016-12-14 10:30:28 -05:00
Chris Meyers
6348ed97dd uninstall certifi if installed in venv's 2016-12-14 09:53:24 -05:00
Shane McDonald
3597c34593 Rename .te filename to reflect selinux policy name
https://patchwork.kernel.org/patch/8784071/

While renaming the policy would have been a “cleaner” solution, this would create a scenario where our setup playbooks would need to check for the policy by it’s old name before installing the new one. Updating the filename to reflect the policy name is the least invasive and risky change.
2016-12-12 15:55:49 -05:00
Wayne Witzel III
c6e1598b9c explicitly set long harakiri time to deal with very large inventory deletes 2016-12-12 12:44:05 -05:00
AlanCoding
431dcc6490 switch to smoother chain reloading 2016-12-09 15:38:38 -05:00
AlanCoding
5ff62c97b6 uwsgi auto-reload on logging change 2016-12-09 15:21:03 -05:00
Matthew Jones
cd11a9c1c2 peg compose tag to active branch 2016-12-06 13:32:33 -05:00
AlanCoding
7848198b9f New awx.main.utils directory, distributed task to invalidate settings 2016-12-02 14:36:04 -05:00
AlanCoding
f3427d1359 Logging Integration, ELK docker-compose as update file 2016-11-29 13:09:47 -05:00
Shane McDonald
7342210ca6 Remove awx/job_output in clean target 2016-11-23 08:55:55 -05:00
Shane McDonald
c80a750457 Merge pull request #4012 from shanemcd/activate-venv-flake8
Activate venv in flake8 target
2016-11-15 10:11:45 -05:00
Shane McDonald
4330eb7907 Activate venv in flake8 target 2016-11-15 09:54:42 -05:00
Chris Meyers
1883485724 towards virtualenv being exactly requirements.txt
* Ignore already installed (usually global) packages when installing
requirements.txt into the virtualenv.
2016-11-15 09:19:29 -05:00
Shane McDonald
5657671fb9 Add unit test artifacts to clean target 2016-11-11 14:39:23 -05:00
Leigh Johnson
0d3eb67bd0 Fixes namespace collision & allows command-line options to be passed to UI build system (#3876)
* Fixes BrowserSync window.name namespace collision #3872

* Allow command-line arguments to be passed to development UI builds.
Add support for --ng-debug and --router-debug flags to turn on Angular's
$log service and ui-router's trace utility.
Cleans up development debug settings & defunct websocket configuration.

Resolves lingering issues raised by trying read asynchronously-loaded config file during AngularJS config phase. #3872

* shrinkwrap updated minimist

* update CONTRIBUTING.md to include UI build options

* feedback/review
2016-11-09 12:49:18 -05:00
Leigh Johnson
38e40c7eba Hook up npm script target for jshint (#3916)
* Hook up npm script target for jshint

* Shrinkwrap ui dependencies
2016-11-09 09:53:58 -05:00
Shane McDonald
fdfce0bc73 Print flake8 results to stdout and output to file
I think?
2016-11-08 11:06:48 -05:00
Matthew Jones
88a8810815 Merge pull request #3729 from sundeep-co-in/STAGE
enable django i18n
2016-11-04 15:52:33 -04:00
Matthew Jones
fa0780b9d0 Optimize uwsgi launching in dev container and prod
* Set --master flag so we have a preforking master process to manage
  subprocs
* Set max-requests to 1000 so uwsgi will recycle processes after 1000
  requests
* Set --no-orphans so uwsgi will track child processes and clean them up
  in order to respawn children
* Turn stats on in the container and install uwsgitop in dev
  requirements so we can track uwsgi stats
2016-11-04 13:38:23 -04:00
Shane McDonald
c99f240c89 Add node_modules bins to Makefile PATH 2016-11-02 14:30:07 -04:00
Graham Mainwaring
f3cb5816d5 Merge pull request #3843 from ghjm/devel
Can't use bash syntax since make uses /bin/sh
2016-11-02 14:01:12 -04:00
Graham Mainwaring
b05cd9e5c6 Can't use bash syntax since make uses /bin/sh 2016-11-02 13:46:49 -04:00
Shane McDonald
d42ec44010 Use grunt variable in Makefile 2016-11-02 13:35:26 -04:00
sundeep-co-in
2ddcffc184 zanata config loc 2016-10-27 22:26:39 +05:30
sundeep-co-in
e908bc34e6 Merge branch 'devel' of https://github.com/sundeep-co-in/ansible-tower into STAGE 2016-10-27 22:23:39 +05:30
Shane McDonald
bbf185cd0b Add awx/public to clean target 2016-10-27 10:17:37 -04:00
sundeep-co-in
c1a5fb3312 resolve conflict 2016-10-27 08:13:02 +05:30
Leigh Johnson
2c8d295132 UI Build System - new interface
Use `make ui-devel` to build a development/debug version of the  UI, with source maps,
without raising any additional browser-sync or filesystem polling.
2016-10-26 16:53:36 -04:00
sundeep-co-in
3bf72f1dba add manage_translations 2016-10-26 16:47:49 +05:30
sundeep-co-in
475d6ed110 Merge branch 'devel' of https://github.com/sundeep-co-in/ansible-tower into STAGE 2016-10-26 10:23:57 +05:30
Leigh Johnson
4b34c6987a Remove make languages target pending delivery of .po files 2016-10-25 15:26:45 -07:00
Takao Fujiwara
40b94a38a8 Enable message i18n with angular-gettext
Signed-off-by: Takao Fujiwara <tfujiwar@redhat.com>
2016-10-25 15:26:45 -07:00
sundeep-co-in
576db5120f resolve conflict 2016-10-25 16:18:14 +05:30
Matthew Jones
e8669b0cbf Support celeryd autoreloading for dev environment 2016-10-20 13:27:36 -04:00
Alan Rominger
532ee059ea Merge pull request #3746 from AlanCoding/uwsgi_reload
Hopefully get uwsgi to auto reload
2016-10-20 09:08:34 -04:00
James Laska
ff8966dd48 Update unittest container to build ui-deps 2016-10-19 12:35:59 -04:00
AlanCoding
e7f16620bb Attempt to get uwsgi to auto reload 2016-10-19 10:39:17 -04:00
Wayne Witzel III
a27c708127 let nginx serve static files 2016-10-18 14:52:10 -04:00
Chris Meyers
4f6d966bab put nginx into honcho flow
* allows for make docker-compose-test then make honcho flow
2016-10-18 14:19:18 -04:00
Wayne Witzel III
e716f6e259 make static directory before collecting 2016-10-18 12:58:11 -04:00
Wayne Witzel III
f5e10bc57c fix static files for API browser 2016-10-18 12:15:01 -04:00
Wayne Witzel III
e9be93cd70 Update tower_tools image to run nginx 2016-10-18 11:16:38 -04:00
sundeep-co-in
78a8ce9479 django i18n 2016-10-18 18:10:39 +05:30
Wayne Witzel III
3a323e1b39 change static path to match what ui-release produces 2016-10-17 09:58:15 -04:00
Wayne Witzel III
0666e40be8 fix make server to run other services 2016-10-14 12:04:30 -04:00
Wayne Witzel III
eb3ec0b083 daphne should listen on 0.0.0.0 2016-10-14 02:00:56 -04:00
Wayne Witzel III
4220246400 use uwsgi/daphne/nginx for dev 2016-10-14 01:45:08 -04:00
Shane McDonald
c80a8a9c14 Exclude test directory from setup bundle tarballs
Also using the rsync strategy in the tar-build target. This doesn’t leave behind the empty setup/test directory.
2016-10-12 16:07:25 -04:00
Wayne Witzel III
5d8e7c17c2 Merge branch 'devel' into jtabor-sockets 2016-10-07 09:50:03 -04:00
Matthew Jones
babe29ebfa Implement cluster health checks
* Add a local node queue to execute targeted jobs
* Add a setting for active cluster node id (per-node)
* Base the heartbeat time on the `modified` time on the Instance table
* Add periodic task that calls save() on the instance to update the
  heartbeat time if services are up
* Purge/update any ha/instance management commands
* Fix up CELERY_ROUTES settings data structure
2016-10-06 16:05:39 -04:00
Wayne Witzel III
9049fb208f Merge branch 'devel' of https://github.com/ansible/ansible-tower into jtabor-sockets 2016-10-06 10:06:30 -04:00
Jim Ladd
89ae7ebe76 Clean docker images by name 2016-10-05 10:31:45 -04:00
Leigh Johnson
bdfed9c87f Escape $ in docker-clean target
Before: https://gist.github.com/leigh-johnson/98331b280b1679bd4c0e4b02f7c59b00
After: Yay!
2016-10-04 00:47:03 -04:00
Wayne Witzel III
530a5c0c88 merging devel 2016-10-03 10:35:50 -04:00
Shane McDonald
15eaac049c Add pycparser to SRC_ONLY_PKGS
Fixes stuff due to https://github.com/pyca/cryptography/issues/3187
2016-10-03 09:37:06 -04:00
Chris Meyers
dd3c3c9f29 Merge branch 'feature-ha_task_manager' into devel 2016-09-29 10:27:17 -04:00
Graham Mainwaring
f6c50cc63a Update Makefile so that ui-release does not get rebuilt over and over when troubleshooting build/release processes 2016-09-28 12:38:37 -04:00
Wayne Witzel III
42aab8ab83 removing websocket notification and service 2016-09-27 18:39:05 -04:00
Chris Meyers
cdb65ccac9 replace task manager with event driven scheduler 2016-09-27 14:16:18 -04:00
Shane McDonald
049d8a7bd6 Support GPG signing in the containerized RPM jobs.
- Added a script that allows for piping signing keys into the container’s stdin stream.
- Got sign.exp working
- I ended up getting mock to run as root, which means both RPM and DEB jobs both use —unsafe-perm now, so I added that back to the Makefile.
2016-09-22 14:19:47 -04:00
James Laska
dcf127ac6d Don't install csslint during requirements_jenkins 2016-09-21 15:27:44 -04:00
Shane McDonald
e958a12dab Remove --unsafe-perm
This breaks RPM builds… Will specify in DEB jobs only.
2016-09-21 11:45:54 -04:00
James Laska
94b440e7f5 Allow unittests from containers to work
Don't `sudo` for me, I'll `sudo` when I need it, yo.  This appears to
only affect the non-container based development workflow.  For folks
that still need to `make develop` outside of a container, please use
`sudo make develop`
2016-09-19 11:09:22 -04:00
Matthew Jones
f5d2c5c18a Merge branch 'ramparts_and_ha' into devel
* ramparts_and_ha: (21 commits)
  Rename database migrations for devel integration
  Integrate callback receiver refactoring
  Fix an issue running jobs in the cluster
  Implement a more dynamic celery queue system
  Purge old munin monitors and tools
  Refactor Tower HA Instance logic and models
  Docker compose improvements
  Initial Docker Compose workflow for Tower cluster
  Add memcached role for setup playbook
  Removing qpid from deb packaging
  Refactor rabbitmq role
  Integrate memcached into setup playbook
  Remove mongodb shutdown task
  Remove dependency on erlang_sd_notify
  Add initial rabbitmq role
  Initial rabbitmq setup playbook integration
  Update development environment for rabbit
  Replace qpid with rabbitmq
  Remove redis role from setup playbook
  Update qpid packaging, remove migrations
  ...
2016-09-15 10:19:57 -04:00
Shane McDonald
05add1a751 Add --unsafe-perm to ui-deps-built
Node thinks we’re stupid. https://github.com/nodejs/node-gyp/issues/454
2016-09-13 15:35:35 -04:00
James Laska
183660a133 Fix '..' typo when installing jenkins requirements 2016-09-13 11:01:00 -04:00
James Laska
7d95b15812 Ensure make docker-clean exits cleanly 2016-09-13 11:01:00 -04:00
Matthew Jones
807cced571 Implement a more dynamic celery queue system
* Meant to be a starting point to more efficiently manage work routing
  and to balance work across all tower nodes
* Integrate flower as a dev tool that starts alongside other nodes.
  Helpful for observing and monitoring the queues/exchanges
* For the moment, force the task manager to only run on one node (not
  sure if this is needed)
* Define queues and routes for all task work
* Bump celery version to 3.1.23
* Expose flower through haproxy
2016-09-09 15:18:18 -04:00
Matthew Jones
0c1e1fa2fb Refactor Tower HA Instance logic and models
* Gut the HA middleware
* Purge concept of primary and secondary.
* UUID is not the primary host identifier, now it's based mostly on the
  username.  Some work probably still left to do to make sure this is
  legit.  Also removed unique constraint from the uuid field.  This
  might become the cluster ident now... or it may just deprecate
* No more secondary -> primary redirection
* Initial revision of /api/v1/ping
* Revise and gut tower-manage register_instance
* Rename awx/main/socket.py to awx/main/socket_queue.py to prevent
  conflict with the "socket" module from python base
* Revist/gut the Instance manager... not sure if this manager is really
  needed anymore
2016-09-08 13:37:53 -04:00
Matthew Jones
ebf103f345 Initial Docker Compose workflow for Tower cluster
The goal is to share a common pattern with the existing development work
2016-09-08 10:18:14 -04:00
Matthew Jones
f988877bae Merge branch 'stable' into devel
* stable: (24 commits)
  Updating changelogs for 3.0.2 release
  fixing deprecated_team.organization credential migration
  Fix issue when installing bundled ansible on el6
  fixed localed date stuff
  update test to check org_auditor access
  ensure team organizations are assigned to credentials
  temporarily pin the pytest version until the ldap error can be fixed
  fixed locale
  fix date locale angular scheduler
  Make sure org admins can see credential after migration, comment updates on related tests add clause in test to verify automatic setting of org of new team credential
  Update team admin credential migration test to current state-of-knowledge
  fix ng-toast rel, resolves #3197 (#3316)
  allow users to edit their first and last name
  Revert "Prevent ignored task from being displayed as failing."
  Revert "Modify job event save behavior"
  fixing old tests for new user creation permissions
  Clean venv on 'make clean'
  Resolve KeyError by coercing instance_id to a str
  Update cloudforms dynamic inventory
  Update foreman inventory script
  ...
2016-08-31 14:34:52 -04:00
AlanCoding
5f15b00a8a fix error Alan introduced in Makefile syntax 2016-08-29 11:46:16 -04:00
AlanCoding
52dc28f7c5 jshint given desired commands, although not working 2016-08-29 11:32:42 -04:00
AlanCoding
1372623080 temporarily pin the pytest version until the ldap error can be fixed 2016-08-26 14:03:41 -04:00
AlanCoding
3a86a41685 disable all the UI unit tests until things are sorted out 2016-08-26 13:51:49 -04:00
AlanCoding
260e93571e outright remove the old jshint install 2016-08-26 13:35:53 -04:00
AlanCoding
7cfb79110f updating Jenkins UI targets 2016-08-26 13:30:08 -04:00
Alan Rominger
c87637ea7d Merge pull request #3325 from AlanCoding/temporary_pytest_bump
Temporary pytest bump for tower unit tests
2016-08-26 12:58:48 -04:00
Matthew Jones
b507dc53ea Putting a bow on some of the new dev workflow
* Documentation of the developer variety
* Defaulting the COMPOSE_TAG to develop, can be overridden
* Automatic docker login assuming gcr login
* Including a manual build step as an alternative to gcr
* Make qpid container shut the f**k up when it's running
2016-08-25 11:57:31 -04:00
Matthew Jones
c8e2f73d48 Support pulling the dev container image from gcr
This will be branch-relative.  If you are ont he `devel` branch then it
will pull that tag, it will try to pull the branch you are on and can be
overridden with the COMPOSE_TAG environment variable
2016-08-24 22:45:20 -04:00
Matthew Jones
dcb4959443 Initial qpid development work
* Switch base tower devel image from u14.04 to c7
* Switch container image to build python dependencies into itself
  instead of forcing it to be built on startup
* Upgrade venv pip to 8.1.2
* Neuter queue.py which was heavily tied to redis and was basically
  orphaned code
* Alter local_settings to override default cache settings and use
  memcached
* Alter local settings to refer to qpid instead of redis for celery
  broker
* Purge redis python dependencies and add qpid and memcached
* Update docker-compose to purge redis and add qpid and memcached
2016-08-24 16:23:47 -04:00
AlanCoding
50ec9ca259 temporarily pin the pytest version until the ldap error can be fixed 2016-08-24 15:54:33 -04:00
Graham Mainwaring
f5b4c63173 Clean venv on 'make clean' 2016-08-19 16:28:09 -04:00
Matthew Jones
8893f8278a Merge branch 'release_3.0.2' into devel
* release_3.0.2: (126 commits)
  Disable permissions tab in Credential > Edit form if Credential is private (#3288)
  Tweaked the popover text for job and skip tags on JT add/edit
  Workaround a cascade setnull polymorphic issue
  flake8
  Fixed old test expectations
  Made it so the credential organization field can't be changed
  Skip some unit tests
  Fixed org auditor visibility of team credentials
  Fix sosreport
  fix credential kind options for list
  interpret any code below 300 as success
  bail when status code is over 300
  Make CloudForms inventory_script work
  Use no_log when handling passwords
  Prevent ignored task from being displayed as failing.
  making ec2 cred optional on group->edit
  making ec2 credential optional for ec2 inventory
  Revert "Fix to ensure org auditors can see team credentials"
  Fixed team credential list to work with corrected permissions
  Making the username and password fields optional
  ...
2016-08-18 22:52:55 -04:00
Leigh Johnson
ce61fe4a42 Refactor UI Build System (#3203)
* initial build trial, clean up awx/ui

* fix hardcoded refs to ng-toast, add jshint preloader

* remove browserify test

* update grunt-jshint -> jshint module loader, browser-sync, update dev targets to build-docker-machine & build-docker-cid, fix blocking tasks

* less autoprefixer

* sample build commands

* fix release build

* update README

* karma config stub

* webpack config for karma tests

* karma preview for shane

* fix build-docker-machine target

* karma+webpack test pipeline configuration, stub tests

* fix smart/job status icons classes

* fix jquery + jsyaml shims, fix LESS cascade

* fix angular-codemirror dependency, explicitly import style/mode dependencies

* shim jsonlint

* fix angular-scheduler AMD imports, remove jquuery-ui shim, fix release config

* use closed $.fn.datepicker for system-tracking

* remove packaging/node/

* remove old tests

* shrinkwrap fragile dependency sandcastle, update README, lint

* first pass at fixing rrule shim

* update makefile targets

* update gitignore w/ new flag file

* add saucelabs karma config

* add license controller test

* add examples of service and directive tests

* Makefile flubs

* consolidate clean-ui target, compulsively update flag file location

* dep on CJS/AMD/UMD compatible version of rrule lib, fix example tests/config for demo

* boilerplate karma config for saucelabs (should be abstracted to common config after proven to work)

* update docs

* docs feedback

* update Dockerfile with Node 6.x dep
2016-08-17 16:09:54 -04:00
Graham Mainwaring
d51edff8a8 Ubuntu 16 support (#3251) 2016-08-16 13:41:23 -04:00
Graham Mainwaring
e93fde2f1a Add VMware provider for Vagrant images and rename make targets (#3180)
This change adds a Makefile target to build a Vagrant .box file that uses the VMware Vagrant provider. Previously, we could only build Virtualbox .box files. The Virtualbox Makefile target is renamed from virtualbox-ovf to vagrant-virtualbox, and the new VMware target is named vagrant-vmware.
2016-08-02 10:44:29 -04:00