#!/usr/bin/python import os import json import urllib2 import argparse ci_base_url = os.environ.get('CI_BASE_URL', 'https://ci.linaro.org/jenkins/job/') def main(args): input_arguments = dict() input_arguments['json_url'] = args.json_url request = urllib2.Request(ci_base_url + input_arguments['json_url'] + '/lastSuccessfulBuild/api/json') try: response = urllib2.urlopen(request) except urllib2.URLError, e: if hasattr(e, 'reason'): print 'Failed to reach %s.' % ci_base_url print 'Reason: ', e.reason print e.headers elif hasattr(e, 'code'): print 'Could not fulfill the request: %s' % ci_base_url print 'Error code: ', e.code print e.headers sys.exit('Failed to get response.') values = json.load(response) if args.input_variable: input_arguments['input_variable'] = args.input_variable for item in values['actions'][0]['parameters']: if input_arguments['input_variable'] in item.get('name'): print item.get('value') else: config = json.dumps(values, indent=2) print config if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument("json_url", help="url to json file") parser.add_argument("--input_variable", help="variable to get back") args = parser.parse_args() main(args) # vim: set ts=8 sw=4 sts=4 et tw=80 fileencoding=utf-8 :