Ds staging fixes (#1386) #1738
This file contains 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 Engine | |
on: | |
push: | |
branches: [ master ] | |
paths: | |
- 'engines/**' | |
jobs: | |
findengine: | |
runs-on: ubuntu-latest | |
outputs: | |
engine: ${{ steps.findname.outputs.engine }} | |
container: ${{ steps.findname.outputs.container }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Find Engine Name | |
id: findname | |
uses: luxtorpeda-dev/action-build-get-engine-name@master | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
build: | |
runs-on: ubuntu-latest | |
needs: findengine | |
outputs: | |
app_ids: ${{env.APP_IDS }} | |
container: | |
image: ${{ needs.findengine.outputs.container }} | |
volumes: | |
- /usr/share/dotnet:/gh/dotnet | |
- /opt/ghc:/gh/ghc | |
- /usr/local/share/boost:/gh/boost | |
- /usr/local/lib/android:/gh/android | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Cleanup GH Environment | |
run: | | |
sudo rm -rf /gh/dotnet/* | |
sudo rm -rf /gh/ghc/* | |
sudo rm -rf /gh/boost/* | |
sudo rm -rf /gh/android/* | |
df -h | |
- name: Build | |
run: ./common/start_build.sh ${{needs.findengine.outputs.engine}} | |
- name: Package | |
run: ./common/package.sh ${{needs.findengine.outputs.engine}} | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: dist | |
path: ./dist | |
finddeploy: | |
needs: [build, findengine] | |
runs-on: ubuntu-latest | |
outputs: | |
matrix: ${{ steps.matrix.outputs.matrix }} | |
build_number: ${{ steps.buildnumber.outputs.build_number }} | |
steps: | |
- name: Download Artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: dist | |
- name: Generate Matrix | |
id: matrix | |
uses: luxtorpeda-dev/action-build-generate-file-matrix@master | |
with: | |
name: ${{needs.findengine.outputs.engine}} | |
- name: Generate build number | |
id: buildnumber | |
uses: onyxmueller/build-tag-number@v1 | |
with: | |
token: ${{ secrets.github_token }} | |
prefix: ${{needs.findengine.outputs.engine}} | |
- name: Create Release | |
uses: softprops/action-gh-release@v2.0.8 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag_name: ${{ needs.findengine.outputs.engine }}-${{ steps.buildnumber.outputs.build_number }} | |
name: ${{ needs.findengine.outputs.engine }} Version ${{ steps.buildnumber.outputs.build_number }} | |
draft: false | |
prerelease: false | |
generate_release_notes: true | |
deploy: | |
needs: [finddeploy, findengine] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: ${{fromJson(needs.finddeploy.outputs.matrix)}} | |
steps: | |
- name: Download Artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: dist | |
- name: Rename Artifact for Release Prep | |
run: mv "${{needs.findengine.outputs.engine}}/${{ matrix.name }}${{ matrix.extension }}" "${{ matrix.name }}-${{ needs.finddeploy.outputs.build_number }}${{ matrix.extension }}" | |
- name: Update Release | |
uses: softprops/action-gh-release@v2.0.8 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag_name: ${{ needs.findengine.outputs.engine }}-${{ needs.finddeploy.outputs.build_number }} | |
name: ${{ needs.findengine.outputs.engine }} Version ${{ needs.finddeploy.outputs.build_number }} | |
draft: false | |
prerelease: false | |
generate_release_notes: true | |
files: "${{ matrix.name }}-${{ needs.finddeploy.outputs.build_number }}${{ matrix.extension }}" | |
update_packages: | |
needs: [deploy, finddeploy, findengine, build] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
ref: master | |
- name: Update packagessniper_v2.json | |
uses: luxtorpeda-dev/action-build-update-packages@master | |
with: | |
matrix: ${{ needs.finddeploy.outputs.matrix }} | |
version: ${{ needs.finddeploy.outputs.build_number }} | |
app_ids: ${{ needs.build.outputs.app_ids }} | |
- name: Commit package.json | |
run: | | |
git config --local user.email "action@github.com" | |
git config --local user.name "GitHub Action" | |
git add metadata/packagessniper_v2.json | |
git commit -m "Update packages.json for ${{ needs.findengine.outputs.engine }} version ${{ needs.finddeploy.outputs.build_number }}" | |
- name: Push Changes | |
uses: ad-m/github-push-action@master | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
branch: master | |
- name: Generate Packages Runtime Hash | |
id: generatehash | |
uses: luxtorpeda-dev/action-build-generate-sha1-hash@master | |
with: | |
file: metadata/packagessniper_v2.json | |
- name: Generate Packages Hash 256 | |
id: generatehash256 | |
uses: luxtorpeda-dev/action-build-generate-sha256-hash@main | |
with: | |
file: metadata/packagessniper_v2.json | |
- name: Write Packages Hash | |
uses: DamianReeves/write-file-action@v1.3 | |
with: | |
path: metadata/packagessniper_v2.hash | |
contents: ${{ steps.generatehash.outputs.hash }} | |
write-mode: overwrite | |
- name: Write Packages Hash 256 | |
uses: DamianReeves/write-file-action@v1.3 | |
with: | |
path: metadata/packagessniper_v2.hash256 | |
contents: ${{ steps.generatehash256.outputs.hash }} | |
write-mode: overwrite | |
- name: Publish To Pages | |
uses: peaceiris/actions-gh-pages@v4 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | |
publish_dir: ./metadata | |
keep_files: true | |
external_repository: luxtorpeda-dev/luxtorpeda-dev.github.io | |
publish_branch: master |