From b787aa9c8155a4e5ccd9c6fe2fd6b39a1876c1a6 Mon Sep 17 00:00:00 2001 From: Paul Spooren Date: Fri, 26 Jun 2020 23:14:55 -1000 Subject: [PATCH] CI: use GitHub action for Pull Requests Test all GitHub pull requests for multiple architectures and store build logs and created packages. This is the first commit of a series of patches to simplify the life of maintainers. Signed-off-by: Paul Spooren --- .github/workflows/multi-arch-test-build.yml | 59 +++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/multi-arch-test-build.yml diff --git a/.github/workflows/multi-arch-test-build.yml b/.github/workflows/multi-arch-test-build.yml new file mode 100644 index 0000000000..e69466d2f5 --- /dev/null +++ b/.github/workflows/multi-arch-test-build.yml @@ -0,0 +1,59 @@ +name: Test Build + +on: + pull_request: + branches: + - master + +jobs: + build: + name: ${{ matrix.arch }} build + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + arch: + - x86_64 + - mips_24kc + - arm_cortex-a9_neon + - arm_cortex-a9_vfpv3-d16 + - arc_arc700 + - aarch64_generic + - powerpc_464fp + - powerpc_8540 + + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Determine changed packages + run: | + PACKAGES="$(git diff --diff-filter=d --name-only origin/master \ + | grep 'Makefile$' | grep -Ev '/files/|/src/' \ + | awk -F/ '{ print $(NF-1) }' | tr '\n' ' ')" + + echo "Building $PACKAGES" + + echo "::set-env name=PACKAGES::$PACKAGES" + + - name: Build + uses: openwrt/gh-action-sdk@v1 + env: + ARCH: ${{ matrix.arch }} + BUILD_LOG: 1 + IGNORE_ERRORS: "" + V: s + + - name: Store packages + uses: actions/upload-artifact@v2 + with: + name: ${{ matrix.arch}}-packages + path: bin/packages/${{ matrix.arch }}/packages/*.ipk + + - name: Store logs + uses: actions/upload-artifact@v2 + with: + name: ${{ matrix.arch}}-logs + path: logs/ +