From 4d7126e100f1dc40578372d3a3ea0a56d5cf7eb3 Mon Sep 17 00:00:00 2001
From: Benjamin Bertrand <benjamin.bertrand@esss.se>
Date: Wed, 9 May 2018 15:45:41 +0200
Subject: [PATCH] Add variable to disable AWX jobs

AWX jobs should only be triggered on the production server (not from
staging). At least until we get a full staging environment.
---
 app/settings.py | 1 +
 app/tasks.py    | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/app/settings.py b/app/settings.py
index 7fa4f6e..73b3d93 100644
--- a/app/settings.py
+++ b/app/settings.py
@@ -68,4 +68,5 @@ MAC_OUI = '02:42:42'
 DOCUMENTATION_URL = 'http://ics-infrastructure.pages.esss.lu.se/csentry/index.html'
 
 # AWX job templates
+AWX_JOB_ENABLED = False
 AWX_CORE_SERVICES_UPDATE = 'ics-ans-core CSENTRY refresh'
diff --git a/app/tasks.py b/app/tasks.py
index cc014f8..db513ed 100644
--- a/app/tasks.py
+++ b/app/tasks.py
@@ -39,6 +39,9 @@ def trigger_core_services_update():
 
 
 def launch_job_template(job_template, monitor=True, **kwargs):
+    if not current_app.config.get('AWX_JOB_ENABLED', False):
+        current_app.logger.info('AWX job is disabled. Not sending any request.')
+        return 'AWX job not triggered'
     resource = tower_cli.get_resource('job')
     result = resource.launch(job_template=job_template, monitor=monitor, **kwargs)
     return result
-- 
GitLab