diff --git a/.github/workflows/ipq807x.yaml b/.github/workflows/ipq807x.yaml new file mode 100644 index 00000000000000..57d5ed7fff983d --- /dev/null +++ b/.github/workflows/ipq807x.yaml @@ -0,0 +1,87 @@ +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: Remove packages + run: rm -rf bin/targets/ipq807x/generic/packages + + - name: TAR output + run: tar -cvf ipq807xx-images.tar bin/targets/ipq807x/generic + + - name: Upload artifacts + uses: actions/upload-artifact@v3 + 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@v3 + 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: "ncipollo/release-action@v1" + with: + name: "Updated prebuilt images ${{ env.NOW }}" + commit: "ipq807x-5.15-pr" + tag: "ipq807x-${{ env.NOW }}" + generateReleaseNotes: true + makeLatest: true + artifacts: bin/targets/ipq807x/generic/* \ No newline at end of file