Преглед изворни кода

fix(ci): split elixir package building into own step

Since the job step may run out of execution time, by separating the
Elixir build from the traditional one may prevent timeouts.
Thales Macedo Garitezi пре 4 година
родитељ
комит
fca0d2bfd8
1 измењених фајлова са 18 додато и 0 уклоњено
  1. 18 0
      .github/workflows/build_packages.yaml

+ 18 - 0
.github/workflows/build_packages.yaml

@@ -240,6 +240,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
@@ -341,6 +347,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: |
@@ -362,6 +369,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" \