From 4e521791369cf9d57b1ab86ff5ef3e76932b9709 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Wed, 8 Jan 2025 12:15:14 +0100 Subject: [PATCH 1/5] GHA: Amazon Linux: fix broken link to Boost tarball --- .github/workflows/linux.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linux.bash b/.github/workflows/linux.bash index 51b978f5c..c6db5539d 100755 --- a/.github/workflows/linux.bash +++ b/.github/workflows/linux.bash @@ -13,7 +13,7 @@ case "$DISTRO" in {libedit,mariadb,ncurses,openssl,postgresql,systemd}-devel yum install -y bzip2 tar wget - wget https://boostorg.jfrog.io/artifactory/main/release/1.69.0/source/boost_1_69_0.tar.bz2 + wget https://archives.boost.io/release/1.69.0/source/boost_1_69_0.tar.bz2 tar -xjf boost_1_69_0.tar.bz2 ( From 5b90b85c81cb1ce2cc65c1ee209da81c2195a69c Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Wed, 8 Jan 2025 12:15:17 +0100 Subject: [PATCH 2/5] GHA: drop EOL SLES 12.5 --- .github/workflows/rpm.yml | 116 -------------------------------------- 1 file changed, 116 deletions(-) delete mode 100644 .github/workflows/rpm.yml diff --git a/.github/workflows/rpm.yml b/.github/workflows/rpm.yml deleted file mode 100644 index 5cf8b10b0..000000000 --- a/.github/workflows/rpm.yml +++ /dev/null @@ -1,116 +0,0 @@ -name: .rpm - -on: - push: - branches: - - master - - 'support/*' - pull_request: {} - -concurrency: - group: rpm-${{ github.event_name == 'push' && github.sha || github.ref }} - cancel-in-progress: true - -jobs: - rpm: - name: .rpm (${{ matrix.distro.name }}, ${{ matrix.distro.release }}) - - strategy: - fail-fast: false - max-parallel: 1 - matrix: - distro: - - name: sles - release: '12.5' - subscription: true - - runs-on: ubuntu-latest - - steps: - - name: Vars - id: vars - env: - GITLAB_RO_TOKEN: '${{ secrets.GITLAB_RO_TOKEN }}' - run: | - if [ ${{ matrix.distro.subscription }} = true ]; then - if [ "$(tr -d '\n' <<<"$GITLAB_RO_TOKEN" |wc -c)" -eq 0 ]; then - echo '::set-output name=CAN_BUILD::false' - echo '::set-output name=NEED_LOGIN::false' - else - echo '::set-output name=CAN_BUILD::true' - echo '::set-output name=NEED_LOGIN::true' - fi - else - echo '::set-output name=CAN_BUILD::true' - echo '::set-output name=NEED_LOGIN::false' - fi - - - name: Checkout HEAD - if: "steps.vars.outputs.CAN_BUILD == 'true'" - uses: actions/checkout@v1 - - - name: Login - if: "steps.vars.outputs.NEED_LOGIN == 'true'" - env: - GITLAB_RO_TOKEN: '${{ secrets.GITLAB_RO_TOKEN }}' - run: | - docker login registry.icinga.com -u github-actions --password-stdin <<<"$GITLAB_RO_TOKEN" - - - name: rpm-icinga2 - if: "steps.vars.outputs.CAN_BUILD == 'true' && !matrix.distro.subscription" - run: | - set -exo pipefail - git clone https://git.icinga.com/packaging/rpm-icinga2.git - chmod o+w rpm-icinga2 - - - name: subscription-rpm-icinga2 - if: "steps.vars.outputs.CAN_BUILD == 'true' && matrix.distro.subscription" - env: - GITLAB_RO_TOKEN: '${{ secrets.GITLAB_RO_TOKEN }}' - run: | - set -exo pipefail - git config --global credential.helper store - cat <~/.git-credentials - https://github-actions:${GITLAB_RO_TOKEN}@git.icinga.com - EOF - git clone https://git.icinga.com/packaging/subscription-rpm-icinga2.git rpm-icinga2 - chmod o+w rpm-icinga2 - - - name: Restore/backup ccache - if: "steps.vars.outputs.CAN_BUILD == 'true'" - id: ccache - uses: actions/cache@v1 - with: - path: rpm-icinga2/ccache - key: |- - ${{ matrix.distro.name }}/${{ matrix.distro.release }}-ccache-${{ hashFiles('rpm-icinga2/ccache') }} - - - name: Binary - if: "steps.vars.outputs.CAN_BUILD == 'true'" - run: | - set -exo pipefail - git checkout -B master - if [ -e rpm-icinga2/ccache ]; then - chmod -R o+w rpm-icinga2/ccache - fi - docker run --rm \ - -v "$(pwd)/rpm-icinga2:/rpm-icinga2" \ - -v "$(pwd)/.git:/icinga2.git:ro" \ - -w /rpm-icinga2 \ - -e ICINGA_BUILD_PROJECT=icinga2 \ - -e ICINGA_BUILD_TYPE=snapshot \ - -e UPSTREAM_GIT_URL=file:///icinga2.git \ - registry.icinga.com/build-docker/${{ matrix.distro.name }}/${{ matrix.distro.release }} \ - icinga-build-package - - - name: Test - if: "steps.vars.outputs.CAN_BUILD == 'true'" - run: | - set -exo pipefail - docker run --rm \ - -v "$(pwd)/rpm-icinga2:/rpm-icinga2" \ - -w /rpm-icinga2 \ - -e ICINGA_BUILD_PROJECT=icinga2 \ - -e ICINGA_BUILD_TYPE=snapshot \ - registry.icinga.com/build-docker/${{ matrix.distro.name }}/${{ matrix.distro.release }} \ - icinga-build-test From 07aec810542976d8577074e24208ce3758673ac6 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Wed, 8 Jan 2025 12:15:18 +0100 Subject: [PATCH 3/5] GHA: drop EOL SLES 15.3 --- .github/workflows/linux.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 039c460d3..3aadf2e4d 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -37,7 +37,6 @@ jobs: # As openSUSE is much easier to deploy, we test it despite the fact that we don't necessarily # support individual versions of openSUSE as long as their SLES counterparts. # I.e., remove any opensuse/leap:* line below only if we stopped packaging both openSUSE and SLES! - - opensuse/leap:15.3 - opensuse/leap:15.4 - opensuse/leap:15.5 - opensuse/leap:15.6 From bba2e1a84ec0ba6d7066b2f921fb7b1ccff59318 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Wed, 8 Jan 2025 12:15:18 +0100 Subject: [PATCH 4/5] GHA: drop EOL SUSE 15.4 --- .github/workflows/linux.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 3aadf2e4d..4d5454830 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -37,7 +37,6 @@ jobs: # As openSUSE is much easier to deploy, we test it despite the fact that we don't necessarily # support individual versions of openSUSE as long as their SLES counterparts. # I.e., remove any opensuse/leap:* line below only if we stopped packaging both openSUSE and SLES! - - opensuse/leap:15.4 - opensuse/leap:15.5 - opensuse/leap:15.6 From 2e8258dfe738232ec9bd0a52c8f53f8cfb1e4f98 Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Wed, 8 Jan 2025 12:15:19 +0100 Subject: [PATCH 5/5] GHA: also test SLES, not just openSUSE They may be similar, but SLES isn't that hard to deploy. --- .github/workflows/linux.bash | 2 +- .github/workflows/linux.yml | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/linux.bash b/.github/workflows/linux.bash index c6db5539d..f493633ef 100755 --- a/.github/workflows/linux.bash +++ b/.github/workflows/linux.bash @@ -44,7 +44,7 @@ case "$DISTRO" in {boost,libedit,mariadb,ncurses,openssl,postgresql,systemd}-devel ;; - opensuse/*) + *suse*) zypper in -y bison ccache cmake flex gcc-c++ ninja {lib{edit,mariadb,openssl},ncurses,postgresql,systemd}-devel \ libboost_{context,coroutine,filesystem,iostreams,program_options,regex,system,test,thread}-devel ;; diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 4d5454830..1b1b1ac89 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -33,10 +33,6 @@ jobs: - fedora:40 - fedora:41 - # openSUSE Leap is close enough to SLES to test just one of them. - # As openSUSE is much easier to deploy, we test it despite the fact that we don't necessarily - # support individual versions of openSUSE as long as their SLES counterparts. - # I.e., remove any opensuse/leap:* line below only if we stopped packaging both openSUSE and SLES! - opensuse/leap:15.5 - opensuse/leap:15.6 @@ -45,6 +41,9 @@ jobs: - rockylinux:8 - rockylinux:9 + - registry.suse.com/suse/sle15:15.5 + - registry.suse.com/suse/sle15:15.6 + - ubuntu:20.04 - ubuntu:22.04 - ubuntu:24.04