From 5f92c67201c60162fee64c99f675efae8dde6732 Mon Sep 17 00:00:00 2001 From: Vitalii Koshura Date: Fri, 16 Feb 2024 00:43:51 +0100 Subject: [PATCH] Build linux packages for Debian 12 and Fedora 39 Signed-off-by: Vitalii Koshura --- .github/workflows/debrepo/aptly.bookworm.conf | 25 ++++++ .github/workflows/debrepo/package_depends.sh | 9 ++- .github/workflows/linux-package.yml | 32 +++----- .github/workflows/rpmrepo/package_filelist.sh | 81 ++++++++++++------- 4 files changed, 92 insertions(+), 55 deletions(-) create mode 100644 .github/workflows/debrepo/aptly.bookworm.conf diff --git a/.github/workflows/debrepo/aptly.bookworm.conf b/.github/workflows/debrepo/aptly.bookworm.conf new file mode 100644 index 0000000000..e7ab23364b --- /dev/null +++ b/.github/workflows/debrepo/aptly.bookworm.conf @@ -0,0 +1,25 @@ +{ + "rootDir": "http-data/bookworm", + "downloadConcurrency": 4, + "downloadSpeedLimit": 0, + "architectures": [], + "dependencyFollowSuggests": false, + "dependencyFollowRecommends": false, + "dependencyFollowAllVariants": false, + "dependencyFollowSource": false, + "dependencyVerboseResolve": false, + "gpgDisableSign": false, + "gpgDisableVerify": false, + "gpgProvider": "gpg1", + "downloadSourcePackages": false, + "skipLegacyPool": true, + "ppaDistributorID": "ubuntu", + "ppaCodename": "", + "FileSystemPublishEndpoints": {}, + "S3PublishEndpoints": {}, + "SwiftPublishEndpoints": {}, + "enableMetricsEndpoint": false, + "logLevel": "info", + "logFormat": "default", + "serveInAPIMode": false +} diff --git a/.github/workflows/debrepo/package_depends.sh b/.github/workflows/debrepo/package_depends.sh index b84de1f296..59f21bf16a 100755 --- a/.github/workflows/debrepo/package_depends.sh +++ b/.github/workflows/debrepo/package_depends.sh @@ -28,18 +28,21 @@ function exit_usage() { case "$1_$2" in # ubuntu distros -"jammy_linux_client") +"focal_linux_client") echo "libc6,libxss1 (>= 1.2.3)" ;; -"focal_linux_client") +"jammy_linux_client") echo "libc6,libxss1 (>= 1.2.3)" ;; # debian distros +"buster_linux_client") + echo "libc6,libxss1 (>= 1.2.3)" + ;; "bullseye_linux_client") echo "libc6,libxss1 (>= 1.2.3)" ;; -"buster_linux_client") +"bookworm_linux_client") echo "libc6,libxss1 (>= 1.2.3)" ;; diff --git a/.github/workflows/linux-package.yml b/.github/workflows/linux-package.yml index 8c3adbd923..82c72ae3f8 100644 --- a/.github/workflows/linux-package.yml +++ b/.github/workflows/linux-package.yml @@ -130,7 +130,7 @@ jobs: needs: prepare-binaries strategy: matrix: - os: [jammy, focal, bullseye, buster] + os: [focal, jammy, buster, bullseye, bookworm] type: [client, manager] fail-fast: false env: @@ -204,14 +204,14 @@ jobs: echo "------------------------" - name: Create Ubuntu Package - if: ${{ success() && ( matrix.os == 'jammy' || matrix.os == 'focal') }} + if: ${{ success() && ( matrix.os == 'focal' || matrix.os == 'jammy' ) }} run: | cd ${{ github.workspace }}/ # Build the actual package for Ubuntu with XZ compression dpkg-deb -Zxz --build "${{ github.workspace }}/${PKG_FULL}" - name: Create Debian Package - if: ${{ success() && ( matrix.os == 'bullseye' || matrix.os == 'buster') }} + if: ${{ success() && ( matrix.os == 'buster' || matrix.os == 'bullseye' || matrix.os == 'bookworm' ) }} run: | cd ${{ github.workspace }}/ # Build the actual package for Debian with GZIP compression @@ -238,7 +238,7 @@ jobs: needs: prepare-binaries strategy: matrix: - os: [fc38, fc37, suse15_5, suse15_4] + os: [fc37, fc38, fc39, suse15_4, suse15_5] type: [client, manager] fail-fast: false env: @@ -417,7 +417,7 @@ jobs: needs: build-deb-package strategy: matrix: - os: [bullseye, buster] + os: [buster, bullseye, bookworm] fail-fast: false steps: - uses: actions/checkout@v3 @@ -462,7 +462,7 @@ jobs: needs: build-deb-package strategy: matrix: - os: [jammy, focal] + os: [focal, jammy] fail-fast: false steps: - uses: actions/checkout@v3 @@ -507,7 +507,7 @@ jobs: needs: build-rpm-package strategy: matrix: - os: [37, 38] + os: [37, 38, 39] fail-fast: false steps: - uses: actions/checkout@v3 @@ -519,27 +519,17 @@ jobs: run: | dnf install -y python3 - - name: Get OS name - if: success() - run: | - if [[ "${{ matrix.os }}" == "37" ]]; then - OS="fc37" - elif [[ "${{ matrix.os }}" == "38" ]]; then - OS="fc38" - fi - echo "OS=${OS}" >> $GITHUB_ENV - - name: Download client if: success() uses: actions/download-artifact@v3 with: - name: linux-package_client_${{ env.OS }}_${{ github.event.pull_request.head.sha }} + name: linux-package_client_fc${{ matrix.OS }}_${{ github.event.pull_request.head.sha }} - name: Download manager if: success() uses: actions/download-artifact@v3 with: - name: linux-package_manager_${{ env.OS }}_${{ github.event.pull_request.head.sha }} + name: linux-package_manager_fc${{ matrix.OS }}_${{ github.event.pull_request.head.sha }} - name: Install client and manager if: success() @@ -612,7 +602,7 @@ jobs: needs: [test-debian-deb-package, test-ubuntu-deb-package] strategy: matrix: - os: [jammy, focal, bullseye, buster] + os: [focal, jammy, buster, bullseye, bookworm] fail-fast: false steps: - name: Check if build is running from origin repo @@ -705,7 +695,7 @@ jobs: needs: [test-fedora-rpm-package, test-opensuse-rpm-package] strategy: matrix: - os: [fc38, fc37, suse15_5, suse15_4] + os: [fc37, fc38, fc39, suse15_4, suse15_5] fail-fast: false env: ARCH: x86_64 diff --git a/.github/workflows/rpmrepo/package_filelist.sh b/.github/workflows/rpmrepo/package_filelist.sh index 434dd71d3b..82e8863af4 100755 --- a/.github/workflows/rpmrepo/package_filelist.sh +++ b/.github/workflows/rpmrepo/package_filelist.sh @@ -19,17 +19,6 @@ case "$1_$2" in # fedora variants -"fc38_linux_client") - echo """/etc/boinc-client/* -/etc/default/* -/etc/init.d/* -/etc/bash_completion.d/* -/var/lib/* -/usr/lib/systemd/system/* -/usr/bin/* -/usr/lib/* -""" - ;; "fc37_linux_client") echo """/etc/boinc-client/* /etc/default/* @@ -41,26 +30,7 @@ case "$1_$2" in /usr/lib/* """ ;; - -"fc38_linux_manager") - echo """/usr/bin/* -/usr/share/applications/* -/usr/share/boinc-manager/* -/usr/share/locale/boinc/* -/usr/share/icons/boinc -""" - ;; -"fc37_linux_manager") - echo """/usr/bin/* -/usr/share/applications/* -/usr/share/boinc-manager/* -/usr/share/locale/boinc/* -/usr/share/icons/boinc -""" - ;; - -# suse variants -"suse15_5_linux_client") +"fc38_linux_client") echo """/etc/boinc-client/* /etc/default/* /etc/init.d/* @@ -71,6 +41,44 @@ case "$1_$2" in /usr/lib/* """ ;; +"fc39_linux_client") + echo """/etc/boinc-client/* +/etc/default/* +/etc/init.d/* +/etc/bash_completion.d/* +/var/lib/* +/usr/lib/systemd/system/* +/usr/bin/* +/usr/lib/* +""" + ;; + +"fc37_linux_manager") + echo """/usr/bin/* +/usr/share/applications/* +/usr/share/boinc-manager/* +/usr/share/locale/boinc/* +/usr/share/icons/boinc +""" + ;; +"fc38_linux_manager") + echo """/usr/bin/* +/usr/share/applications/* +/usr/share/boinc-manager/* +/usr/share/locale/boinc/* +/usr/share/icons/boinc +""" + ;; +"fc39_linux_manager") + echo """/usr/bin/* +/usr/share/applications/* +/usr/share/boinc-manager/* +/usr/share/locale/boinc/* +/usr/share/icons/boinc +""" + ;; + +# suse variants "suse15_4_linux_client") echo """/etc/boinc-client/* /etc/default/* @@ -80,6 +88,17 @@ case "$1_$2" in /usr/lib/systemd/system/* /usr/bin/* /usr/lib/* +""" + ;; +"suse15_5_linux_client") + echo """/etc/boinc-client/* +/etc/default/* +/etc/init.d/* +/etc/bash_completion.d/* +/var/lib/* +/usr/lib/systemd/system/* +/usr/bin/* +/usr/lib/* """ ;;