Update building.yml

This commit is contained in:
Lillian Skinner 2024-09-01 01:43:34 -04:00 committed by GitHub
parent a52e2ddc5e
commit 4dc97b3056
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,4 +1,4 @@
name: Build GodMode9i
name: Build GodMode9i (NAND edit)
on:
push:
@ -17,41 +17,83 @@ jobs:
runs-on: ubuntu-latest
container: devkitpro/devkitarm
name: Build with Docker using devkitARM
outputs:
commit_tag: ${{ steps.build.outputs.commit_tag }}
commit_hash: ${{ steps.build.outputs.commit_hash }}
author_name: ${{ steps.build.outputs.author_name }}
committer_name: ${{ steps.build.outputs.committer_name }}
commit_subject: ${{ steps.build.outputs.commit_subject }}
commit_message: ${{ steps.build.outputs.commit_message }}
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Install tools
run: |
sudo apt-get update
sudo apt-get install p7zip-full -y
uses: actions/checkout@v4
- name: Setup environment
run: git config --global safe.directory '*'
- name: Build & Package GodMode9i
id: build
run: |
make all dsi
chmod +x make_cia
./make_cia --srl="GodMode9i.dsi" --id_0=$(git rev-parse --short=7 HEAD) --tikID=$(git rev-parse --short=16 HEAD)
mkdir GodMode9i/
cp GodMode9i.dsi GodMode9i/
cp GodMode9i.nds GodMode9i/
cp GodMode9i.cia GodMode9i/
7z a GodMode9i.7z GodMode9i/
mkdir -p ~/artifacts
cp GodMode9i.dsi ~/artifacts
cp GodMode9i.nds ~/artifacts
cp GodMode9i.cia ~/artifacts
cp GodMode9i.7z ~/artifacts
- name: Build GodMode9i
run: make
- name: Publish build to GH Actions
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4.3.6
with:
path: "GM9.dsi"
name: GodMode9i-Nightly-Unsigned
devsign:
runs-on: windows-latest
needs: [build]
name: Devsign GodMode9i and build a TAD
steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: GodMode9i-Nightly-Unsigned
path: D:\a\GodMode9i\GodMode9i\GodMode9i-Build
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Clone ntool
uses: GuillaumeFalourd/clone-github-repo-action@v2.1
with:
depth: 1
owner: 'xprism1'
repository: 'ntool'
- name: Devsign GodMode9i
run: |
cp GodMode9i-Build\GodMode9i.dsi ntool
cd ntool
pip install pycryptodome
python ntool.py srl_retail2dev GodMode9i.dsi
- name: Publish devsigned build to GH Actions
uses: actions/upload-artifact@v4.3.6
with:
path: "ntool/GodMode9i_dev.srl"
name: GodMode9i-Nightly-Devsigned
- name: Make a devsigned TAD
run: |
curl https://cdn.randommeaninglesscharacters.com/tools/maketad/maketad.zip -o maketad.zip
7z e maketad.zip
cp ntool/GodMode9i_dev.srl .
.\maketad-20090604.exe GodMode9i_dev.srl -s -o GodMode9i-Nightly.tad
- name: Publish devsigned TAD to GH Actions
uses: actions/upload-artifact@v4.3.6
with:
path: "GodMode9i-Nightly.tad"
name: GodMode9i-Nightly-TAD
# 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:
path: ~/artifacts/*
name: build
path: build
- name: Publish Build
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