Commit Graph
100 Commits
Author SHA1 Message Date
Matthew Jones a081614c9a Merge branch 'mongo_ancillary_services' into upstream_master
* mongo_ancillary_services:
  Adding the fact cache receiver to the supervisor config
  Implementing tower cleanup task for cleaning up facts
2015-04-27 09:49:35 -04:00
Matthew Jones 22acd51650 Implementing tower cleanup task for cleaning up facts 2015-04-24 14:15:25 -04:00
Matthew Jones 3f4aafa501 Merge remote-tracking branch 'refs/remotes/chrismeyers/fix-cloud_credentials2' into upstream_master
* refs/remotes/chrismeyers/fix-cloud_credentials2:
  multiple credentials implementation style more inline with existing code
  allow machine and cloud credentials to co-exist.
2015-04-23 16:09:14 -04:00
Matthew Jones 19901ba7cf Turns out "hostId" is not a good unique host identifier in openstack.
Switching to use "id" instead.
2015-04-23 16:02:44 -04:00
Matthew Jones c45a422590 Update "make server" endpoint and Makefile to include the new fact cache
receiver. Upgrade docker tool to install mongo and pymongo
2015-04-23 13:34:56 -04:00
Matthew Jones 405be7edd8 Merge branch 'openstack_inventory_support' into upstream_master
* openstack_inventory_support:
  Use inventory_source source_vars to control what address we use for ansible_ssh_host
  Some small changes to tower openstack work
2015-04-23 11:09:41 -04:00
Matthew Jones abdfb26b3d Use inventory_source source_vars to control what address we use for ansible_ssh_host 2015-04-23 11:07:31 -04:00
Matthew Jones 5a401c31aa Handle any exception that could come from sending a packet to a client 2015-04-22 16:50:37 -04:00
Matthew Jones 36512d74c2 Unused variable to make pyflakes happy 2015-04-21 16:13:37 -04:00
Matthew Jones 0fc753046d This fixes an issue where various parts of the system could get stuck
waiting to emit a socketio event if there was a problem with the
websocket service.  Instead of crashing and hanging the system it will
now emit an error and continue.
2015-04-21 15:29:37 -04:00
Matthew Jones 93ecf739be This could be the source of the connection memory leaks, over 1000
connections and only 12 bytes of non-gc-tracked allocations.  Kudos to
cmeyers for finding this.
2015-04-21 14:25:01 -04:00
Matthew Jones fb3bbea027 Add recv_disconnect to acl allowed methods 2015-04-21 14:13:53 -04:00
Matthew Jones f45d75c06c Some small changes to tower openstack work
1) Favor private addresses in the openstack inventory sync
2) Force refresh
3) use hostId and promote it to the top level vars object so we can
track individual host changes
2015-04-20 15:11:06 -04:00
Matthew Jones 6c5fd93ce5 Merge pull request #137 from matburt/openstack_inventory_support
Openstack inventory support
2015-04-14 12:43:20 -04:00
Matthew Jones e87f90b39b add netifaces to the jenkins requirements to make automated unit test
runs happy
2015-04-14 11:33:47 -04:00
Matthew Jones c350fafe22 Rev pyrax to 1.9.3 and lower python-novaclient to 2.20.0 due to a
strange deprecation warning message that is not suppressable.
2015-04-13 21:57:13 -04:00
Matthew Jones 6525120c15 model and task support for launching openstack inventory updates 2015-04-13 15:05:58 -04:00
Matthew Jones c1dc55fceb Merging chrismeyers's openstack work branch changes to the core
openstack module.  Adding python-netifaces dependency for setup packaging
2015-04-13 11:47:18 -04:00
Matthew Jones 768d9d65b9 Upgrading some novaclient specific vendored modules 2015-04-13 11:35:24 -04:00
Matthew Jones 3d8955b298 Adding necessary dist-info for keystoneclient so plugin entrypoints can
be located
2015-04-07 16:57:07 -04:00
Matthew Jones 2163ce14b6 Import openclient module, example config and vendored dependent modules,
updated vendored modules readme
2015-04-07 14:24:39 -04:00
Matthew Jones 037c7342c0 Merge branch 'credential_becomes_refactor' into upstream_master
* credential_becomes_refactor:
  Move 'become_enabled' to JobOptions to allow a toplevel field to exist on the Job model also.  Update tasks and migrations to reflect this
  Last of the ad-hoc priv escalation unit test fixes
  Fixing up some unit tests for "become" refactor
  Changing up ad-hoc based unit tests to follow the new "become" refactor
  Migrate ad-hoc feature to use the new ansible become method if provided
  Refactor pbexpect string matches to submit become password
  Updates and fixes for unit tests on supporting ansible "become"
  Refactor credential to use ansible become if using a new enough ansible version.  Add become flag to job template

