X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=jenkins-admin%2Fcreate_jenkins_clouds_openstack_yaml.py;h=f7cb516a37b06e86e492ea841d1a7a8722dd2aac;hb=4f408ffd2980cb48efedc47d5b73d3fc4b20dd3b;hp=bd94a9e4972d1a3315e081c1606f094ecc6d9384;hpb=142b4697db846df8f294427b52533c2e797b9610;p=releng%2Fglobal-jjb.git diff --git a/jenkins-admin/create_jenkins_clouds_openstack_yaml.py b/jenkins-admin/create_jenkins_clouds_openstack_yaml.py index bd94a9e4..f7cb516a 100755 --- a/jenkins-admin/create_jenkins_clouds_openstack_yaml.py +++ b/jenkins-admin/create_jenkins_clouds_openstack_yaml.py @@ -48,7 +48,15 @@ lookuptable = { "v2-standard-4": "d9115351-defe-4fac-986b-1a1187e2c31c", "v2-standard-8": "e6fe2e37-0e38-438c-8fa5-fc2d79d0a7bb", "v2-standard-16": "9e4b01cd-6744-4120-aafe-1b5e17584919", - "v2-standard-360": "f0d27f44-a410-4f0f-9781-d722f5b5489e" + "v2-standard-360": "f0d27f44-a410-4f0f-9781-d722f5b5489e", + "v3-standard-2": "d6906d2a-e83f-42be-b33e-fbaeb5c511cb", + "v3-standard-4": "5f1eb09f-e764-4642-a16f-a7230ec025e7", + "v3-standard-8": "47d3707a-c6c6-46ea-a15b-095e336b1edc", + "v3-standard-16": "8587d458-69de-4fc5-be51-c5e671bc35d5", + "v3-standard-32": "3e01b39f-45a9-4b7b-b6dc-14378433dc36", + "v3-standard-48": "06a0e8b7-949a-439d-a185-208ae9e645b2", + "v3-standard-64": "402a2759-cc01-481d-a8b7-2c7056f153f7", + "v3-standard-96": "883b0564-dec6-4e51-88c7-83d86994fcf0" } maintemplate = """\ --- @@ -58,7 +66,7 @@ jenkins: credentialsId: {{ cloud_credential_id }} endPointUrl: {{ cloud_url }} ignoreSsl: {{ cloud_ignore_ssl }} - name: "cattle" + name: {{ cloud_name }} slaveOptions: availabilityZone: {{ availability_zone }} bootSource: @@ -111,16 +119,27 @@ def dir_path(path): raise argparse.ArgumentTypeError(f"readable_dir:{path} is not a valid path") def parse_arguments(): - parser = argparse.ArgumentParser(description='Create jcasc yaml from path to jenkins config dir.') - parser.add_argument('--path', type=dir_path) - parser.add_argument('--sandbox', type=bool, default=False, help="Set to True for sandbox yaml generation") + parser = argparse.ArgumentParser( + description='Create jcasc yaml from path to jenkins config dir.') + + + parser.add_argument('--path', type=dir_path, + help="Path to jenkins-admin directory") + parser.add_argument('--name', type=str, + help="cloud name IE: cattle") + + parser.add_argument( + "-s", "--sandbox", + help = "Is configuration being created for a sandbox", + dest = "sandbox", action = "store_true" + ) + return parser.parse_args() parsed_args = parse_arguments() path = (parsed_args.path) path = ("{}**/*.cfg".format(path)) - #sandbox switch section section_cloud = {} name_prefix = "prd" @@ -169,7 +188,9 @@ for filename in glob.iglob(path, recursive=True): # Global cloud config section for section in config_parser_merged.sections(): if section == "cloud": - final = (config.items(section)) + afinal = (config.items(section)) + name = parsed_args.name + final = (*afinal, ("cloud_name", name)) for index, _ in enumerate(final): @@ -213,7 +234,6 @@ for section in config_parser_merged.sections(): print(j2_template.render(section_all_machines)) - #Footer section j2_template = Template(footertemplate) print(j2_template.render(section_cloud))