name: "youtubeUnblock build test" on: push: branches: - main paths-ignore: - '.editorconfig' - '.gitignore' - 'LICENSE' - 'README.md' workflow_dispatch: pull_request: jobs: prepare: runs-on: ubuntu-latest outputs: version: ${{ steps.gh.outputs.version }} sha: ${{ steps.gh.outputs.sha }} steps: - name: Checkout uses: actions/checkout@v4 with: ref: 'openwrt' - name: GH id: gh env: REPO: ${{ github.repository }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} shell: bash run: | echo "version=$(cat youtubeUnblock/Makefile | grep PKG_VERSION | sed 's/PKG_VERSION:=//')" >> $GITHUB_OUTPUT if [[ "${{ github.event_name }}" != "pull_request" ]]; then echo "sha=$(echo ${GITHUB_SHA::7})" >> $GITHUB_OUTPUT else echo "sha=$(gh api repos/$REPO/commits/main --jq '.sha[:7]')" >> $GITHUB_OUTPUT fi build-static: needs: prepare name: build-static ${{ matrix.arch }} runs-on: ubuntu-latest strategy: matrix: arch: [x86_64] branch: [latest-stable] steps: - name: Checkout uses: actions/checkout@v4 - name: Build id: build env: ARCH: ${{ matrix.arch }} VERSION: ${{ needs.prepare.outputs.version }} SHA: ${{ needs.prepare.outputs.sha }} shell: bash run: | make -j$(nproc) strip -s build/youtubeUnblock cp -va build/youtubeUnblock . tar -czvf static-youtubeUnblock-$VERSION-$SHA-$PLATFORM.tar.gz youtubeUnblock youtubeUnblock.service README.md - name: Upload artifacts if: steps.build.outcome == 'success' uses: actions/upload-artifact@v4 with: name: static-youtubeUnblock-${{ matrix.arch }} path: ./**/static-youtubeUnblock*.tar.gz build-kmod: needs: prepare name: build-kmod ${{ matrix.kernel_version }} runs-on: ubuntu-latest strategy: matrix: kernel_version: - 6.6.52 - 5.15.167 - 5.4.284 - 4.19.322 - 4.4.302 - 3.10.108 - 3.0.101 steps: - name: Checkout uses: actions/checkout@v4 - name: Build kernel module id: build env: VERSION: ${{ needs.prepare.outputs.version }} SHA: ${{ needs.prepare.outputs.sha }} shell: bash run: | docker run --rm -v ./:/youtubeUnblock -w /youtubeUnblock waujito/kernel-bins:${{ matrix.kernel_version }} make kmake KERNEL_BUILDER_MAKEDIR:=/linux tar -czvf kmod-youtubeUnblock-$VERSION-$SHA-linux-${{ matrix.kernel_version }}.tar.gz kyoutubeUnblock.ko - name: Upload artifacts if: steps.build.outcome == 'success' uses: actions/upload-artifact@v4 with: name: kmod-youtubeUnblock-linux-${{ matrix.kernel_version }} path: ./**/kmod-youtubeUnblock*.tar.gz