iris: Stop advertising PIPE_SHADER_IR_NIR_SERIALIZED
[mesa.git] / .gitlab-ci / generate_lava.py
index a556294fbf1dc9b86ad5ad3876c38e340ae9e60c..66b898841f4439b58ac8edc42f79b4df9fb427df 100755 (executable)
@@ -2,57 +2,48 @@
 
 from jinja2 import Environment, FileSystemLoader
 import argparse
-
-device_types = {
-    "rk3288-veyron-jaq": {
-        "gpu_version": "panfrost-t760",
-        "boot_method": "depthcharge",
-        "lava_device_type": "rk3288-veyron-jaq",
-        "kernel_image_type": "",
-    },
-    "rk3399-gru-kevin": {
-        "gpu_version": "panfrost-t860",
-        "boot_method": "depthcharge",
-        "lava_device_type": "rk3399-gru-kevin",
-        "kernel_image_type": "",
-    },
-    "sun8i-h3-libretech-all-h3-cc": {
-        "gpu_version": "lima",
-        "boot_method": "u-boot",
-        "lava_device_type": "sun8i-h3-libretech-all-h3-cc",
-        "kernel_image_type": "type: zimage",
-    },
-    "meson-gxl-s905x-libretech-cc": {
-        "gpu_version": "lima",
-        "boot_method": "u-boot",
-        "lava_device_type": "meson-gxl-s905x-libretech-cc",
-        "kernel_image_type": "type: image",
-    },
-}
+import os
+import datetime
 
 parser = argparse.ArgumentParser()
 parser.add_argument("--template")
+parser.add_argument("--pipeline-info")
 parser.add_argument("--base-artifacts-url")
-parser.add_argument("--arch")
-parser.add_argument("--device-types", nargs="+")
+parser.add_argument("--mesa-url")
+parser.add_argument("--device-type")
+parser.add_argument("--dtb", nargs='?', default="")
 parser.add_argument("--kernel-image-name")
+parser.add_argument("--kernel-image-type", nargs='?', default="")
+parser.add_argument("--gpu-version")
+parser.add_argument("--boot-method")
+parser.add_argument("--lava-tags", nargs='?', default="")
+parser.add_argument("--env-vars", nargs='?', default="")
+parser.add_argument("--deqp-version")
+parser.add_argument("--ci-node-index")
+parser.add_argument("--ci-node-total")
+parser.add_argument("--job-type")
 args = parser.parse_args()
 
-env = Environment(loader = FileSystemLoader('.'), trim_blocks=True, lstrip_blocks=True)
-template = env.get_template(args.template)
+env = Environment(loader = FileSystemLoader(os.path.dirname(args.template)), trim_blocks=True, lstrip_blocks=True)
+template = env.get_template(os.path.basename(args.template))
+
+env_vars = "%s CI_NODE_INDEX=%s CI_NODE_TOTAL=%s" % (args.env_vars, args.ci_node_index, args.ci_node_total)
 
-for device_type in args.device_types:
-    values = {}
-    values['base_artifacts_url'] = args.base_artifacts_url
-    values['arch'] = args.arch
-    values['device_type'] = device_type
-    values['kernel_image_name'] = args.kernel_image_name
-    values['lava_device_type'] = device_types[device_type]['lava_device_type']
-    values['gpu_version'] = device_types[device_type]['gpu_version']
-    values['boot_method'] = device_types[device_type]['boot_method']
-    values['kernel_image_type'] = device_types[device_type]['kernel_image_type']
+values = {}
+values['pipeline_info'] = args.pipeline_info
+values['base_artifacts_url'] = args.base_artifacts_url
+values['mesa_url'] = args.mesa_url
+values['device_type'] = args.device_type
+values['dtb'] = args.dtb
+values['kernel_image_name'] = args.kernel_image_name
+values['kernel_image_type'] = args.kernel_image_type
+values['gpu_version'] = args.gpu_version
+values['boot_method'] = args.boot_method
+values['tags'] = args.lava_tags
+values['env_vars'] = env_vars
+values['deqp_version'] = args.deqp_version
 
-    f = open('results/lava-deqp-%s.yml' % device_type, "w")
-    f.write(template.render(values))
-    f.close()
+f = open(os.path.splitext(os.path.basename(args.template))[0], "w")
+f.write(template.render(values))
+f.close()