mirror of
https://github.com/ansible/awx.git
synced 2026-05-08 01:47:35 -02:30
WIP: containerized inventory updates. Thanks ALAN!!
This commit is contained in:
committed by
Shane McDonald
parent
6ff1424e8c
commit
14a8e3da5e
@@ -1441,7 +1441,6 @@ class PluginFileInjector(object):
|
|||||||
|
|
||||||
def get_plugin_env(self, inventory_update, private_data_dir, private_data_files):
|
def get_plugin_env(self, inventory_update, private_data_dir, private_data_files):
|
||||||
env = self._get_shared_env(inventory_update, private_data_dir, private_data_files)
|
env = self._get_shared_env(inventory_update, private_data_dir, private_data_files)
|
||||||
env['ANSIBLE_COLLECTIONS_PATHS'] = settings.AWX_ANSIBLE_COLLECTIONS_PATHS
|
|
||||||
return env
|
return env
|
||||||
|
|
||||||
def build_private_data(self, inventory_update, private_data_dir):
|
def build_private_data(self, inventory_update, private_data_dir):
|
||||||
|
|||||||
@@ -2539,9 +2539,6 @@ class RunInventoryUpdate(BaseTask):
|
|||||||
injector = InventorySource.injectors[inventory_update.source]()
|
injector = InventorySource.injectors[inventory_update.source]()
|
||||||
return injector.build_private_data(inventory_update, private_data_dir)
|
return injector.build_private_data(inventory_update, private_data_dir)
|
||||||
|
|
||||||
def build_execution_environment_params(self, inventory_update):
|
|
||||||
return {} # TODO: containerize inventory updates
|
|
||||||
|
|
||||||
def build_env(self, inventory_update, private_data_dir, isolated, private_data_files=None):
|
def build_env(self, inventory_update, private_data_dir, isolated, private_data_files=None):
|
||||||
"""Build environment dictionary for ansible-inventory.
|
"""Build environment dictionary for ansible-inventory.
|
||||||
|
|
||||||
@@ -2631,7 +2628,7 @@ class RunInventoryUpdate(BaseTask):
|
|||||||
args.append(source_location)
|
args.append(source_location)
|
||||||
|
|
||||||
args.append('--output')
|
args.append('--output')
|
||||||
args.append(os.path.join(private_data_dir, 'artifacts', 'output.json'))
|
args.append(os.path.join('/runner', 'artifacts', 'output.json'))
|
||||||
|
|
||||||
if os.path.isdir(source_location):
|
if os.path.isdir(source_location):
|
||||||
playbook_dir = source_location
|
playbook_dir = source_location
|
||||||
@@ -2667,8 +2664,10 @@ class RunInventoryUpdate(BaseTask):
|
|||||||
with open(inventory_path, 'w') as f:
|
with open(inventory_path, 'w') as f:
|
||||||
f.write(content)
|
f.write(content)
|
||||||
os.chmod(inventory_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR)
|
os.chmod(inventory_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR)
|
||||||
|
|
||||||
|
inventory_path = os.path.join('/runner', injector.filename)
|
||||||
elif src == 'scm':
|
elif src == 'scm':
|
||||||
inventory_path = os.path.join(private_data_dir, 'project', inventory_update.source_path)
|
inventory_path = os.path.join('/runner', 'project', inventory_update.source_path)
|
||||||
elif src == 'custom':
|
elif src == 'custom':
|
||||||
handle, inventory_path = tempfile.mkstemp(dir=private_data_dir)
|
handle, inventory_path = tempfile.mkstemp(dir=private_data_dir)
|
||||||
f = os.fdopen(handle, 'w')
|
f = os.fdopen(handle, 'w')
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ DATABASES = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AWX_EXECUTION_ENVIRONMENT_DEFAULT_IMAGE = 'quay.io/ansible/ansible-runner:devel'
|
AWX_EXECUTION_ENVIRONMENT_DEFAULT_IMAGE = 'quay.io/shanemcd/ee'
|
||||||
|
|
||||||
AWX_CONTAINER_GROUP_K8S_API_TIMEOUT = 10
|
AWX_CONTAINER_GROUP_K8S_API_TIMEOUT = 10
|
||||||
AWX_CONTAINER_GROUP_POD_LAUNCH_RETRIES = 100
|
AWX_CONTAINER_GROUP_POD_LAUNCH_RETRIES = 100
|
||||||
|
|||||||
Reference in New Issue
Block a user