This repository has been archived by the owner on Aug 31, 2024. It is now read-only.
CI: use redsonbr/ps2dev:latest for building #69
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: CI-compile | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
repository_dispatch: | |
types: [run_build] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
#container: ghcr.io/ps2homebrew/ps2homebrew:main | |
container: redsonbr/ps2dev:latest | |
steps: | |
- name: Install dependencies required on redsonbr/ps2dev:latest | |
run: | | |
apk add build-base git zip gawk python3 py3-pip bash py3-yaml | |
- name: git checkout | |
uses: actions/checkout@v3 | |
- run: | | |
git config --global --add safe.directory "$GITHUB_WORKSPACE" | |
git fetch --prune --unshallow | |
- name: Compile -> make clean release | |
run: make --trace clean release | |
- name: Create detailed changelog | |
run: sh ./make_changelog.sh | |
- name: Upload release artifact ELF | |
if: ${{ success() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: OPNPS2LD | |
path: | | |
OPNPS2LD-*.ELF | |
- name: Upload release artifact info | |
if: ${{ success() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: INFO | |
path: | | |
DETAILED_CHANGELOG | |
CREDITS | |
LICENSE | |
README.md | |
build-variants: | |
strategy: | |
fail-fast: false | |
matrix: | |
rtl: [RTL=0, RTL=1] | |
pademu: [PADEMU=0, PADEMU=1] | |
igs: [IGS=0, IGS=1] | |
t10k: [DTL_T10000=0, DTL_T10000=1] | |
runs-on: ubuntu-latest | |
container: ghcr.io/ps2homebrew/ps2homebrew:main | |
steps: | |
- name: git checkout | |
uses: actions/checkout@v3 | |
- run: | | |
git config --global --add safe.directory "$GITHUB_WORKSPACE" | |
git fetch --prune --unshallow | |
- name: Get version | |
run: | | |
echo "OPL_VERSION=$(make oplversion)" >> $GITHUB_ENV | |
- name: Compile -> make ${{ matrix.t10k }} ${{ matrix.igs }} ${{ matrix.pademu }} ${{ matrix.rtl }} NOT_PACKED=1 | |
run: | | |
make --trace ${{ matrix.t10k }} ${{ matrix.igs }} ${{ matrix.pademu }} ${{ matrix.rtl }} NOT_PACKED=1 | |
mv opl.elf OPNPS2LD-${{ env.OPL_VERSION }}-${{ matrix.t10k }}-${{ matrix.igs }}-${{ matrix.pademu }}-${{ matrix.rtl }}.ELF | |
- name: Create detailed changelog | |
run: sh ./make_changelog.sh | |
- name: Upload variants artifact ELF | |
uses: actions/upload-artifact@v3 | |
with: | |
name: OPNPS2LD-VARIANTS | |
path: OPNPS2LD*.ELF | |
build-lang: | |
runs-on: ubuntu-latest | |
#container: ghcr.io/ps2homebrew/ps2homebrew:main | |
container: redsonbr/ps2dev:latest | |
steps: | |
- name: Install dependencies required on redsonbr/ps2dev:latest | |
run: | | |
apk add build-base git zip gawk python3 py3-pip bash py3-yaml | |
- name: git checkout | |
uses: actions/checkout@v3 | |
- run: | | |
git config --global --add safe.directory "$GITHUB_WORKSPACE" | |
git fetch --prune --unshallow | |
- name: Compile -> make download_lng languages | |
run: make --trace download_lng languages | |
- name: Create artifact | |
run: sh ./lng_pack.sh | |
- name: Upload release artifact | |
if: ${{ success() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: OPNPS2LD-LANGS | |
path: | | |
OPNPS2LD-LANGS-*.zip | |
build-debug: | |
strategy: | |
fail-fast: false | |
matrix: | |
debug: [debug, iopcore_debug, ingame_debug, deci2_debug, eesio_debug] | |
runs-on: ubuntu-latest | |
container: ghcr.io/ps2homebrew/ps2homebrew:main | |
steps: | |
- name: git checkout | |
uses: actions/checkout@v3 | |
- run: | | |
git config --global --add safe.directory "$GITHUB_WORKSPACE" | |
git fetch --prune --unshallow | |
- name: Get version | |
run: | | |
echo "OPL_VERSION=$(make oplversion)" >> $GITHUB_ENV | |
- name: Compile -> make debug | |
run: | | |
make ${{ matrix.debug }} --trace | |
mv opl.elf opl-${{ matrix.debug }}.elf | |
- name: Upload variants artifact ELF | |
uses: actions/upload-artifact@v3 | |
with: | |
name: opl-debug-${{ env.OPL_VERSION }}-${{ matrix.docker }} | |
path: opl-*.elf | |
release: | |
needs: [build, build-variants, build-lang] | |
runs-on: ubuntu-latest | |
if: startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/master' | |
env: | |
USERNAME: ${{ secrets.USERNAME }} | |
PASSWORD: ${{ secrets.PASSWORD }} | |
steps: | |
- name: git checkout | |
uses: actions/checkout@v3 | |
- run: git fetch --prune --unshallow | |
- name: Get version | |
run: | | |
echo "OPL_VERSION=$(make oplversion)" >> $GITHUB_ENV | |
- name: Download all artifacts | |
uses: actions/download-artifact@v3 | |
- name: Prepare artifacts for release | |
run: | | |
echo packing release of OPL ${{ env.OPL_VERSION }} | |
cp INFO/* OPNPS2LD/ | |
cp INFO/* OPNPS2LD-VARIANTS/ | |
7z a -t7z OPNPS2LD-${{ env.OPL_VERSION }}.7z OPNPS2LD/* | |
7z a -t7z OPNPS2LD-VARIANTS-${{ env.OPL_VERSION }}.7z OPNPS2LD-VARIANTS/* | |
7z a -t7z OPNPS2LD-LANGS-${{ env.OPL_VERSION }}.7z OPNPS2LD-LANGS/* | |
cp -f OPNPS2LD-${{ env.OPL_VERSION }}.7z OPNPS2LD.7z | |
cp -f OPNPS2LD-VARIANTS-${{ env.OPL_VERSION }}.7z OPNPS2LD-VARIANTS.7z | |
cp -f OPNPS2LD-LANGS-${{ env.OPL_VERSION }}.7z OPNPS2LD-LANGS.7z | |
- name: Create prerelease | |
if: github.ref == 'refs/heads/master' | |
uses: marvinpinto/action-automatic-releases@latest | |
with: | |
repo_token: "${{ secrets.GITHUB_TOKEN }}" | |
prerelease: true | |
automatic_release_tag: "latest" | |
title: "${{ steps.version.outputs.version }}" | |
files: | | |
OPNPS2LD-${{ env.OPL_VERSION }}.7z | |
OPNPS2LD-VARIANTS-${{ env.OPL_VERSION }}.7z | |
OPNPS2LD-LANGS-${{ env.OPL_VERSION }}.7z | |
OPNPS2LD.7z | |
OPNPS2LD-VARIANTS.7z | |
OPNPS2LD-LANGS.7z | |
- name: Create release | |
if: startsWith(github.ref, 'refs/tags/v') | |
uses: marvinpinto/action-automatic-releases@latest | |
with: | |
repo_token: "${{ secrets.GITHUB_TOKEN }}" | |
prerelease: "${{ contains(github.ref, '-rc') }}" | |
title: "${{ env.OPL_VERSION }}" | |
files: | | |
OPNPS2LD-${{ env.OPL_VERSION }}.7z | |
OPNPS2LD-VARIANTS-${{ env.OPL_VERSION }}.7z | |
OPNPS2LD-LANGS-${{ env.OPL_VERSION }}.7z | |
OPNPS2LD.7z | |
OPNPS2LD-VARIANTS.7z | |
OPNPS2LD-LANGS.7z |