Update CI for latest dtk-template #1020
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build | |
| on: | |
| push: | |
| pull_request: | |
| jobs: | |
| build: | |
| # This is a *private* build container. | |
| # See docs/github_actions.md for more information. | |
| container: ghcr.io/bfbbdecomp/bfbb-build:main | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| # Add game versions here | |
| version: [GQPE78] | |
| steps: | |
| # Checkout the repository | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 2 | |
| submodules: recursive | |
| # Set Git config | |
| - name: Git config | |
| run: git config --global --add safe.directory "$GITHUB_WORKSPACE" | |
| # Copy the original files to the workspace | |
| - name: Prepare | |
| run: cp -R /orig . | |
| # Build the project | |
| - name: Build | |
| run: | | |
| python configure.py --map --version ${{ matrix.version }} \ | |
| --binutils /binutils --compilers /compilers | |
| ninja all_source build/${{ matrix.version }}/progress.json \ | |
| build/${{ matrix.version }}/report.json | |
| git log -1 --pretty='{"id": "%H", "email": "%ae", "time": "%ad", "message": "%s"}' \ | |
| --date=format:"%Y-%m-%dT%H:%M:%S" > build/${{ matrix.version }}/progress-commit.json | |
| # Upload progress if we're on the main branch | |
| - name: Upload progress | |
| # If you're using a different branch, change this to match | |
| if: github.ref == 'refs/heads/main' | |
| continue-on-error: true | |
| env: | |
| # Replace with your project slug | |
| PROGRESS_SLUG: bfbb | |
| # Set the API key in your repository secrets | |
| PROGRESS_API_KEY: ${{ secrets.PROGRESS_API_KEY }} | |
| run: | | |
| python tools/upload_progress.py -b https://progress.decomp.club/ \ | |
| -p $PROGRESS_SLUG -v ${{ matrix.version }} \ | |
| build/${{ matrix.version }}/progress.json | |
| # Upload map files | |
| - name: Upload map | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ matrix.version }}_maps | |
| path: build/${{ matrix.version }}/**/*.MAP | |
| # Upload progress report | |
| - name: Upload report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ matrix.version }}_report | |
| path: | | |
| build/${{ matrix.version }}/report.json | |
| build/${{ matrix.version }}/progress-commit.json | |
| # Generate report for previous commit | |
| - name: Generate previous report | |
| continue-on-error: true | |
| run: | | |
| git checkout HEAD^ | |
| ninja build/${{ matrix.version }}/report.json | |
| # Upload previous report | |
| - name: Upload previous report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: ${{ matrix.version }}_previous | |
| path: build/${{ matrix.version }}/report.json | |
| website: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| needs: build | |
| if: github.ref == 'refs/heads/main' | |
| steps: | |
| - name: Checkout website code | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: bfbbdecomp/website | |
| - name: Download Progress Artifacts | |
| uses: actions/download-artifact@v4 | |
| with: | |
| path: ./artifacts | |
| - name: Rename Artifacts | |
| run: | | |
| mv artifacts/GQPE78_report/report.json progress.json | |
| mv artifacts/GQPE78_report/progress-commit.json progress-commit.json | |
| mv artifacts/GQPE78_previous/report.json previous.json | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: "8.x.x" | |
| - name: Build Website | |
| env: | |
| DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} | |
| run: | | |
| python build.py | |
| - name: Deploy Website | |
| uses: JamesIves/github-pages-deploy-action@v4 | |
| with: | |
| branch: gh-pages | |
| folder: dist # The folder the action should deploy. | |
| clean: true | |
| single-commit: true | |
| - name: Commit Changes | |
| continue-on-error: true | |
| run: | | |
| git status | |
| git pull origin main | |
| git config --global user.name "BFBB Actions Bot" | |
| git config --global user.email "actions@github.com" | |
| git add . | |
| git commit -m "automated commit cache update" | |
| - name: Push changes | |
| uses: ad-m/github-push-action@master | |
| with: | |
| github_token: ${{ secrets.WEBSITE_TOKEN }} | |
| repository: bfbbdecomp/website | |
| branch: ${{ github.ref }} |