From cf7fb8ddd716e54c68eaded47faa8d5cb50e90ff Mon Sep 17 00:00:00 2001 From: Matthew Jones Date: Thu, 18 May 2017 13:10:48 -0400 Subject: [PATCH] Fix system jobs not starting due to task manager and cred changes * Task Manager logic wasn't assigning default instance group on system jobs * Task credential changes assumed the model would have a credential * Fix up an innocuous error symlinking rdb.py if it already exists --- awx/main/models/jobs.py | 4 ++++ awx/main/tasks.py | 4 +++- tools/docker-compose/start_development.sh | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/awx/main/models/jobs.py b/awx/main/models/jobs.py index e057a70eac..33f0ea3d2f 100644 --- a/awx/main/models/jobs.py +++ b/awx/main/models/jobs.py @@ -1344,6 +1344,10 @@ class SystemJob(UnifiedJob, SystemJobOptions, JobNotificationMixin): def task_impact(self): return 150 + @property + def preferred_instance_groups(self): + return self.global_instance_groups + ''' JobNotificationMixin ''' diff --git a/awx/main/tasks.py b/awx/main/tasks.py index 70711ca1df..7cab15ecc9 100644 --- a/awx/main/tasks.py +++ b/awx/main/tasks.py @@ -737,8 +737,10 @@ class BaseTask(Task): # handle custom injectors specified on the CredentialType if hasattr(instance, 'all_credentials'): credentials = instance.all_credentials - else: + elif hasattr(instance, 'credential'): credentials = [instance.credential] + else: + credentials = [] for credential in credentials: if credential: credential.credential_type.inject_credential( diff --git a/tools/docker-compose/start_development.sh b/tools/docker-compose/start_development.sh index 56a5c968a1..966f11c9ba 100755 --- a/tools/docker-compose/start_development.sh +++ b/tools/docker-compose/start_development.sh @@ -25,7 +25,7 @@ fi cp -nR /tmp/ansible_tower.egg-info /tower_devel/ || true cp /tmp/ansible-tower.egg-link /venv/tower/lib/python2.7/site-packages/ansible-tower.egg-link -ln -s /tower_devel/tools/rdb.py /venv/tower/lib/python2.7/site-packages/rdb.py +ln -s /tower_devel/tools/rdb.py /venv/tower/lib/python2.7/site-packages/rdb.py || true yes | cp -rf /tower_devel/tools/docker-compose/supervisor.conf /supervisor.conf # Tower bootstrapping