gitlab CI: generate the package lists from the config.yaml
authorPeter Hutterer <peter.hutterer@who-t.net>
Wed, 11 Nov 2020 05:07:34 +0000 (15:07 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Thu, 12 Nov 2020 00:51:20 +0000 (10:51 +1000)
The string list is getting too confusing.

This gets rid of the separate packageset for qemu. That packageset only
differed by adding valgrind, we can just keep that in the same list.

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

index d55716b..33f00be 100644 (file)
@@ -74,27 +74,26 @@ variables:
   # See the documentation here:                                                 #
   # https://wayland.freedesktop.org/libinput/doc/latest/building_libinput.html  #
   ###############################################################################
-  FEDORA_PACKAGES:    'git-core gcc gcc-c++ pkgconf-pkg-config meson check-devel libudev-devel libevdev-devel doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx_rtd_theme python3-pytest-xdist libwacom-devel cairo-devel   gtk3-devel   glib2-devel    mtdev-devel diffutils'
-  FEDORA_QEMU_RPMS:   'git-core gcc gcc-c++ pkgconf-pkg-config meson check-devel libudev-devel libevdev-devel doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx_rtd_theme python3-pytest-xdist libwacom-devel cairo-devel   gtk3-devel   glib2-devel    mtdev-devel diffutils valgrind'
-  DEBIAN_PACKAGES:    'git      gcc g++     pkg-config         meson check       libudev-dev   libevdev-dev   doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev   libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev'
-  UBUNTU_PACKAGES:    'git      gcc g++     pkg-config         meson check       libudev-dev   libevdev-dev   doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev   libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev'
-  ARCH_PACKAGES:      'git      gcc         pkgconfig          meson check       libsystemd    libevdev       doxygen graphviz python-sphinx  python-recommonmark  python-sphinx_rtd_theme  python-pytest-xdist  libwacom                     gtk3                        mtdev      diffutils'
-  ALPINE_PACKAGES:    'git      gcc build-base pkgconfig       meson check-dev   eudev-dev     libevdev-dev                                                                                 libwacom-dev   cairo-dev     gtk+3.0-dev  mtdev-dev bash'
+  FEDORA_PACKAGES:  'git-core gcc gcc-c++ pkgconf-pkg-config meson check-devel libudev-devel libevdev-devel doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx_rtd_theme python3-pytest-xdist libwacom-devel cairo-devel gtk3-devel glib2-devel mtdev-devel diffutils valgrind'
+  DEBIAN_PACKAGES:  'git gcc g++ pkg-config meson check libudev-dev libevdev-dev doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev'
+  UBUNTU_PACKAGES:  'git gcc g++ pkg-config meson check libudev-dev libevdev-dev doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev'
+  ARCH_PACKAGES:    'git gcc pkgconfig meson check libsystemd libevdev doxygen graphviz python-sphinx python-recommonmark python-sphinx_rtd_theme python-pytest-xdist libwacom gtk3 mtdev diffutils'
+  ALPINE_PACKAGES:  'git gcc build-base pkgconfig meson check-dev eudev-dev libevdev-dev libwacom-dev cairo-dev gtk+3.0-dev mtdev-dev bash'
+  FREEBSD_PACKAGES: 'libepoll-shim libudev-devd libevdev libwacom gtk3 libmtdev'
   FREEBSD_BUILD_PKGS: 'meson'
-  FREEBSD_PACKAGES:   'libepoll-shim                                        libudev-devd  libevdev                                                                                     libwacom                     gtk3                        libmtdev   '
   ############################ end of package lists #############################
 
   # these tags should be updated each time the list of packages is updated
   # changing these will force rebuilding the associated image
   # Note: these tags have no meaning and are not tied to a particular
   # libinput version
-  FEDORA_TAG:  '2020-11-12.0'
-  DEBIAN_TAG:  '2020-11-12.0'
-  UBUNTU_TAG:  '2020-11-12.0'
-  ARCH_TAG:    '2020-11-12.0'
-  ALPINE_TAG:  '2020-11-12.0'
-  FREEBSD_TAG: '2020-11-12.0'
-  QEMU_TAG:    'qemu-vm-2020-11-12.0'
+  FEDORA_TAG:  '2020-11-12.1'
+  DEBIAN_TAG:  '2020-11-12.1'
+  UBUNTU_TAG:  '2020-11-12.1'
+  ARCH_TAG:    '2020-11-12.1'
+  ALPINE_TAG:  '2020-11-12.1'
+  FREEBSD_TAG: '2020-11-12.1'
+  QEMU_TAG:    'qemu-vm-2020-11-12.1'
 
   FREEBSD_CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/freebsd/11.2:$FREEBSD_TAG
   FDO_UPSTREAM_REPO: libinput/libinput
@@ -203,7 +202,7 @@ fedora:32@qemu-prep:
     GIT_STRATEGY: none
     FDO_DISTRIBUTION_VERSION: 32
     FDO_DISTRIBUTION_TAG: $QEMU_TAG
-    FDO_DISTRIBUTION_PACKAGES: $FEDORA_QEMU_RPMS
+    FDO_DISTRIBUTION_PACKAGES: $FEDORA_PACKAGES
   allow_failure: true
 
 fedora:31@container-prep:
index 82fe932..100d635 100644 (file)
@@ -64,14 +64,10 @@ variables:
   # See the documentation here:                                                 #
   # https://wayland.freedesktop.org/libinput/doc/latest/building_libinput.html  #
   ###############################################################################
-  FEDORA_PACKAGES:    'git-core gcc gcc-c++ pkgconf-pkg-config meson check-devel libudev-devel libevdev-devel doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx_rtd_theme python3-pytest-xdist libwacom-devel cairo-devel   gtk3-devel   glib2-devel    mtdev-devel diffutils'
-  FEDORA_QEMU_RPMS:   'git-core gcc gcc-c++ pkgconf-pkg-config meson check-devel libudev-devel libevdev-devel doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx_rtd_theme python3-pytest-xdist libwacom-devel cairo-devel   gtk3-devel   glib2-devel    mtdev-devel diffutils valgrind'
-  DEBIAN_PACKAGES:    'git      gcc g++     pkg-config         meson check       libudev-dev   libevdev-dev   doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev   libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev'
-  UBUNTU_PACKAGES:    'git      gcc g++     pkg-config         meson check       libudev-dev   libevdev-dev   doxygen graphviz python3-sphinx python3-recommonmark python3-sphinx-rtd-theme python3-pytest-xdist libwacom-dev   libcairo2-dev libgtk-3-dev libglib2.0-dev libmtdev-dev'
-  ARCH_PACKAGES:      'git      gcc         pkgconfig          meson check       libsystemd    libevdev       doxygen graphviz python-sphinx  python-recommonmark  python-sphinx_rtd_theme  python-pytest-xdist  libwacom                     gtk3                        mtdev      diffutils'
-  ALPINE_PACKAGES:    'git      gcc build-base pkgconfig       meson check-dev   eudev-dev     libevdev-dev                                                                                 libwacom-dev   cairo-dev     gtk+3.0-dev  mtdev-dev bash'
+{% for distro in distributions %}
+  {{"%-17s" | format(distro.name.upper() + '_PACKAGES:')}} '{{ distro.packages|join(' ')}}'
+{% endfor %}
   FREEBSD_BUILD_PKGS: 'meson'
-  FREEBSD_PACKAGES:   'libepoll-shim                                        libudev-devd  libevdev                                                                                     libwacom                     gtk3                        libmtdev   '
   ############################ end of package lists #############################
 
   # these tags should be updated each time the list of packages is updated
@@ -197,7 +193,7 @@ check-merge-request:
     GIT_STRATEGY: none
     FDO_DISTRIBUTION_VERSION: {{version}}
     FDO_DISTRIBUTION_TAG: $QEMU_TAG
-    FDO_DISTRIBUTION_PACKAGES: ${{distro.name.upper()}}_QEMU_RPMS
+    FDO_DISTRIBUTION_PACKAGES: ${{distro.name.upper()}}_PACKAGES
   allow_failure: true
 {% endfor %}
 
index 465f095..c17f371 100644 (file)
@@ -3,7 +3,7 @@
 #
 
 # We're happy to rebuild all containers when one changes.
-.default_tag: &default_tag '2020-11-12.0'
+.default_tag: &default_tag '2020-11-12.1'
 
 distributions:
   - name: fedora
@@ -13,23 +13,116 @@ distributions:
       - '32'
     want_qemu: true
     use_for_custom_build_tests: true
+    packages:
+      - git-core
+      - gcc
+      - gcc-c++
+      - pkgconf-pkg-config
+      - meson
+      - check-devel
+      - libudev-devel
+      - libevdev-devel
+      - doxygen
+      - graphviz
+      - python3-sphinx
+      - python3-recommonmark
+      - python3-sphinx_rtd_theme
+      - python3-pytest-xdist
+      - libwacom-devel
+      - cairo-devel
+      - gtk3-devel
+      - glib2-devel
+      - mtdev-devel
+      - diffutils
+      - valgrind
   - name: debian
     tag: *default_tag
     versions:
       - 'stable'
+    packages:
+      - git
+      - gcc
+      - g++
+      - pkg-config
+      - meson
+      - check
+      - libudev-dev
+      - libevdev-dev
+      - doxygen
+      - graphviz
+      - python3-sphinx
+      - python3-recommonmark
+      - python3-sphinx-rtd-theme
+      - python3-pytest-xdist
+      - libwacom-dev
+      - libcairo2-dev
+      - libgtk-3-dev
+      - libglib2.0-dev
+      - libmtdev-dev
   - name: ubuntu
     tag: *default_tag
     versions:
       - '20.04'
       - '20.10'
+    packages:
+      - git
+      - gcc
+      - g++
+      - pkg-config
+      - meson
+      - check
+      - libudev-dev
+      - libevdev-dev
+      - doxygen
+      - graphviz
+      - python3-sphinx
+      - python3-recommonmark
+      - python3-sphinx-rtd-theme
+      - python3-pytest-xdist
+      - libwacom-dev
+      - libcairo2-dev
+      - libgtk-3-dev
+      - libglib2.0-dev
+      - libmtdev-dev
   - name: arch
     tag: *default_tag
     versions:
       - 'rolling'
+    packages:
+      - git
+      - gcc
+      - pkgconfig
+      - meson
+      - check
+      - libsystemd
+      - libevdev
+      - doxygen
+      - graphviz
+      - python-sphinx
+      - python-recommonmark
+      - python-sphinx_rtd_theme
+      - python-pytest-xdist
+      - libwacom
+      - gtk3
+      - mtdev
+      - diffutils
   - name: alpine
     tag: *default_tag
     versions:
       - 'latest'
+    packages:
+      - git
+      - gcc build-base
+      - pkgconfig
+      - meson
+      - check-dev
+      - eudev-dev
+      - libevdev-dev
+      - libwacom-dev
+      - cairo-dev
+      - gtk+3.0-dev
+      - mtdev-dev
+      - bash
     build:
       extra_variables:
         - "MESON_ARGS: '-Ddocumentation=false' # alpine does not have python-recommonmark"
@@ -39,6 +132,13 @@ distributions:
         - "MESON_TEST_ARGS: '' # litest-selftest fails on musl"
   - name: freebsd
     tag: *default_tag
+    packages:
+      - libepoll-shim
+      - libudev-devd
+      - libevdev
+      - libwacom
+      - gtk3
+      - libmtdev
     does_not_have_ci_templates: true
 
 test_suites: