diff --git a/.github/workflows/build_packages.yaml b/.github/workflows/build_packages.yaml index c6e3db553..0e0395569 100644 --- a/.github/workflows/build_packages.yaml +++ b/.github/workflows/build_packages.yaml @@ -239,6 +239,12 @@ jobs: - 24.1.5-3 # we test with OTP 23, but only build package on OTP 24 versions elixir: - 1.13.1 + # used to split elixir packages into a separate job, since the + # entire job may take a lot of time, especially on arm64 + # emulation + build_elixir: + - with_elixir + - no_elixir arch: - amd64 - arm64 @@ -336,6 +342,7 @@ jobs: PROFILE: ${{ matrix.profile }} ARCH: ${{ matrix.arch }} SYSTEM: ${{ matrix.os }} + if: ${{ matrix.build_elixir == 'no_elixir' }} working-directory: source # FIXME: use tagged version once merged run: | @@ -357,6 +364,17 @@ jobs: --system "${SYSTEM}" \ --builder "ghcr.io/emqx/emqx-builder/elixir:${ELIXIR}-${OTP}-${SYSTEM}" + - name: build emqx packages (Elixir) + env: + OTP: ${{ matrix.otp }} + ELIXIR: ${{ matrix.elixir }} + PROFILE: ${{ matrix.profile }} + ARCH: ${{ matrix.arch }} + SYSTEM: ${{ matrix.os }} + working-directory: source + if: ${{ matrix.build_elixir == 'with_elixir' }} + # FIXME: use tagged version once merged + run: | ./scripts/buildx.sh \ --profile "${PROFILE}" \ --pkgtype "elixirpkg" \