Conflicts:
	awx/main/tests/ad_hoc.py
2015-04-06 13:37:36 -04:00
Matthew Jones 55f266d323 Move 'become_enabled' to JobOptions to allow a toplevel field to exist
on the Job model also.  Update tasks and migrations to reflect this
2015-04-06 12:34:47 -04:00
Matthew Jones 736f86fc72 Last of the ad-hoc priv escalation unit test fixes 2015-04-03 16:51:34 -04:00
Matthew Jones e8d010533f Fixing up some unit tests for "become" refactor 2015-04-03 16:26:52 -04:00
Matthew Jones 39d0f91fdb Merge pull request #117 from matburt/scan_files_implementation
Scan files implementation
2015-04-03 15:37:34 -04:00
Matthew Jones beac5c30d2 Changing up ad-hoc based unit tests to follow the new "become" refactor 2015-04-03 15:35:04 -04:00
Matthew Jones 2e58f5fd00 Migrate ad-hoc feature to use the new ansible become method if provided 2015-04-03 15:17:52 -04:00
Matthew Jones b6e9382273 Refactor pbexpect string matches to submit become password 2015-04-03 13:57:33 -04:00
Matthew Jones 5ff7558cd3 Updates and fixes for unit tests on supporting ansible "become" 2015-04-02 13:38:38 -04:00
Matthew Jones d5c9e37499 Refactor credential to use ansible become if using a new enough ansible
version.  Add become flag to job template
2015-04-02 10:05:56 -04:00
Matthew Jones f6aa11eb67 Update playbook to pass conditional constraints for file scanning 2015-03-30 10:15:36 -04:00
Matthew Jones c0364b5bd1 Support recursive mode on the file scanner 2015-03-27 16:51:03 -04:00
Matthew Jones 8204f42972 Merge pull request #108 from matburt/scan_services_implementation
Scan services implementation
2015-03-27 13:29:38 -04:00
Matthew Jones f4d960b127 Fix an issue where going from having 1 or more hosts to having 0 hosts
could trigger an inventory sync failure
2015-03-27 13:25:16 -04:00
Matthew Jones fe82b54158 Remove the old version checks from our job runners used to test features
of old Ansible versions:

* INVENTORY_HOSTVARS from pre-1.3
* Vault password prompting from pre-1.5
* Git hostkey acceptance from pre-1.5
2015-03-26 13:42:42 -04:00
Matthew Jones 180a262d36 Remove old pre-vault version checks that are breaking unit tests 2015-03-26 13:37:20 -04:00
Matthew Jones 345e2fc65e Fix a pexpect bug where ansible now looks for "SU password" instead of
"su password" and that screwed us up a bit
2015-03-26 12:15:25 -04:00
Matthew Jones e282a2045c Add some documentation to the header for the file scanner 2015-03-26 11:37:20 -04:00
Matthew Jones cb8b5f3025 Add some header documentation for the service scanning module 2015-03-26 10:51:46 -04:00
Matthew Jones e790ba480e Filter out inactive jobs when pulling for latest status on the job
template list
2015-03-26 10:22:05 -04:00
Matthew Jones b3c24279ad Initial file scanning module 2015-03-25 16:25:32 -04:00
Matthew Jones 4252845b0d Make the service scanner more closely match the package scanner output 2015-03-25 13:23:55 -04:00
Matthew Jones e4e07277cc Initial docker packaging experiments 2015-03-23 12:11:10 -04:00
Matthew Jones 5f66fbb7c4 Include some more systemd information in the data structure 2015-03-23 12:08:42 -04:00
Matthew Jones dd44c0a0f2 Initial implementation of the service scanner module 2015-03-19 13:21:45 -04:00
Matthew Jones 926b3f775d Support new casing/wording for sudo on Ansible 1.9 2015-03-18 16:37:09 -04:00
Matthew Jones bed6f6db5e Fix flake8 warnings 2015-03-13 13:30:45 -04:00
Matthew Jones 446e15314c Use transaction atomic for the entire request, just bail on transaction
problems to prevent a deadlock scenario
2015-03-13 12:39:26 -04:00
Matthew Jones 0f5beca9ae Major fixes for job callback receiver processing
* Add logic to ansible callback plugin to prevent it from waiting
  forever to submit events to Tower
