quakespasm/.github/workflows/build-and-release.yml

115 lines
3.7 KiB
YAML
Raw Normal View History

2022-02-08 19:06:54 +00:00
name: Build and Publish Release
on: [push]
jobs:
Compile-VPK:
runs-on: ubuntu-latest
container:
2022-02-09 16:15:46 +00:00
image: vitasdk/vitasdk:latest
2022-02-08 19:06:54 +00:00
steps:
2023-12-27 21:16:10 +00:00
- name: Checkout
uses: actions/checkout@v2
2023-04-04 17:12:30 +00:00
- name: Install Packages and update VitaSDK
2022-02-08 19:06:54 +00:00
run: |
2022-07-15 22:50:16 +00:00
apk add bash build-base zip git curl cmake
vdpm vitashark
2022-12-22 22:25:07 +00:00
vdpm vitagl
2022-07-15 22:48:11 +00:00
git clone https://github.com/bythos14/SceShaccCgExt.git
cd SceShaccCgExt
mkdir build && cd build
2023-12-27 22:15:41 +00:00
cmake .. && make -j12 install
2022-02-08 19:06:54 +00:00
- name: Build
working-directory: ./
run: |
2023-12-27 22:15:41 +00:00
make -j12 -f Makefile.vita
- name: Upload Artifact
2023-12-27 21:53:46 +00:00
uses: actions/upload-artifact@v4
with:
name: vita-nzp-vpk
2023-12-27 21:22:47 +00:00
path: ./build/vita/nzp.vpk
2022-02-08 19:06:54 +00:00
Compile-NRO:
runs-on: ubuntu-latest
container:
image: devkitpro/devkita64
steps:
2023-12-27 21:22:47 +00:00
- name: Checkout
uses: actions/checkout@v2
2022-02-08 19:06:54 +00:00
- name: Build
working-directory: ./
run: |
2023-12-27 22:15:41 +00:00
make -j12 -f Makefile.nx
- name: Upload Artifact
2023-12-27 21:46:44 +00:00
uses: actions/upload-artifact@v4
with:
name: nx-nzp-nro
2023-12-27 21:22:47 +00:00
path: |
./build/nx/nzportable.nro
./build/nx/nzportable.nacp
2022-02-08 19:06:54 +00:00
Unify-and-Release:
runs-on: ubuntu-latest
needs: [Compile-VPK, Compile-NRO]
2022-02-08 19:06:54 +00:00
steps:
2023-12-27 22:09:45 +00:00
- name: Checkout
uses: actions/checkout@v2
2023-12-27 21:50:34 +00:00
- name: Wait for GitHub to keep up..
2023-12-27 22:09:45 +00:00
run: sleep 2s
2023-12-27 21:50:34 +00:00
shell: bash
2023-12-27 21:39:35 +00:00
- name: Download Artifacts
2023-12-27 21:16:10 +00:00
uses: actions/download-artifact@v4
2023-12-27 21:59:40 +00:00
with:
2023-12-27 22:09:45 +00:00
path: ./
2023-12-27 22:21:59 +00:00
- name: Turn Artifacts into .ZIP archives
run: |
2023-12-27 22:27:27 +00:00
zip -r -j vita-nzp-vpk.zip vita-nzp-vpk/*
zip -r -j nx-nzp-nro.zip nx-nzp-nro/*
2022-02-08 19:06:54 +00:00
- name: Generate Build Date
id: date
run: echo "::set-output name=date::$(date +'%Y-%m-%d-%H-%M-%S')"
- name: Delete Old Release
uses: dev-drprasad/delete-tag-and-release@v0.2.1
2022-02-08 19:06:54 +00:00
with:
delete_release: true
tag_name: bleeding-edge
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: bleeding-edge
release_name: Automated Release ${{ steps.date.outputs.date }}
body: |
This is a **bleeding edge** NZ:P NX/VITA release, stability is not guarenteed.
2022-02-08 19:06:54 +00:00
To install:
- Grab the .ZIP archive for your platform
- VITA: Extract the `.VPK`, copy it to your VITA, and install with VitaShell.
- NX: Extract `nzportable.nro` to `switch/nzportable` on your Nintendo Switch.
draft: true
prerelease: false
- name: Upload VITA Archive
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
2023-12-27 22:21:59 +00:00
asset_path: ./vita-nzp-vpk.zip
2022-02-08 19:06:54 +00:00
asset_name: vita-nzp-vpk.zip
asset_content_type: application/zip
- name: Upload NX Archive
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
2023-12-27 22:21:59 +00:00
asset_path: ./nx-nzp-nro.zip
2022-02-08 19:06:54 +00:00
asset_name: nx-nzp-nro.zip
asset_content_type: application/zip
- name: Publish Release
uses: StuYarrow/publish-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
2022-07-15 22:48:11 +00:00
id: ${{ steps.create_release.outputs.id }}