From 04ffd50543f1f5d768201aeac811d3a406730409 Mon Sep 17 00:00:00 2001 From: Steve Kowalik Date: Fri, 25 Sep 2015 15:48:41 +1000 Subject: [PATCH] Check if version is read-only when querying Zanata Extend query-zanata-project-version.py to parse the response it gets back from the Zanata server, and to also exit 1 if the version is marked as read-only, saves the proposal slave performing the work if the server will reject the upload anyway. Change-Id: I9f66bd34c6d34703b47836f91737282193beb0af --- jenkins/scripts/query-zanata-project-version.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/jenkins/scripts/query-zanata-project-version.py b/jenkins/scripts/query-zanata-project-version.py index de05613f10..b29795ac9c 100755 --- a/jenkins/scripts/query-zanata-project-version.py +++ b/jenkins/scripts/query-zanata-project-version.py @@ -16,6 +16,7 @@ import argparse import os +import json import sys from ZanataUtils import IniConfig, ZanataRestService @@ -34,7 +35,8 @@ def get_args(): def main(): args = get_args() zc = IniConfig(os.path.expanduser('~/.config/zanata.ini')) - rest_service = ZanataRestService(zc, verify=args.verify) + rest_service = ZanataRestService(zc, content_type='application/json', + verify=args.verify) try: r = rest_service.query( '/rest/projects/p/%s/iterations/i/%s' @@ -42,6 +44,9 @@ def main(): except ValueError: sys.exit(1) if r.status_code == 200: + details = json.loads(r.content) + if details['status'] == 'READONLY': + sys.exit(1) sys.exit(0)