* Lower process recycle threshold for tower callback receiver
* Make recycle threshold configurable
* Properly exit the main callback receiver management process if
  the event receiver process is dead so we don't leave dead worker
  processes
* Set a configurable maximum number of messages that can be waiting
  in a worker process queue before it is skipped instead of filling
  up memory on a dead worker process
* Skip over a dead worker process if it's queue is full
* Force restart callback receiver if all queues are dead
* Roll back transaction.atomic with the thought that it is causing
  deadlocks in the worker process.  Use the old commit_on_success
  mechanism with retry logic
* Seperate queue nonblocking expected exception from any other type
  of exception that could be encountered on the queue fetch operation
2015-03-13 11:18:18 -04:00
Matthew Jones 19c20c2616 Merge pull request #90 from matburt/scan_jobs_in_tower
Scan jobs in tower
2015-03-09 10:49:45 -04:00
Matthew Jones c4afaad96c Provide access to scan job templates from the inventory related fields 2015-03-06 11:13:36 -05:00
Matthew Jones 3d46a4ce37 Some testing and bug fixes for scan job templates 2015-03-06 11:00:28 -05:00
Matthew Jones 987a898380 Small adjustment for flake8 passage 2015-03-05 15:44:50 -05:00
Matthew Jones cca8c3fac1 Updated rbac for scan job and job template types 2015-03-05 12:40:28 -05:00
Matthew Jones 6034e6108a Fix socket reconnect logic when browser is refreshed after token has expired 2015-03-05 11:40:29 -05:00
Matthew Jones c4e320bf76 rbac tweaks for scan jobs templates 2015-03-03 15:08:18 -05:00
Matthew Jones 4d271bef35 Initial Scan Job Template type implementation 2015-03-03 14:48:22 -05:00
Matthew Jones f6faff5b14 Merge branch 'upstream_master'
* upstream_master: (70 commits)
  Automate cleanup of old dist directory
  Don't import modules that don't export anything
  Include ui template in manifest
  Lock dependency version until tests are fixed
  Add script to lookup locations based on a sourcemap
  Allow all static files to be loaded from dist
  Remove stray console log
  [beautify] disable requiretty for root
  Keep git URLs in SCP format for project updates. Fixes https://trello.com/c/xUL2FZyu
  Adding a --noinput flag.
  "source" for apt
  Update license writer for Matt's comments.
  Update package fact format after discussions with core team
  Move code under lib/ansible to js/shared
  forgot to call super
  Remove docs for scheme parameter.
  Replace ansi2html (GPL) with ansiconv (MIT).
  Final socket fix
  Update source location of socket.io-client
  Revert accidental socket.io upgrade
  ...
