gitlab CI: generate the template list from the config data
authorPeter Hutterer <peter.hutterer@who-t.net>
Sun, 23 Feb 2020 22:21:55 +0000 (08:21 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Sun, 23 Feb 2020 22:44:48 +0000 (08:44 +1000)
Only change in the actual gitlab CI file is that the sorting is now
alphabetical.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
.gitlab-ci.yml
.gitlab-ci/gitlab-ci.tmpl

index af506b9..cc90e2c 100644 (file)
 include:
   # Alpine container builder template
   - project: 'wayland/ci-templates'
+    ref: *template_sha
     file: '/templates/alpine.yml'
   # Arch container builder template
   - project: 'wayland/ci-templates'
     ref: *template_sha
     file: '/templates/arch.yml'
-  # Fedora container builder template
-  - project: 'wayland/ci-templates'
-    ref: *template_sha
-    file: '/templates/fedora.yml'
-  # Ubuntu container builder template
+  # Centos container builder template
   - project: 'wayland/ci-templates'
     ref: *template_sha
-    file: '/templates/ubuntu.yml'
+    file: '/templates/centos.yml'
   # Debian container builder template
   - project: 'wayland/ci-templates'
     ref: *template_sha
     file: '/templates/debian.yml'
-  # CentOS container builder template
+  # Fedora container builder template
   - project: 'wayland/ci-templates'
     ref: *template_sha
-    file: '/templates/centos.yml'
+    file: '/templates/fedora.yml'
+  # Ubuntu container builder template
+  - project: 'wayland/ci-templates'
+    ref: *template_sha
+    file: '/templates/ubuntu.yml'
 
 stages:
   - prep             # rebuild the container images if there is a change
index 99d7f3d..489c21c 100644 (file)
 .templates_sha: &template_sha b7030c2cd0d6ccc5f6d4f8299bafa4daa9240d71 # see https://docs.gitlab.com/ee/ci/yaml/#includefile
 
 include:
-  # Alpine container builder template
-  - project: 'wayland/ci-templates'
-    file: '/templates/alpine.yml'
-  # Arch container builder template
-  - project: 'wayland/ci-templates'
-    ref: *template_sha
-    file: '/templates/arch.yml'
-  # Fedora container builder template
-  - project: 'wayland/ci-templates'
-    ref: *template_sha
-    file: '/templates/fedora.yml'
-  # Ubuntu container builder template
-  - project: 'wayland/ci-templates'
-    ref: *template_sha
-    file: '/templates/ubuntu.yml'
-  # Debian container builder template
-  - project: 'wayland/ci-templates'
-    ref: *template_sha
-    file: '/templates/debian.yml'
-  # CentOS container builder template
+  {% for distribution in distributions|map(attribute='name')|unique()|sort() %}
+  # {{ distribution.capitalize() }} container builder template
   - project: 'wayland/ci-templates'
     ref: *template_sha
-    file: '/templates/centos.yml'
+    file: '/templates/{{distribution}}.yml'
+  {% endfor %}
 
 stages:
   - prep             # rebuild the container images if there is a change