diff --git a/.github/workflows/reusable_build_packages.yaml b/.github/workflows/reusable_build_packages.yaml index 5b818b6de22..00eee198dc7 100644 --- a/.github/workflows/reusable_build_packages.yaml +++ b/.github/workflows/reusable_build_packages.yaml @@ -119,9 +119,7 @@ jobs: ${{ github.workspace }}/build/falco-*.rpm build-musl-package: - # x86_64 only for now - if: ${{ inputs.arch == 'x86_64' }} - runs-on: ubuntu-latest + runs-on: ${{ (inputs.arch == 'aarch64' && 'actuated-arm64-8cpu-16gb') || 'ubuntu-latest' }} container: alpine:3.17 steps: # Always install deps before invoking checkout action, to properly perform a full clone. @@ -152,14 +150,14 @@ jobs: - name: Rename static package run: | cd build - mv falco-${{ inputs.version }}-x86_64.tar.gz falco-${{ inputs.version }}-static-x86_64.tar.gz + mv falco-${{ inputs.version }}-${{ inputs.arch }}.tar.gz falco-${{ inputs.version }}-static-${{ inputs.arch }}.tar.gz - name: Upload Falco static package uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3 with: - name: falco-${{ inputs.version }}-static-x86_64.tar.gz + name: falco-${{ inputs.version }}-static-${{ inputs.arch }}.tar.gz path: | - ${{ github.workspace }}/build/falco-${{ inputs.version }}-static-x86_64.tar.gz + ${{ github.workspace }}/build/falco-${{ inputs.version }}-static-${{ inputs.arch }}.tar.gz build-wasm-package: if: ${{ inputs.arch == 'x86_64' }} diff --git a/.github/workflows/reusable_publish_packages.yaml b/.github/workflows/reusable_publish_packages.yaml index 530e5dd8418..4efb7c0b2a9 100644 --- a/.github/workflows/reusable_publish_packages.yaml +++ b/.github/workflows/reusable_publish_packages.yaml @@ -70,8 +70,14 @@ jobs: with: name: falco-${{ inputs.version }}-static-x86_64.tar.gz path: /tmp/falco-build-bin-static - - - name: Import gpg key + + - name: Download static binary aarch64 + uses: actions/download-artifact@v3 + with: + name: falco-${{ inputs.version }}-static-aarch64.tar.gz + path: /tmp/falco-build-bin-static + + - name: Import gpg key env: GPG_KEY: ${{ secrets.GPG_KEY }} run: printenv GPG_KEY | gpg --import - @@ -93,6 +99,7 @@ jobs: - name: Publish static run: | ./scripts/publish-bin -f /tmp/falco-build-bin-static/falco-${{ inputs.version }}-static-x86_64.tar.gz -r bin${{ inputs.bucket_suffix }} -a x86_64 + ./scripts/publish-bin -f /tmp/falco-build-bin-static/falco-${{ inputs.version }}-static-aarch64.tar.gz -r bin${{ inputs.bucket_suffix }} -a aarch64 publish-packages-deb: runs-on: ubuntu-latest diff --git a/.github/workflows/reusable_test_packages.yaml b/.github/workflows/reusable_test_packages.yaml index 978bdaaf9d1..68831370875 100644 --- a/.github/workflows/reusable_test_packages.yaml +++ b/.github/workflows/reusable_test_packages.yaml @@ -44,9 +44,7 @@ jobs: cd falco-${{ inputs.version }}-${{ inputs.arch }} sudo cp -r * / - # x86_64 job run on ubuntu-22.04 and here we can install kernel-headers - - name: Install dependencies for falco-driver-loader tests on x86 - if: ${{ inputs.arch == 'x86_64' }} + - name: Install dependencies for falco-driver-loader tests run: | sudo apt update -y sudo apt install -y --no-install-recommends build-essential clang make llvm gcc dkms linux-headers-$(uname -r) @@ -63,9 +61,6 @@ jobs: go generate ./... popd - # Right now we are not able to install kernel-headers on our ARM64 self-hosted runner. - # For this reason, we disable the falco-driver-loader tests, which require kernel headers on the host. - # TODO: check if it's possible to do so in actuated runners - name: Run regression tests env: # fixme(leogr): this is a workaround for https://github.com/falcosecurity/falco/issues/2784 @@ -76,9 +71,7 @@ jobs: if ${{ inputs.static && 'false' || 'true' }}; then ./build/falcoctl.test -test.timeout=90s -test.v >> ./report.txt 2>&1 || true ./build/k8saudit.test -test.timeout=90s -test.v >> ./report.txt 2>&1 || true - if ${{ inputs.arch == 'x86_64' && 'true' || 'false' }}; then - sudo ./build/falco-driver-loader.test -test.timeout=90s -test.v >> ./report.txt 2>&1 || true - fi + sudo ./build/falco-driver-loader.test -test.timeout=90s -test.v >> ./report.txt 2>&1 || true fi cat ./report.txt | go-junit-report -set-exit-code > report.xml popd