Merge pull request #4415 from ryanpetrello/bubblewrap_aaaaaaaaaaarg

fix a bug that breaks isolated task execution

Reviewed-by: https://github.com/softwarefactory-project-zuul[bot]
This commit is contained in:
softwarefactory-project-zuul[bot]
2019-08-02 15:12:47 +00:00
committed by GitHub
2 changed files with 10 additions and 6 deletions

View File

@@ -865,12 +865,14 @@ class BaseTask(object):
if getattr(settings, 'AWX_ANSIBLE_COLLECTIONS_PATHS', []): if getattr(settings, 'AWX_ANSIBLE_COLLECTIONS_PATHS', []):
show_paths.extend(settings.AWX_ANSIBLE_COLLECTIONS_PATHS) show_paths.extend(settings.AWX_ANSIBLE_COLLECTIONS_PATHS)
pi_path = tempfile.mkdtemp( pi_path = settings.AWX_PROOT_BASE_PATH
prefix='ansible_runner_pi_', if not self.instance.is_isolated():
dir=settings.AWX_PROOT_BASE_PATH pi_path = tempfile.mkdtemp(
) prefix='ansible_runner_pi_',
os.chmod(pi_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR) dir=settings.AWX_PROOT_BASE_PATH
self.cleanup_paths.append(pi_path) )
os.chmod(pi_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR)
self.cleanup_paths.append(pi_path)
process_isolation_params = { process_isolation_params = {
'process_isolation': True, 'process_isolation': True,

View File

@@ -434,6 +434,7 @@ class TestGenericRun():
job = Job(project=Project(), inventory=Inventory()) job = Job(project=Project(), inventory=Inventory())
task = tasks.RunJob() task = tasks.RunJob()
task.should_use_proot = lambda instance: True task.should_use_proot = lambda instance: True
task.instance = job
private_data_dir = '/foo' private_data_dir = '/foo'
cwd = '/bar' cwd = '/bar'
@@ -1701,6 +1702,7 @@ class TestProjectUpdateCredentials(TestJobExecution):
def test_process_isolation_exposes_projects_root(self, private_data_dir, project_update): def test_process_isolation_exposes_projects_root(self, private_data_dir, project_update):
task = tasks.RunProjectUpdate() task = tasks.RunProjectUpdate()
task.revision_path = 'foobar' task.revision_path = 'foobar'
task.instance = project_update
ssh = CredentialType.defaults['ssh']() ssh = CredentialType.defaults['ssh']()
project_update.scm_type = 'git' project_update.scm_type = 'git'
project_update.credential = Credential( project_update.credential = Credential(