diff --git a/awx/main/tasks/jobs.py b/awx/main/tasks/jobs.py index a30a639ed4..ad7d1fd12c 100644 --- a/awx/main/tasks/jobs.py +++ b/awx/main/tasks/jobs.py @@ -459,6 +459,21 @@ class BaseTask(object): """ instance.log_lifecycle("finalize_run") + artifact_dir = os.path.join(private_data_dir, 'artifacts', str(self.instance.id)) + collections_info = os.path.join(artifact_dir, 'collections.json') + ansible_version_file = os.path.join(artifact_dir, 'ansible_version.txt') + if os.path.exists(collections_info): + with open(collections_info) as ee_json_info: + ee_collections_info = json.loads(ee_json_info.read()) + instance.installed_collections = ee_collections_info + instance.save(update_fields=['installed_collections']) + + if os.path.exists(ansible_version_file): + with open(ansible_version_file) as ee_ansible_info: + ansible_version_info = ee_ansible_info.readline() + instance.ansible_version = ansible_version_info + instance.save(update_fields=['ansible_version']) + # Run task manager appropriately for speculative dependencies if instance.unifiedjob_blocked_jobs.exists(): ScheduleTaskManager().schedule()