fix chicken egg issue with workflow nodes and inventory sources for parents that do not exist (#15982)

fix chicken egg issue with workflow nodes and inventory sources for parents that do not exist
This commit is contained in:
Sean Sullivan
2025-05-16 14:49:40 -04:00
committed by GitHub
parent 94764a1f17
commit eb96d5d984
4 changed files with 40 additions and 4 deletions

View File

@@ -230,7 +230,11 @@ def main():
inventory_object = module.get_one('inventories', name_or_id=inventory, data=lookup_data)
if not inventory_object:
module.fail_json(msg='The specified inventory, {0}, was not found.'.format(lookup_data))
# if the inventory does not exist, then it can't have sources.
if state == 'absent':
module.exit_json(**module.json_output)
else:
module.fail_json(msg='The specified inventory, {0}, was not found.'.format(lookup_data))
inventory_source_object = module.get_one(
'inventory_sources',

View File

@@ -320,9 +320,13 @@ def main():
wfjt_search_fields['organization'] = organization_id
wfjt_data = module.get_one('workflow_job_templates', name_or_id=workflow_job_template, **{'data': wfjt_search_fields})
if wfjt_data is None:
module.fail_json(
msg="The workflow {0} in organization {1} was not found on the controller instance server".format(workflow_job_template, organization)
)
if state == 'absent':
# if the workflow doesn't exist, it can't have workflow nodes.
module.exit_json(**module.json_output)
else:
module.fail_json(
msg="The workflow {0} in organization {1} was not found on the controller instance server".format(workflow_job_template, organization)
)
workflow_job_template_id = wfjt_data['id']
search_fields['workflow_job_template'] = new_fields['workflow_job_template'] = workflow_job_template_id