Fix pathing issue with custom credentials

also fix some minor flake8 issues
This commit is contained in:
Alan Rominger
2020-09-03 11:02:08 -04:00
committed by Shane McDonald
parent 6e2010ca40
commit 73418e41f3
2 changed files with 16 additions and 11 deletions

View File

@@ -564,7 +564,12 @@ class CredentialType(CommonModelNameNotUnique):
if extra_vars: if extra_vars:
path = build_extra_vars_file(extra_vars, private_data_dir) path = build_extra_vars_file(extra_vars, private_data_dir)
args.extend(['-e', '@%s' % path]) # FIXME: develop some better means of referencing paths inside containers
container_path = os.path.join(
'/runner',
os.path.basename(path)
)
args.extend(['-e', '@%s' % container_path])
class ManagedCredentialType(SimpleNamespace): class ManagedCredentialType(SimpleNamespace):

View File

@@ -1414,9 +1414,10 @@ class BaseTask(object):
cwd = self.build_cwd(self.instance, private_data_dir) cwd = self.build_cwd(self.instance, private_data_dir)
resource_profiling_params = self.build_params_resource_profiling(self.instance, resource_profiling_params = self.build_params_resource_profiling(self.instance,
private_data_dir) private_data_dir)
process_isolation_params = self.build_params_process_isolation(self.instance, # TODO: Remove if fully replaced with containerized runs
private_data_dir, # process_isolation_params = self.build_params_process_isolation(self.instance,
cwd) # private_data_dir,
# cwd)
execution_environment_params = self.build_execution_environment_params(self.instance) execution_environment_params = self.build_execution_environment_params(self.instance)
env = self.build_env(self.instance, private_data_dir, isolated, env = self.build_env(self.instance, private_data_dir, isolated,
private_data_files=private_data_files) private_data_files=private_data_files)
@@ -2534,10 +2535,9 @@ class RunInventoryUpdate(BaseTask):
are accomplished by the inventory source injectors (in this method) are accomplished by the inventory source injectors (in this method)
or custom credential type injectors (in main run method). or custom credential type injectors (in main run method).
""" """
base_env = super(RunInventoryUpdate, self).build_env(inventory_update, base_env = super(RunInventoryUpdate, self).build_env(
private_data_dir, inventory_update, private_data_dir, isolated,
isolated, private_data_files=private_data_files)
private_data_files=private_data_files)
# TODO: this is able to run by turning off isolation # TODO: this is able to run by turning off isolation
# the goal is to run it a container instead # the goal is to run it a container instead
env = dict(os.environ.items()) env = dict(os.environ.items())
@@ -3035,9 +3035,9 @@ class RunSystemJob(BaseTask):
return path return path
def build_env(self, instance, private_data_dir, isolated=False, private_data_files=None): def build_env(self, instance, private_data_dir, isolated=False, private_data_files=None):
base_env = super(RunSystemJob, self).build_env(instance, private_data_dir, base_env = super(RunSystemJob, self).build_env(
isolated=isolated, instance, private_data_dir, isolated=isolated,
private_data_files=private_data_files) private_data_files=private_data_files)
# TODO: this is able to run by turning off isolation # TODO: this is able to run by turning off isolation
# the goal is to run it a container instead # the goal is to run it a container instead
env = dict(os.environ.items()) env = dict(os.environ.items())