]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
CI: Enabling build for Ubuntu 26.04
authorMaria Matejka <mq@ucw.cz>
Tue, 12 May 2026 21:31:06 +0000 (23:31 +0200)
committerMaria Matejka <mq@ucw.cz>
Wed, 13 May 2026 08:25:44 +0000 (10:25 +0200)
.gitlab-ci.yml
gitlab/data.yml.j2
gitlab/docker/ubuntu-26.04-amd64/Dockerfile [new file with mode: 0644]

index 4119c33c4a2c7fbe816f43af1219b82b14efac05..f1d6068478ece55d6a831e8731948aed8c24c54f 100644 (file)
@@ -78,6 +78,7 @@ spec:
       - ubuntu-24.04-amd64
       - ubuntu-25.04-amd64
       - ubuntu-25.10-amd64
+      - ubuntu-26.04-amd64
 
 ---
 
@@ -819,6 +820,19 @@ docker-ubuntu-25.10-amd64:
 
   <<: *docker-build
 
+docker-ubuntu-26.04-amd64:
+  variables:
+    IMG_NAME: "ubuntu-26.04-amd64"
+
+  rules:
+    # Only rebuild if explicitly requested
+  - if: '"$[[ inputs.docker-all ]]" == "true"'
+  - if: '"ubuntu-26.04-amd64" =~ /$[[ inputs.docker-regex ]]/'
+  - if: '"ubuntu-26.04-amd64" == "$[[ inputs.docker-one ]]"'
+  - when: never
+
+  <<: *docker-build
+
 
 #####################################################
 ## Linux distro build tests inside Docker builders ##
@@ -1407,6 +1421,59 @@ crossbuild-s390x-ubuntu-25.10-amd64:
     CROSSBUILD_ARCH: s390x
 
 
+build-ubuntu-26.04-amd64:
+  <<: *build-docker-linux-amd64
+  needs:
+    - job: docker-ubuntu-26.04-amd64
+      optional: true
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+
+crossbuild-arm64-ubuntu-26.04-amd64:
+  <<: *build-docker-linux-amd64
+  needs:
+    - job: docker-ubuntu-26.04-amd64
+      optional: true
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: arm64
+
+crossbuild-armhf-ubuntu-26.04-amd64:
+  <<: *build-docker-linux-amd64
+  needs:
+    - job: docker-ubuntu-26.04-amd64
+      optional: true
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: armhf
+
+crossbuild-ppc64el-ubuntu-26.04-amd64:
+  <<: *build-docker-linux-amd64
+  needs:
+    - job: docker-ubuntu-26.04-amd64
+      optional: true
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: ppc64el
+
+crossbuild-riscv64-ubuntu-26.04-amd64:
+  <<: *build-docker-linux-amd64
+  needs:
+    - job: docker-ubuntu-26.04-amd64
+      optional: true
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: riscv64
+
+crossbuild-s390x-ubuntu-26.04-amd64:
+  <<: *build-docker-linux-amd64
+  needs:
+    - job: docker-ubuntu-26.04-amd64
+      optional: true
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: s390x
+
+
 
 #######################################################
 ## A special task for preparing the release archives ##
@@ -2060,6 +2127,65 @@ crosspkg-s390x-ubuntu-25.10-amd64:
     CROSSBUILD_ARCH: s390x
 
 
+pkg-ubuntu-26.04-amd64:
+  <<: *pkg-deb
+  needs:
+    - job: build-ubuntu-26.04-amd64
+      artifacts: false
+    - job: build-release
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+
+crosspkg-arm64-ubuntu-26.04-amd64:
+  <<: *pkg-deb
+  needs:
+    - job: crossbuild-arm64-ubuntu-26.04-amd64
+      artifacts: false
+    - job: build-release
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: arm64
+
+crosspkg-armhf-ubuntu-26.04-amd64:
+  <<: *pkg-deb
+  needs:
+    - job: crossbuild-armhf-ubuntu-26.04-amd64
+      artifacts: false
+    - job: build-release
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: armhf
+
+crosspkg-ppc64el-ubuntu-26.04-amd64:
+  <<: *pkg-deb
+  needs:
+    - job: crossbuild-ppc64el-ubuntu-26.04-amd64
+      artifacts: false
+    - job: build-release
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: ppc64el
+
+crosspkg-riscv64-ubuntu-26.04-amd64:
+  <<: *pkg-deb
+  needs:
+    - job: crossbuild-riscv64-ubuntu-26.04-amd64
+      artifacts: false
+    - job: build-release
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: riscv64
+
+crosspkg-s390x-ubuntu-26.04-amd64:
+  <<: *pkg-deb
+  needs:
+    - job: crossbuild-s390x-ubuntu-26.04-amd64
+      artifacts: false
+    - job: build-release
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: s390x
+
+
 
 ## Package installability checks
 
@@ -2598,6 +2724,48 @@ crossinstall-s390x-ubuntu-25.10-amd64:
   variables:
     CROSSBUILD_ARCH: s390x
 
