From 302893d4f2948a64f259ea40eff900a60113dd86 Mon Sep 17 00:00:00 2001 From: Robert Marko Date: Thu, 19 May 2022 23:24:29 +0200 Subject: [PATCH] CI: add PR focused workflow Add workflow that will build the branch that is aimed at finally making a PR to get the target into OpenWrt. Signed-off-by: Robert Marko --- .github/workflows/ipq807x.yaml | 84 ++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 .github/workflows/ipq807x.yaml diff --git a/.github/workflows/ipq807x.yaml b/.github/workflows/ipq807x.yaml new file mode 100644 index 00000000000000..14268073eb98f7 --- /dev/null +++ b/.github/workflows/ipq807x.yaml @@ -0,0 +1,84 @@ +name: Build IPQ807x +on: [push] + +jobs: + build: + name: Prepare and build IPQ807x generic images + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Update and install feeds + run: | + ./scripts/feeds update -a + ./scripts/feeds install -a + + - name: Generate config for IPQ807x Generic + run: | + echo "CONFIG_TARGET_ipq807x=y" > .config + echo "CONFIG_TARGET_ipq807x_generic=y\n" >> .config + echo "CONFIG_TARGET_MULTI_PROFILE=y\n" >> .config + echo "CONFIG_TARGET_ALL_PROFILES=y\n" >> .config + echo "CONFIG_TARGET_PER_DEVICE_ROOTFS=y\n" >> .config + echo "CONFIG_TARGET_ROOTFS_INITRAMFS=y\n" >> .config + echo "CONFIG_TARGET_INITRAMFS_COMPRESSION_ZSTD=y\n" >> .config + echo "CONFIG_PACKAGE_luci=y\n" >> .config + echo "CONFIG_PACKAGE_wpad-basic-wolfssl=m\n" >> .config + echo "CONFIG_PACKAGE_wpad-wolfssl=y\n" >> .config + make defconfig + + - name: Download package sources + run: make download V=s + + - name: Build tools + run: | + make tools/install -j$(nproc) V=s || \ + make tools/install V=s + + - name: Build toolchain + run: | + make toolchain/install -j$(nproc) V=s || \ + make toolchain/install V=s + + - name: Build target images + run: | + make -j$(nproc) V=s || \ + make V=s + + - name: TAR output + run: tar -cvf ipq807xx-images.tar bin/targets/ipq807x/generic + + - name: Upload artifacts + uses: actions/upload-artifact@v2 + with: + name: ipq807x-images + path: ipq807xx-images.tar + + release: + name: Make a release + runs-on: ubuntu-latest + needs: build + + steps: + - name: Download the image artifacts + uses: actions/download-artifact@v2 + with: + name: ipq807x-images + + - name: Extract the image artifacts + run: tar xf ipq807xx-images.tar + + - name: Get the current date + run: echo "NOW=$(date +%F-%H%M)" >> $GITHUB_ENV + + - name: Create a release + uses: "lauravuo/action-automatic-releases@test-changes" + with: + repo_token: "${{ secrets.GITHUB_TOKEN }}" + prerelease: true + title: "Updated prebuilt images ${{ env.NOW }}" + automatic_release_tag: "ipq807x-${{ env.NOW }}" + auto_generate_release_notes: true + files: bin/targets/ipq807x/generic/* \ No newline at end of file