From e3f3358420bfbd14bbbb820115e588cdc69e37e1 Mon Sep 17 00:00:00 2001 From: Pk11 Date: Sun, 9 Jan 2022 14:51:03 -0600 Subject: [PATCH] Build with Actions --- .github/workflows/build.yml | 55 +++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..e6b97c3 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,55 @@ +name: Build TMFN + +on: + push: + branches: ["*"] + paths-ignore: + - 'README.md' + pull_request: + branches: ["*"] + paths-ignore: + - 'README.md' + release: + types: [created] + +jobs: + build: + runs-on: ubuntu-latest + container: devkitpro/devkitarm + name: Build with Docker using devkitARM + steps: + - name: Checkout repo + uses: actions/checkout@v1 + - name: Build TMFN + run: make + - name: Publish build to GH Actions + uses: actions/upload-artifact@v2 + with: + path: "*.dsi" + name: build + + # Only run this for non-PR jobs. + publish_build: + runs-on: ubuntu-latest + name: Upload to release + if: ${{ success() && startsWith(github.ref, 'refs/tags') }} + needs: build + steps: + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: build + path: build + - name: + if: + run: | + ID=$(jq --raw-output '.release.id' $GITHUB_EVENT_PATH) + + for file in ${{ github.workspace }}/build/*; do + AUTH_HEADER="Authorization: token ${{ secrets.GITHUB_TOKEN }}" + CONTENT_LENGTH="Content-Length: $(stat -c%s $file)" + CONTENT_TYPE="Content-Type: application/7z-x-compressed" + UPLOAD_URL="https://uploads.github.com/repos/${{ github.repository }}/releases/$ID/assets?name=$(basename $file)" + + curl -XPOST -H "$AUTH_HEADER" -H "$CONTENT_LENGTH" -H "$CONTENT_TYPE" --upload-file "$file" "$UPLOAD_URL" + done