2015-03-03 14:45:44 -05:00
Matthew Jones 323226aefd Merge pull request #85 from matburt/fact_scans_and_caching
Fact scans and caching
2015-02-25 13:50:48 -05:00
Matthew Jones b179517564 "source" for apt 2015-02-25 13:44:54 -05:00
Matthew Jones 3615f8a634 Update package fact format after discussions with core team 2015-02-25 13:31:14 -05:00
Matthew Jones 0db749ea19 Fix up date formatting when emitting facts to the fact service 2015-02-23 10:11:10 -05:00
Matthew Jones 70f2e5ea1d Handle unifying the datetime value as a key that we can update on the
tower side
2015-02-20 17:19:19 -05:00
Matthew Jones fd1668dfd8 Implement fact caching service and mongo reference handler 2015-02-20 16:56:35 -05:00
Matthew Jones fed4262ee2 Some light implimentation details for basic fact caching and collection 2015-02-19 11:27:40 -05:00
Matthew Jones 3c61006455 Fix up some flake warnings 2015-02-18 12:55:07 -05:00
Matthew Jones 52385f7346 Process Token from query string instead of cookie header on the api side
for the socket.io service
2015-02-18 11:04:18 -05:00
Matthew Jones c8682b7820 Take out this stupid sync_ui thing from the 'make server' and 'make
servercc' targets
2015-02-16 13:56:46 -05:00
Matthew Jones 207a319349 Update packaging and production configuration for new logging 2015-02-13 13:50:36 -05:00
Matthew Jones 0b8b39f951 Refactor logging to work primarily with rotating files instead of syslog 2015-02-13 10:30:01 -05:00
Matthew Jones f85e28bafa Got a bit too aggressive with pyflakes for the schedules test 2015-02-11 17:57:27 -05:00
Matthew Jones 6a18a50d99 Fixing flake8 errors, this should be almost all of them! 2015-02-11 16:42:55 -05:00
Matthew Jones 59d824a643 Fix an issue where regular users couldn't relaunch jobs that they should
have permission to relaunch
2015-02-11 14:40:44 -05:00
Matthew Jones bb3732b2c1 Cleaning up some flake8 errors, pyflakes in this case 2015-02-10 17:00:23 -05:00
Matthew Jones 60ade410c1 Add tmux CC make target for using with the development service (make
servercc instead of make server)
2015-02-10 12:35:21 -05:00
Matthew Jones f51e248c8b Fix a Project query rbac performance issue 2015-02-10 12:35:21 -05:00
Matthew Jones da5f518a65 Remove some unnecessary print statements 2015-02-09 14:24:36 -05:00
Matthew Jones e9e4c6856d Implement job template job history statuses, configurable 2015-02-09 14:19:18 -05:00
Matthew Jones 753b5f41b4 Fix up flake8 for serializers 2015-02-06 14:14:47 -05:00
Matthew Jones 10389e09e8 Fix up flake8 warnings for views 2015-02-06 14:14:47 -05:00
Matthew Jones 888ae53027 Fix up flake8 runtime configuration, do a bit of flake8 work as it
relates to pyflakes)
2015-02-05 10:40:47 -05:00
Matthew Jones 9e97783b13 Fixing up more pep8 issues 2015-02-04 16:32:14 -05:00
Matthew Jones 1d76c1cd06 More pep8 goodness 2015-02-04 14:44:38 -05:00
Matthew Jones 9b0fe1b015 Ignore E265 in pep8, it's super noisy 2015-02-04 11:47:17 -05:00
Matthew Jones ffec2a19ae Some slight improvements in ansible version detection in tower where
that's used
2015-02-04 10:55:45 -05:00
Matthew Jones ac7eeb7bd3 Merge pull request #60 from ansible/timing-issue
Address IOError 500
2015-02-03 14:13:21 -05:00
Matthew Jones 6e6a709165 Fixing up some pep8 issues 2015-02-03 13:46:58 -05:00
Matthew Jones d9a2acb252 Revert "Upgrade Markdown to 2.5.2" due to issues with logging in python
2.6.

This reverts commit 6787490e6d854eecea70b511673290277ea3bccc.
2015-02-02 10:26:44 -05:00
Matthew Jones 90c8f18f76 Make error messages less alarming and include ip address in them 2015-01-30 15:55:32 -05:00
Matthew Jones 2887855c15 Changes to be more strict on connection authentication for the socketio service 2015-01-30 12:14:39 -05:00
Matthew Jones b73c7ce41b Merge pull request #48 from matburt/upgrade_vendored_packages
Upgrade vendored packages
2015-01-30 11:12:32 -05:00
Matthew Jones bd542bc336 Update some of the dev requirements stuff 2015-01-30 10:52:35 -05:00
Matthew Jones a8516c4ede Upgrade keyring to 4.1 2015-01-29 13:09:26 -05:00
Matthew Jones 692dcc1317 Upgrade Markdown to 2.5.2 2015-01-29 13:04:30 -05:00
Matthew Jones 6c65ba826d Upgrade python dateutil to 2.4.0 2015-01-29 12:55:37 -05:00
Matthew Jones 48a7b5f80e Upgrade six to 1.9.0 2015-01-29 12:41:26 -05:00
Matthew Jones 32b614fcc4 Upgrade requests to 2.5.1 2015-01-29 12:37:56 -05:00
Matthew Jones 9f5f795097 Update README indicating pytz version number 2015-01-29 12:33:43 -05:00
Matthew Jones 6712388b23 Upgrade pytz to 2014.10 2015-01-29 12:32:31 -05:00