This repository has been archived by the owner on Aug 31, 2024. It is now read-only.
et CI build container to fjtrujy/ps2dev:latest #55
Workflow file for this run
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: | |
repository_dispatch: | |
types: [run_build] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
container: fjtrujy/ps2dev:latest | |
steps: | |
- name: Install dependencies | |
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: Install Python packages | |
# run: pip3 install -r requirements.txt | |
- 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: fjtrujy/ps2dev:latest | |
steps: | |
- name: Install dependencies | |
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: Install Python packages | |
# run: pip3 install -r requirements.txt | |
- name: Get version | |
id: version | |
run: echo "::set-output name=version::$(make oplversion)" | |
- 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-${{ steps.version.outputs.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: fjtrujy/ps2dev:latest | |
steps: | |
- name: Install dependencies | |
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: Install Python packages | |
# run: pip3 install -r requirements.txt | |
- 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 broken | |
runs-on: ubuntu-latest | |
container: fjtrujy/ps2dev:latest | |
steps: | |
- name: Install dependencies | |
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: Install Python packages | |
# run: pip3 install -r requirements.txt | |
- name: Get version | |
id: version | |
run: echo "::set-output name=version::$(make oplversion)" | |
- 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-${{ steps.version.outputs.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 | |
id: version | |
run: echo "::set-output name=version::$(make oplversion)" | |
- name: Download all artifacts | |
uses: actions/download-artifact@v3 | |
- name: Prepare artifacts for release | |
run: | | |
cp INFO/* OPNPS2LD/ | |
cp INFO/* OPNPS2LD-VARIANTS/ | |
7z a -t7z OPNPS2LD-${{ steps.version.outputs.version }}.7z OPNPS2LD/* | |
7z a -t7z OPNPS2LD-VARIANTS-${{ steps.version.outputs.version }}.7z OPNPS2LD-VARIANTS/* | |
7z a -t7z OPNPS2LD-LANGS-${{ steps.version.outputs.version }}.7z OPNPS2LD-LANGS/* | |
cp -f OPNPS2LD-${{ steps.version.outputs.version }}.7z OPNPS2LD.7z | |
cp -f OPNPS2LD-VARIANTS-${{ steps.version.outputs.version }}.7z OPNPS2LD-VARIANTS.7z | |
cp -f OPNPS2LD-LANGS-${{ steps.version.outputs.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-${{ steps.version.outputs.version }}.7z | |
OPNPS2LD-VARIANTS-${{ steps.version.outputs.version }}.7z | |
OPNPS2LD-LANGS-${{ steps.version.outputs.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: "${{ steps.version.outputs.version }}" | |
files: | | |
OPNPS2LD-${{ steps.version.outputs.version }}.7z | |
OPNPS2LD-VARIANTS-${{ steps.version.outputs.version }}.7z | |
OPNPS2LD-LANGS-${{ steps.version.outputs.version }}.7z | |
OPNPS2LD.7z | |
OPNPS2LD-VARIANTS.7z | |
OPNPS2LD-LANGS.7z |