+install-ubuntu-26.04-amd64:
+  <<: *install-deb
+  needs:
+    - job: pkg-ubuntu-26.04-amd64
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+crossinstall-arm64-ubuntu-26.04-amd64:
+  <<: *install-deb
+  needs:
+    - job: crosspkg-arm64-ubuntu-26.04-amd64
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: arm64
+crossinstall-armhf-ubuntu-26.04-amd64:
+  <<: *install-deb
+  needs:
+    - job: crosspkg-armhf-ubuntu-26.04-amd64
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: armhf
+crossinstall-ppc64el-ubuntu-26.04-amd64:
+  <<: *install-deb
+  needs:
+    - job: crosspkg-ppc64el-ubuntu-26.04-amd64
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: ppc64el
+crossinstall-riscv64-ubuntu-26.04-amd64:
+  <<: *install-deb
+  needs:
+    - job: crosspkg-riscv64-ubuntu-26.04-amd64
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: riscv64
+crossinstall-s390x-ubuntu-26.04-amd64:
+  <<: *install-deb
+  needs:
+    - job: crosspkg-s390x-ubuntu-26.04-amd64
+  image: registry.nic.cz/labs/bird:ubuntu-26.04-amd64
+  variables:
+    CROSSBUILD_ARCH: s390x
+
 
 ###################################
 ## Non-linux build tests in QEMU ##
index 68d8c9ed38113301117401dcf3a80e80150b7fa8..166bb8c4836bf4a2ad069da60a301970e288c81c 100644 (file)
@@ -135,6 +135,7 @@ distros:
       ('24.04', ["arm64", "armhf", "ppc64el", "riscv64", "s390x"]),
       ('25.04', ["armhf", "ppc64el", "riscv64", "s390x"]),
       ('25.10', ["arm64", "armhf", "ppc64el", "riscv64", "s390x"]),
+      ('26.04', ["arm64", "armhf", "ppc64el", "riscv64", "s390x"]),
       ) -%}
   - name: ubuntu-{{ num }}-amd64
     type: deb
diff --git a/gitlab/docker/ubuntu-26.04-amd64/Dockerfile b/gitlab/docker/ubuntu-26.04-amd64/Dockerfile
new file mode 100644 (file)
index 0000000..7e6bc7c
--- /dev/null
@@ -0,0 +1,64 @@
+# Autogenerated Dockerfile for ubuntu-26.04-amd64.
+# Update data in gitlab/data.yml.j2 and gitlab/Dockerfile.j2
+# to change this file.
+# Request a manual pipeline to rebuild the image here:
+#     https://gitlab.nic.cz/labs/bird/-/pipelines/new
+FROM ubuntu:26.04
+ENV DEBIAN_FRONTEND=noninteractive
+RUN find /etc/apt/sourc* -type f -exec grep -nH '.*' '{}' +
+RUN dpkg --add-architecture arm64
+RUN dpkg --add-architecture armhf
+RUN dpkg --add-architecture ppc64el
+RUN dpkg --add-architecture riscv64
+RUN dpkg --add-architecture s390x
+RUN find /etc/apt/sourc* -type f -exec sed -i '/Components: /a\
+Architectures: amd64' '{}' +
+RUN find /etc/apt/sourc* -type f -exec sed 's#URIs: .*#URIs: http://ports.ubuntu.com/ubuntu-ports/#;s#Architectures: amd64#Architectures: arm64,armhf,ppc64el,riscv64,s390x#' '{}' + > /etc/apt/sources.list.d/crossbuild.sources
+RUN find /etc/apt/sourc* -type f -exec grep -nH '.*' '{}' +
+RUN apt-get -y update
+RUN apt-get -y upgrade
+RUN apt-get -y --no-install-recommends install \
+       tzdata \
+       build-essential \
+       flex \
+       bison \
+       autoconf \
+       ncurses-dev \
+       libreadline-dev \
+       libssh-dev \
+       crossbuild-essential-arm64 \
+       libreadline-dev:arm64 \
+       ncurses-dev:arm64 \
+       crossbuild-essential-armhf \
+       libreadline-dev:armhf \
+       ncurses-dev:armhf \
+       crossbuild-essential-ppc64el \
+       libreadline-dev:ppc64el \
+       ncurses-dev:ppc64el \
+       crossbuild-essential-riscv64 \
+       libreadline-dev:riscv64 \
+       ncurses-dev:riscv64 \
+       crossbuild-essential-s390x \
+       libreadline-dev:s390x \
+       ncurses-dev:s390x \
+       qemu-user \
+       qemu-user-binfmt \
+       binfmt-support \
+       linuxdoc-tools-latex \
+       texlive-latex-extra \
+       opensp \
+       docbook-xsl \
+       xsltproc \
+       adduser
+RUN apt-get -y --no-install-recommends install \
+       git \
+       dpkg-dev \
+       debhelper \
+       lsb-release \
+       apt-utils \
+       quilt \
+       python3 \
+       python3-pip \
+       python3-setuptools \
+       python3-venv
+RUN apt-get -y clean