Commit Graph

154 Commits

Author SHA1 Message Date
chris meyers
5d5d8152c5 prevent instance group delete if running jobs
* related to https://github.com/ansible/ansible-tower/issues/7936
2018-03-15 14:25:49 -04:00
AlanCoding
54c0436959 prevent unicode bug in job_explanation 2018-02-28 11:01:20 -05:00
Wayne Witzel III
2c71a27630 Merge pull request #1123 from wwitzel3/new-permissions
New RBAC Roles
2018-02-15 16:56:03 -05:00
cclauss
2e623ad80c Change unicode() --> six.text_type() for Python 3 2018-02-11 21:09:12 +01:00
Wayne Witzel III
e7e83afd00 Add Project Admin role 2018-02-10 02:52:25 +00:00
Alan Rominger
b3dcfc8c18 Merge pull request #903 from ansible/item_copy
Implement item copy feature
2018-02-08 15:51:16 -05:00
Matthew Jones
70bf78e29f Apply capacity algorithm changes
* This also adds fields to the instance view for tracking cpu and
  memory usage as well as information on what the capacity ranges are
* Also adds a flag for enabling/disabling instances which removes them
  from all queues and has them stop processing new work
* The capacity is now based almost exclusively on some value relative
  to forks
* capacity_adjustment allows you to commit an instance to a certain
  amount of forks, cpu focused or memory focused
* Each job run adds a single fork overhead (that's the reasoning
  behind the +1)
2018-02-01 16:57:09 -05:00
Ryan Petrello
1e8c89f536 implement support for per-playbook/project/org virtualenvs
see: https://github.com/ansible/awx/issues/34
2018-01-09 22:47:01 -05:00
Ryan Petrello
1d3e8f8b87 Merge pull request #831 from AlanCoding/field_names
Use Options models to consolidate field_names list
2018-01-08 10:36:16 -05:00
Ryan Petrello
2bd656e61d calculate stdout download length using the ORM, not raw SQL 2018-01-03 09:09:44 -05:00
Aaron Tan
a2fd78add4 Implement item copy feature
See acceptance doc for implement details.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2018-01-02 10:20:44 -05:00
AlanCoding
e188692acf use Options models to consolidate field_names list 2017-12-13 22:39:38 -05:00
AlanCoding
34a8e0a9b6 Feature: saved launchtime configurations
Consolidate prompts accept/reject logic in unified models
Break out accept/reject logic for variables
Surface new promptable fields on WFJT nodes, schedules

Make schedules and workflows accurately reject variables
  that are not allowed by the prompting
  rules or the survey rules on the template

Validate against unallowed extra_data in system job schedules
Prevent schedule or WFJT node POST/PATCH with unprompted data
Move system job days validation to new mechanism
Add new psuedo-field for WFJT node credential
Add validation for node related credentials
Add related config model to unified job
Use JobLaunchConfig model for launch RBAC check

Support credential overwrite behavior with multi-creds
  change modern manual launch to use merge behavior
Refactor JobLaunchSerializer, self.instance=None
Modularize job launch view to create "modern" data
Auto-create config object with every job
Add create schedule endpoint for jobs
2017-12-08 13:38:54 -05:00
Aaron Tan
047ad7ca4a Enforce extra_vars override hierachy 2017-07-26 18:10:33 -04:00
Chris Meyers
525490a9a0 all dependent jobs must finish before starting job
related to https://github.com/ansible/ansible-tower/issues/6570 https://github.com/ansible/ansible-tower/issues/6489

* Ensure that all jobs dependent on a job have finished (i.e. error,
success, failed) before starting the dependent job.
* Fixes a bug where a smaller set of dependent jobs to fail upon a
update_on_launch job failing is chosen.
* This fixes the bug of jobs starting before dependent Project Updates
created via update on launch. This also fixes similar bugs associated
with inventory updates.
2017-07-24 12:31:35 -04:00
Aaron Tan
65101736a3 Merge pull request #7017 from jangsutsr/6988_remove_run_type_project_update_task_impact
Remove run type project update task_impact
2017-07-21 10:51:25 -04:00
AlanCoding
a2b98f0a40 disable 2 more types of unhelpful act. str. entries
project local_path changed as a secondary save after creation
adding jobs to dependency list (not user facing)
2017-07-21 07:47:30 -04:00
Chris Meyers
77e25b236d Merge pull request #7019 from chrismeyersfsu/fix-6960
require that insights projects have insights cred
2017-07-12 13:05:05 -04:00
Chris Meyers
376170124e require that insights projects have insights cred 2017-07-12 12:52:26 -04:00
Aaron Tan
c1998e378d Remove run type project update task_impact 2017-07-12 12:00:59 -04:00
AlanCoding
2471e4dffc Detailed tweaking of inventory and playbook listings
* exclude anything inside group_vars or host_vars directories
* include all ini or yml files in inventory listing
2017-07-07 09:33:29 -04:00
Aaron Tan
97e0835d1c Release unified UJT unique_together constraint. 2017-07-06 09:44:34 -04:00
Aaron Tan
bf3712122c Make up missing model help texts for job timeout. 2017-06-06 11:28:56 -04:00
Chris Meyers
87eea59845 add per-inventory insights credential 2017-05-26 07:25:36 -04:00
AlanCoding
fbf24492d8 Instance group preference order consistent with docs 2017-05-15 15:45:10 -04:00
Matthew Jones
1a4a6273a4 Merge branch 'rampart_groups_setup_playbook' into devel
* rampart_groups_setup_playbook:
  Updating changelog for Instance Groups
  Fix an incorrect reference on instance group jobs list
  Purge remaining references to rampart groups
  Simplify can_access for instance groups on job templates
  Adding Instance Group permissions and tests
  Increase test coverage for task scheduler inventory updates
  Exit logic fixes for instance group tools
  View Fixes for instance groups
  new view to allow associations but no creations
  Updating acceptance documentation and system docs
  Updating unit tests for task manager refactoring
  Update views and serializers to support instance group (ramparts)
  Implementing models for instance groups, updating task manager
  Updating the setup playbook to support instance group installation
  Add nginx to server start and switch back to first tmux win
  Fix an issue where the local queue wouldn't use the rabbitmq name
