Commit Graph
100 Commits
Author SHA1 Message Date
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 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 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 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
Matthew Jones 6abca24c12 Upgrading setuptools (and related modules) to 12.0.5 2015-01-29 12:28:44 -05:00
Matthew Jones d2c46d015b Update azure package to 0.9.0 2015-01-29 12:13:53 -05:00
Matthew Jones 18e7541f3b More sanity checking on eula_accepted POST property 2015-01-29 11:55:42 -05:00
Matthew Jones 457555265a Check data type on post for license 2015-01-28 16:38:52 -05:00
Matthew Jones ffe0d4a5d0 Handle some more boolean types in our custom boolean converter 2015-01-28 10:21:14 -05:00
Matthew Jones 12697ad982 Remove a pointless print statement 2015-01-27 16:15:14 -05:00
Matthew Jones 02b31674c2 Fix up some serious issues posting new surveys and deleting them by
non-super users.   Also fix up some issues checking can_change for job
templates for operations like PATCH where not all of the data points
will be submitted
2015-01-27 16:15:13 -05:00
Matthew Jones 93de3f9a73 Fix up an issue posting eula with the license to the config endpoint 2015-01-27 16:14:15 -05:00
Matthew Jones 20910e0e95 Fix up some serious issues posting new surveys and deleting them by
non-super users.   Also fix up some issues checking can_change for job
templates for operations like PATCH where not all of the data points
will be submitted
2015-01-27 15:12:58 -05:00
Matthew Jones 41d294c101 Merge pull request #40 from chrismeyersfsu/fix-inventory_update_license_expired
fixed inventory source update # license hosts check
2015-01-27 10:50:04 -05:00
Matthew Jones 89b1ef62e6 Merge pull request #38 from chrismeyersfsu/fix-project_status
Fix child job->parent job status update.
2015-01-26 17:46:29 -05:00
Matthew Jones 89eeadacdb Merge pull request #39 from chrismeyersfsu/fix-task_retry_spelling
fixed variable name error
2015-01-26 16:09:57 -05:00
Matthew Jones de429ac683 Fix an issue where extra data wasn't being passed down to system jobs
from the schedules
2015-01-26 15:31:57 -05:00
Matthew Jones 698b58e19f filter utility method got caught up in the python boolean dragnet 2015-01-26 15:00:49 -05:00
Matthew Jones 19c6e474cd Missing boolen utility function export 2015-01-26 14:33:20 -05:00
Matthew Jones e807507203 Missing one boolean converter from filters after conversion 2015-01-26 12:50:23 -05:00
Matthew Jones b5db74a7d9 Generalize the python boolean converter so we can use it in RBAC methods 2015-01-26 11:57:21 -05:00
Matthew Jones 9447c092ac Fix a 500 error when posting empty json to the config endpoint, this
code was just wrong
2015-01-26 10:12:26 -05:00
Matthew Jones 1c19924b9a Merge pull request #35 from chrismeyersfsu/housekeeping-system_job_template_launch
removed system job specific code that handles extra_vars
2015-01-23 14:52:28 -05:00
Matthew Jones 2bb4629fe3 Merge pull request #36 from chrismeyersfsu/fix-extra_vars_comments
extra_vars_dict: handle the case where an entire yaml file is commented
2015-01-23 11:37:57 -05:00
Matthew Jones 6a7e887369 Fix an issue where non super users would not be able to update a job
template survey spec
2015-01-23 10:34:41 -05:00
Matthew Jones ea8537ac71 Adjust the behavior of the cancel action
For pending and waiting jobs this should set the cancel status
immediately. For running jobs it should just set the cancel flag and let
the running job set the cancelled status itself during its cancelation
procedure.  This also prevents a race condition where the task manager
will start dependent jobs before realizing the status is cancelled.
2015-01-23 10:20:57 -05:00
Matthew Jones f676d1eeeb Add EULA and EULA acceptance on the config endpoint 2015-01-22 15:43:44 -05:00
Matthew Jones 12855e6c44 Make some assumptions on 'check' unit tests after talking with jimi-c.
Unit tests will now only all pass on ansible 1.8+.  We'll probably need
to revisit this, definitely for v2 if for no other reason
2015-01-22 11:16:17 -05:00
Matthew Jones 16a9af0803 Fix an issue where non-org-admin users with appropriate job template
permissions were not able to view or edit schedule details
2015-01-21 13:49:24 -05:00
Matthew Jones 556d7a8ac6 Merge pull request #33 from chrismeyersfsu/improvement-cleanup_jobs_error_handling
output number of deleted items when running cleanup_deleted
2015-01-21 12:12:30 -05:00
Matthew Jones 97f59a0b04 Filter TERM from variables pushed into the launch shell environment 2015-01-21 11:42:38 -05:00
Matthew Jones 76bcb12d9f Merge pull request #32 from matburt/fix_jtlaunch_without_proj
Make Inventory and Project required when initially launching.
2015-01-21 11:26:22 -05:00
Matthew Jones 873afd64d2 Make Inventory and Project required when initially launching.
This prevents the scenario where an inactive-but-present project or
inventory on a job template would carry on even when we wouldn't want
it to
2015-01-21 11:05:14 -05:00
Matthew Jones bb5f3243e3 Merge pull request #31 from chrismeyersfsu/improvement-cleanup_jobs_error_handling
added graceful fail and meaningful error message when --days specified is too large
2015-01-21 09:53:53 -05:00