mirror of
https://github.com/ansible/awx.git
synced 2026-02-01 01:28:09 -03:30
Add scm_revision to project updates and cleanup
Add validation around prompted scm_branch requiring project allow_override field to be true Updated related process isolation docs Fix invalid comarision in serializer from PR review, clarify pre-check logging, minor docs additions
This commit is contained in:
@@ -268,12 +268,13 @@ As Tower instances are brought online, it effectively expands the work capacity
|
||||
|
||||
It's important to note that not all instances are required to be provisioned with an equal capacity.
|
||||
|
||||
Project updates behave differently than they did before. Previously they were ordinary jobs that ran on a single instance. It's now important that they run successfully on any instance that could potentially run a job. Projects will now sync themselves to the correct version on the instance immediately prior to running the job.
|
||||
|
||||
When the sync happens, it is recorded in the database as a project update with a `launch_type` of "sync" and a `job_type` of "run". Project syncs will not change the status or version of the project; instead, they will update the source tree _only_ on the instance where they run. The only exception to this behavior is when the project is in the "never updated" state (meaning that no project updates of any type have been run), in which case a sync should fill in the project's initial revision and status, and subsequent syncs should not make such changes.
|
||||
|
||||
If an Instance Group is configured but all instances in that group are offline or unavailable, any jobs that are launched targeting only that group will be stuck in a waiting state until instances become available. Fallback or backup resources should be provisioned to handle any work that might encounter this scenario.
|
||||
|
||||
#### Project synchronization behavior
|
||||
|
||||
Project updates behave differently than they did before. Previously they were ordinary jobs that ran on a single instance. It's now important that they run successfully on any instance that could potentially run a job. Projects will sync themselves to the correct version on the instance immediately prior to running the job. If the needed revision is already locally available and galaxy or collections updates are not needed, then a sync may not be performed.
|
||||
|
||||
When the sync happens, it is recorded in the database as a project update with a `launch_type` of "sync" and a `job_type` of "run". Project syncs will not change the status or version of the project; instead, they will update the source tree _only_ on the instance where they run. The only exception to this behavior is when the project is in the "never updated" state (meaning that no project updates of any type have been run), in which case a sync should fill in the project's initial revision and status, and subsequent syncs should not make such changes.
|
||||
|
||||
#### Controlling where a particular job runs
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ Tower 3.5 forward uses the process isolation feature in ansible runner to achiev
|
||||
By default `bubblewrap` is enabled, this can be turned off via Tower Config or from a tower settings file:
|
||||
|
||||
AWX_PROOT_ENABLED = False
|
||||
|
||||
|
||||
Process isolation, when enabled, will be used for the following Job Types:
|
||||
|
||||
* Job Templates - Launching jobs from regular job templates
|
||||
@@ -30,11 +30,18 @@ If there is other information on the system that is sensitive and should be hidd
|
||||
or by updating the following entry in a tower settings file:
|
||||
|
||||
AWX_PROOT_HIDE_PATHS = ['/list/of/', '/paths']
|
||||
|
||||
|
||||
If there are any directories that should specifically be exposed that can be set in a similar way:
|
||||
|
||||
AWX_PROOT_SHOW_PATHS = ['/list/of/', '/paths']
|
||||
|
||||
|
||||
By default the system will use the system's tmp dir (/tmp by default) as it's staging area. This can be changed:
|
||||
|
||||
AWX_PROOT_BASE_PATH = "/opt/tmp"
|
||||
|
||||
### Project Folder Isolation
|
||||
|
||||
Starting in AWX versions above 6.0.0, the project folder will be copied for each job run.
|
||||
This allows playbooks to make local changes to the source tree for convenience,
|
||||
such as creating temporary files, without the possibility of interference with
|
||||
other jobs.
|
||||
|
||||
@@ -20,6 +20,7 @@ The standard pattern applies to fields
|
||||
- `limit`
|
||||
- `diff_mode`
|
||||
- `verbosity`
|
||||
- `scm_branch`
|
||||
|
||||
##### Non-Standard Cases
|
||||
|
||||
|
||||
Reference in New Issue
Block a user