From nobody Fri Dec 19 19:15:28 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1563371394; cv=none; d=zoho.com; s=zohoarc; b=jD3BvQpXmFWdvDWiDvwckMu9v3weo0f6CcPxJd87+tiSx3jxvbxWnkqow0cSJY2BVP8HpUyLxqdLqBA1+ApaX2NQgkQhU2FdBn3R8MG59qGTvNBcCiHdyHfMUS97/9wcsXVJH98r7rUJgbVRu7+l+IU2I+yq+/FEj1FAsq9uWmQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1563371394; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=dwVDgMWW7gRhtMc1E5VCL7jxpZW75VDX59+D0a4CKhg=; b=i7t8B0nzcXj94DXPASq6Cyp+BvCdCyo60XRqgl7/TX13FwrSr46552aBchiHcp5TONb8bDwpFWWLJyd9o22fsvMXH4f5dCmZF0mrl5Q9DiqXrMbhGuTYuaytqkcx50sakDIEOB1Mv7BKZDbdbq+tWEi33sGAwYtiLuxWprJ67YI= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1563371394314422.94246671282315; Wed, 17 Jul 2019 06:49:54 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 5D80830860BB; Wed, 17 Jul 2019 13:49:52 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3094B60C44; Wed, 17 Jul 2019 13:49:52 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id E762218045DB; Wed, 17 Jul 2019 13:49:51 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x6HDnl2I025479 for ; Wed, 17 Jul 2019 09:49:47 -0400 Received: by smtp.corp.redhat.com (Postfix) id ECCD760A35; Wed, 17 Jul 2019 13:49:47 +0000 (UTC) Received: from kinshicho.brq.redhat.com (unknown [10.43.2.73]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 768C0437F for ; Wed, 17 Jul 2019 13:49:47 +0000 (UTC) From: Andrea Bolognani To: libvir-list@redhat.com Date: Wed, 17 Jul 2019 15:49:18 +0200 Message-Id: <20190717134929.10540-10-abologna@redhat.com> In-Reply-To: <20190717134929.10540-1-abologna@redhat.com> References: <20190717134929.10540-1-abologna@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-loop: libvir-list@redhat.com Subject: [libvirt] [jenkins-ci PATCH v2 09/20] quayadmin: Introduce configuration object X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.44]); Wed, 17 Jul 2019 13:49:53 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Instead of storing the client configuration in global variables, create a single configuration object to store all of them and pass around for functions to use. Signed-off-by: Andrea Bolognani Reviewed-by: Daniel P. Berrang=C3=A9 --- guests/quayadmin | 45 +++++++++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/guests/quayadmin b/guests/quayadmin index 218a945..67873aa 100755 --- a/guests/quayadmin +++ b/guests/quayadmin @@ -23,15 +23,20 @@ import pprint import requests import sys =20 -baseurl =3D "https://quay.io/api/v1" -token=3D "xxx" +def get_config(): + config =3D { + "baseurl": "https://quay.io/api/v1", + "token": "xxx", + } + + return config =20 =20 -def request(endpoint, method, payload=3DNone, params=3DNone, debug=3DFalse= ): - url =3D baseurl + endpoint +def request(config, endpoint, method, payload=3DNone, params=3DNone, debug= =3DFalse): + url =3D config["baseurl"] + endpoint =20 headers =3D { - "Authorization": "Bearer {}".format(token) + "Authorization": "Bearer {}".format(config["token"]) } =20 if debug: @@ -53,16 +58,16 @@ def request(endpoint, method, payload=3DNone, params=3D= None, debug=3DFalse): return res =20 =20 -def get(endpoint, params=3DNone, debug=3DFalse): - return request(endpoint, method=3Drequests.get, params=3Dparams, debug= =3Ddebug) +def get(config, endpoint, params=3DNone, debug=3DFalse): + return request(config, endpoint, method=3Drequests.get, params=3Dparam= s, debug=3Ddebug) =20 =20 -def delete(endpoint, payload=3DNone, debug=3DFalse): - return request(endpoint, method=3Drequests.delete, payload=3Dpayload, = debug=3Ddebug) +def delete(config, endpoint, payload=3DNone, debug=3DFalse): + return request(config, endpoint, method=3Drequests.delete, payload=3Dp= ayload, debug=3Ddebug) =20 =20 -def post(endpoint, payload=3DNone, debug=3DFalse): - return request(endpoint, method=3Drequests.post, payload=3Dpayload, de= bug=3Ddebug) +def post(config, endpoint, payload=3DNone, debug=3DFalse): + return request(config, endpoint, method=3Drequests.post, payload=3Dpay= load, debug=3Ddebug) =20 =20 def has_error(quiet, res, expected, message): @@ -80,13 +85,13 @@ def has_error(quiet, res, expected, message): return True =20 =20 -def run_list_repos(args): +def run_list_repos(config, args): endpoint =3D "/repository" params =3D { "namespace": args.namespace, } =20 - res =3D get(endpoint, params=3Dparams, debug=3Dargs.debug) + res =3D get(config, endpoint, params=3Dparams, debug=3Dargs.debug) =20 if has_error(args.quiet, res, 200, "Cannot list repositories"): return 1 @@ -97,10 +102,10 @@ def run_list_repos(args): print ("{}".format(repo["name"])) =20 =20 -def run_show_repo(args): +def run_show_repo(config, args): endpoint =3D "/repository/{}/{}".format(args.namespace, args.repo) =20 - res =3D get(endpoint, debug=3Dargs.debug) + res =3D get(config, endpoint, debug=3Dargs.debug) =20 if has_error(args.quiet, res, 200, "Cannot query repository {}/{}" .format(args.namespace, args.repo)): @@ -117,7 +122,7 @@ def run_show_repo(args): print(" description: {}".format(info["description"])) =20 =20 -def run_create_repo(args): +def run_create_repo(config, args): endpoint =3D "/repository" payload =3D { "repo_kind": "image", @@ -127,7 +132,7 @@ def run_create_repo(args): "description": args.desc, } =20 - res =3D post(endpoint, payload=3Dpayload, debug=3Dargs.debug) + res =3D post(config, endpoint, payload=3Dpayload, debug=3Dargs.debug) =20 if has_error(args.quiet, res, 201, "Cannot create repository {}/{}" .format(args.namespace, args.repo)): @@ -139,10 +144,10 @@ def run_create_repo(args): print("Repository {}/{} created".format(args.namespace, args.repo)) =20 =20 -def run_delete_repo(args): +def run_delete_repo(config, args): endpoint =3D "/repository/{}/{}".format(args.namespace, args.repo) =20 - res =3D delete(endpoint, debug=3Dargs.debug) + res =3D delete(config, endpoint, debug=3Dargs.debug) =20 if has_error(args.quiet, res, 204, "Cannot delete repository {}/{}" .format(args.namespace, args.repo)): @@ -225,7 +230,7 @@ def main(): args =3D parser.parse_args() =20 try: - res =3D args.func(args) + res =3D args.func(get_config(), args) sys.exit(res) except Exception as ex: sys.stderr.write("{}: {}\n".format(sys.argv[0], ex)) --=20 2.21.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list