HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //opt/cpanel/ea-ruby27/src/passenger-release-6.0.27/.github/workflows/rpm.yml
name: Passenger RPM packaging tests

env:
  FORCE_COLOR: 1
  RUST_LOG_STYLE: always

on:
  push: {}

jobs:
  define-matrix:
    runs-on: ubuntu-latest
    outputs:
      distros: ${{ steps.distros.outputs.distros }}
    steps:
      - uses: actions/checkout@v4
        with:
          submodules: true
      - name: Define Distros
        id: distros
        run: echo "distros=[$(awk -F= '/DEFAULT_DISTROS/{print $2}' packaging/rpm/internal/lib/distro_info.sh | sed -e 's/ /", "/g')]" >> "$GITHUB_OUTPUT"

  test:
    name: "Test ${{ matrix.distro }} ${{ matrix.arch.rpm_arch }} packages"
    needs: define-matrix
    strategy:
      fail-fast: false
      matrix:
        distro: ${{ fromJSON(needs.define-matrix.outputs.distros) }}
        arch:
          - rpm_arch: x86_64
            docker_arch: amd64
            runner: ubuntu-24.04
          - rpm_arch: aarch64
            docker_arch: arm64
            runner: ubuntu-24.04-arm
    runs-on: ${{ matrix.arch.runner }}
    steps:
      - uses: actions/checkout@v4
        with:
          submodules: true

      - run: mkdir work cache output
        working-directory: packaging/rpm

      - name: Determine test distribution name
        id: determine_test_distro
        run: |
          source packaging/rpm/internal/lib/distro_info.sh
          TEST_DISTRO_NAME=$(el_name_to_distro_name "$DISTRIBUTION")
          echo "name=$TEST_DISTRO_NAME" >> "$GITHUB_OUTPUT"
        env:
          DISTRIBUTION: ${{ matrix.distro }}

      - name: Fetch cache
        run: ./dev/ci/fetch-cache-az-blob-storage
        env:
          AZURE_STORAGE_CONNECTION_STRING: ${{ secrets.AZURE_CI_STORAGE_CONNECTION_STRING }}
          CONTAINER_NAME: ${{ vars.SCCACHE_AZURE_BLOB_CONTAINER }}
          BLOB_NAME: "binaries/rpm-cache-${{ matrix.distro }}-${{ matrix.arch.rpm_arch }}.tar.zstd"
          CACHE_PATH: packaging/rpm/cache
          SUDO: true

      - name: Build
        run: ./build -w work -c cache -o output -p "$WORKSPACE" -d "$DISTRIBUTION" -a "$RPM_ARCH" -A "$DOCKER_ARCH" -R rpm:all
        env:
          WORKSPACE: ${{ github.workspace }}
          DISTRIBUTION: ${{ matrix.distro }}
          RPM_ARCH: ${{ matrix.arch.rpm_arch }}
          DOCKER_ARCH: ${{ matrix.arch.docker_arch }}
        working-directory: packaging/rpm

      - name: Test
        run: >
          ./test
          -p "$WORKSPACE"
          -d "output/$DISTRIBUTION"
          -c cache
          -x "$TEST_DISTRO_NAME"
          -a "$RPM_ARCH"
          -A "$DOCKER_ARCH"
          -j
        env:
          WORKSPACE: ${{ github.workspace }}
          DISTRIBUTION: ${{ matrix.distro }}
          TEST_DISTRO_NAME: ${{ steps.determine_test_distro.outputs.name }}
          RPM_ARCH: ${{ matrix.arch.rpm_arch }}
          DOCKER_ARCH: ${{ matrix.arch.docker_arch }}
        working-directory: packaging/rpm

      - name: Update cache
        run: ./dev/ci/update-cache-az-blob-storage
        env:
          AZURE_STORAGE_CONNECTION_STRING: ${{ secrets.AZURE_CI_STORAGE_CONNECTION_STRING }}
          CONTAINER_NAME: ${{ vars.SCCACHE_AZURE_BLOB_CONTAINER }}
          BLOB_NAME: "binaries/rpm-cache-${{ matrix.distro }}-${{ matrix.arch.rpm_arch }}.tar.zstd"
          CACHE_PATH: packaging/rpm/cache
          SUDO: true

      - uses: actions/upload-artifact@v4
        with:
          name: rpm-${{ matrix.distro }}-${{ matrix.arch.rpm_arch }}
          path: 'packaging/rpm/output/${{ matrix.distro }}/*'