2017-05-12 13:40:30 -04:00
Matthew Jones
4ced911c00 Implementing models for instance groups, updating task manager
* New InstanceGroup model and associative relationship with Instances
* Associative instances between Organizations, Inventory, and Job
  Templates and InstanceGroups
* Migrations for adding fields and tables for Instance Groups
* Adding activity stream reference for instance groups
* Task Manager Refactoring:
** Simplifying task manager relationships and move away from the
   interstitial hash tables
** Simplify dependency determination logic
** Reduce task manager runtime complexity by removing the partial
   references and moving the logic into the task manager directly or
   relying on Job model logic for determinism
2017-05-10 12:32:54 -04:00
AlanCoding
04d6fb1f95 SCM inventory cancel propagation
For manually initiated inventory updates, also cancel the source
project of "sync" type, like jobs do

For automatic inventory updates spawned from source project update,
of launch type "scm", handle contigency cases
2017-05-10 10:28:49 -04:00
Matthew Jones
8c7adddaf3 Merge branch 'release_3.1.3' into devel
* release_3.1.3:
  create .lock file without needing the proj dir to exist
  work around a change in ansible 2.3 to `Task.get_name()`
  mock message obect in callback receiver test
2017-05-01 14:35:11 -04:00
Chris Meyers
633da940a8 create .lock file without needing the proj dir to exist
* We create <project_name>.lock file in the tower project root
directory. This should not require that the project directory exists,
only that the project directory name is generatable.
2017-05-01 11:15:18 -04:00
Matthew Jones
e1e83598e9 Merge branch 'release_3.1.3' into devel
* release_3.1.3: (52 commits)
  ack fact scan messages
  making ldap user/group search fields into codemirror instances
  removing UI parsing for LDAP User and Group Search fields
  Allow exception view to accept all valid HTTP methods.
  Restore ability of parsing extra_vars string for provisioning callback.
  Fix up backup/restore role broken in f7a8e45809758322d9ee41c5305850dd70ed5faf
  Stop / start ansible-tower-service during restores
  value_to_python should encode lookup fields as ascii
  fix brace interpolation on standard out pane
  Adjust some hardcoded usages of 'awx' to use 'aw_user' and 'aw_group'.
  Pull Spanish updates from Zanata
  Temporarily grant awx user createdb role
  Stop giving ownership of backups to postgres
  don't display chunked lines'
  Add dropdown li truncation with ellipsis
  CTiT -> adhoc modules should allow the user to add new modules
  Remove task that was replacing the supervisor systemd tmp file
  Fix failing supervisorctl commands on RH-based distros
  Give ownership of the supervisor socket to awx
  Setting for external log emissions cert verification
  ...
2017-04-28 13:57:04 -04:00
AlanCoding
6d92c56da5 SCM Inventory model, view, and task system changes
Inventory source file-type combined with a linked project
will allow the inventory source to be updated when the
project is updated. The inventory update runs in the
post-run hook of the project update.
2017-04-17 15:01:19 -04:00
Chris Meyers
7919c47370 put lock file in project root dir 2017-04-12 09:36:15 -04:00
Chris Meyers
648aa470d7 lock projects on project sync
* Use filesystem, blocking, locks to prevent two project syncs for the
same project from running the project update playbook at the same time.
2017-04-11 15:47:46 -04:00
Ryan Petrello
95ea370e5e add API versioning for /api/v2/ 2017-03-30 15:11:12 -04:00
Matthew Jones
50ccd1b003 Fix validation error grammar 2017-03-07 16:48:48 -05:00
Matthew Jones
2656e3f3fa Insights project api side integration
* Extend scm credential type to support username and password for
  redhat portal accounts
* Update project update playbook to work with remote insights server
2017-03-07 16:48:44 -05:00
Matthew Jones
ebc1d95233 Don't perform last job run calculation for sync project updates 2017-02-06 16:22:38 -05:00
Matthew Jones
6efeeeb083 Adding missing period for timeout 2016-12-06 12:29:56 -05:00
Matthew Jones
d7ffdf7020 Updating project help text 2016-12-06 12:08:23 -05:00
Aaron Tan
a22d815c88 Add ability to disable global job timeout. 2016-12-01 12:08:53 -05:00
Matthew Jones
5df4096660 Make websocket events more informative
* Make sure we always populate workflow information when relevant to
  job status changes.
* Include detail about workflow job node
2016-11-22 09:33:25 -05:00
Aaron Tan
9e4655419e Fix flake8 E302 errors. 2016-11-15 20:59:39 -05:00
AlanCoding
339661a6a5 New method to monkeypatch JSONField 2016-11-14 16:35:56 -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
AlanCoding
de66318381 move timeout settings into 3 different settings vars 2016-11-02 14:59:51 -04:00
sundeep-co-in
688b5fef68 resolve conflict: settings/defaults.py 2016-11-02 15:19:57 +05:30
Chris Meyers
03a484a6a6 remove old task manager code 2016-11-01 13:50:42 -05:00
Chris Meyers
555f0bb90f project and jobs running correctly 2016-11-01 13:50:42 -05:00
sundeep-co-in
d65e121b19 flake8 compliance 2016-10-28 14:07:08 +05:30