aboutsummaryrefslogtreecommitdiff
path: root/run-jjb.py
diff options
context:
space:
mode:
authorFathi Boudra <fathi.boudra@linaro.org>2017-04-07 07:25:33 +0300
committerFathi Boudra <fathi.boudra@linaro.org>2017-04-07 05:38:44 +0000
commitf25a3dbeb4f0a73c74f7e1a47003ed1667458719 (patch)
tree2f2ffee172ae34173084894aba16b661e9084b0d /run-jjb.py
parentf4f4e78e10d120b45b0d940dfe0918385e818c12 (diff)
run-jjb.py: set user/pass only if JJB_{USER,PASSWORD} variables are set
Sanity checks don't set JJB_USER and JJB_PASSWORD. It triggers the error: Invalid password/token for user: None Change-Id: I80a6e79f6f8ed87de23f09e9b4b80da25d12b6b9 Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Diffstat (limited to 'run-jjb.py')
-rwxr-xr-xrun-jjb.py32
1 files changed, 23 insertions, 9 deletions
diff --git a/run-jjb.py b/run-jjb.py
index c4188b800f..5243df4694 100755
--- a/run-jjb.py
+++ b/run-jjb.py
@@ -33,6 +33,26 @@ def findparentfiles(fname):
jjb_cmd = find_executable('jenkins-jobs') or sys.exit('jenkins-jobs is not found.')
+arguments = [jjb_cmd]
+
+jjb_user = os.environ.get('JJB_USER')
+jjb_password = os.environ.get('JJB_PASSWORD')
+if jjb_user is not None and jjb_password is not None:
+ jenkins_jobs_ini = ('[job_builder]\n'
+ 'ignore_cache=True\n'
+ 'keep_descriptions=False\n'
+ '\n'
+ '[jenkins]\n'
+ 'user=john.doe@linaro.org\n'
+ 'password=xxx\n'
+ 'url=https://ci.linaro.org/\n')
+ with open('jenkins_jobs.ini', 'w') as f:
+ f.write(jenkins_jobs_ini)
+ arguments.extend(['--conf=jenkins_jobs.ini',
+ '--user='.join(jjb_user),
+ '--password='.join(jjb_password)])
+
+arguments.extend(['update', 'template.yaml'])
try:
arguments = ['git', 'diff', '--name-only',
@@ -64,10 +84,6 @@ for filename in data.splitlines():
# Remove dplicate entries in the list
filelist = list(set(filelist))
-jenkins_jobs_ini = '[job_builder]\nignore_cache=True\nkeep_descriptions=False\n\n[jenkins]\nuser=john.doe@linaro.org\npassword=xxx\nurl=https://ci.linaro.org/\n'
-with open('jenkins_jobs.ini', 'w') as f:
- f.write(jenkins_jobs_ini)
-
for conf_filename in filelist:
with open(conf_filename) as f:
buffer = f.read()
@@ -80,11 +96,6 @@ for conf_filename in filelist:
with open('template.yaml', 'w') as f:
f.write(buffer)
try:
- arguments = [jjb_cmd, '--conf=jenkins_jobs.ini',
- '--user=%s' % os.environ.get('JJB_USER'),
- '--password=%s' % os.environ.get('JJB_PASSWORD'),
- 'update', 'template.yaml']
- # arguments = [jjb_cmd, 'test', conf_filename, '-o', 'out']
proc = subprocess.Popen(arguments,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
@@ -100,3 +111,6 @@ for conf_filename in filelist:
os.remove('template.yaml')
#shutil.rmtree('out')
+
+if os.path.exists('jenkins_jobs.ini'):
+ os.remove('jenkins_jobs.ini')