Skip to content

try different way #1568

try different way

try different way #1568

Workflow file for this run

name: CI-compile
on:
push:
pull_request:
workflow_dispatch:
repository_dispatch:
types: [run_build]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download ps2dev artifact
run: |
curl -L -o ps2dev-ubuntu-latest.tar.gz "https://github.com/KrahJohlito/ps2dev/releases/download/2023-latest/ps2dev-ubuntu-latest.tar.gz"
tar -xzf ps2dev-ubuntu-latest.tar.gz -C $GITHUB_WORKSPACE
- name: Set environment variables
run: |
echo "PS2DEV=${{ github.workspace }}/ps2dev" >> $GITHUB_ENV
echo "PS2SDK=${{ github.workspace }}/ps2dev/ps2sdk" >> $GITHUB_ENV
echo "GSKIT=${{ github.workspace }}/ps2dev/gsKit" >> $GITHUB_ENV
echo "PATH=${{ github.workspace }}/ps2dev/bin:${{ github.workspace }}/ps2dev/ee/bin:${{ github.workspace }}/ps2dev/iop/bin:${{ github.workspace }}/ps2dev/dvp/bin:${{ github.workspace }}/ps2dev/ps2sdk/bin:$PATH" >> $GITHUB_ENV
echo "PS2PACKERSTUBPATH=${{ github.workspace }}/ps2dev/share/ps2-packer/stub" >> $GITHUB_ENV
# why? idk ps2-packer is a pain in the balls
- name: Move lzma-packer.so to root directory
run: |
cp $GITHUB_WORKSPACE/ps2dev/share/ps2-packer/module/lzma-packer.so $GITHUB_WORKSPACE/lzma-packer.so
- 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@v4
with:
name: OPNPS2LD
path: |
OPNPS2LD-*.ELF
- name: Upload release artifact info
if: ${{ success() }}
uses: actions/upload-artifact@v4
with:
name: INFO
path: |
DETAILED_CHANGELOG
CREDITS
LICENSE
README.md
build-variants:
strategy:
fail-fast: false
matrix:
extra: [EXTRA_FEATURES=0, EXTRA_FEATURES=1]
pademu: [PADEMU=0, PADEMU=1]
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download ps2dev artifact
run: |
curl -L -o ps2dev-ubuntu-latest.tar.gz "https://github.com/KrahJohlito/ps2dev/releases/download/2023-latest/ps2dev-ubuntu-latest.tar.gz"
tar -xzf ps2dev-ubuntu-latest.tar.gz -C $GITHUB_WORKSPACE
- name: Set environment variables
run: |
echo "PS2DEV=${{ github.workspace }}/ps2dev" >> $GITHUB_ENV
echo "PS2SDK=${{ github.workspace }}/ps2dev/ps2sdk" >> $GITHUB_ENV
echo "GSKIT=${{ github.workspace }}/ps2dev/gsKit" >> $GITHUB_ENV
echo "PATH=${{ github.workspace }}/ps2dev/bin:${{ github.workspace }}/ps2dev/ee/bin:${{ github.workspace }}/ps2dev/iop/bin:${{ github.workspace }}/ps2dev/dvp/bin:${{ github.workspace }}/ps2dev/ps2sdk/bin:$PATH" >> $GITHUB_ENV
- name: Get version
run: |
echo "OPL_VERSION=$(make oplversion)" >> $GITHUB_ENV
- name: Compile -> make ${{ matrix.extra }} ${{ matrix.pademu }} ${{ matrix.extra }} NOT_PACKED=1
run: |
make --trace ${{ matrix.pademu }} ${{ matrix.extra }} NOT_PACKED=1
mv opl.elf OPNPS2LD-${{ env.OPL_VERSION }}-${{ matrix.pademu }}-${{ matrix.extra }}.ELF
- name: Create detailed changelog
run: sh ./make_changelog.sh
- name: Upload variants artifact ELF
uses: actions/upload-artifact@v4
with:
name: OPNPS2LD-VARIANTS-${{ matrix.pademu }}-${{ matrix.extra }}
path: OPNPS2LD*.ELF
merge-variants:
runs-on: ubuntu-latest
needs: build-variants
steps:
- name: Merge Artifacts
uses: actions/upload-artifact/merge@v4
with:
name: OPNPS2LD-VARIANTS
pattern: OPNPS2LD-VARIANTS*
delete-merged: true
build-lang:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download ps2dev artifact
run: |
curl -L -o ps2dev-ubuntu-latest.tar.gz "https://github.com/KrahJohlito/ps2dev/releases/download/2023-latest/ps2dev-ubuntu-latest.tar.gz"
tar -xzf ps2dev-ubuntu-latest.tar.gz -C $GITHUB_WORKSPACE
- name: Set environment variables
run: |
echo "PS2DEV=${{ github.workspace }}/ps2dev" >> $GITHUB_ENV
echo "PS2SDK=${{ github.workspace }}/ps2dev/ps2sdk" >> $GITHUB_ENV
echo "GSKIT=${{ github.workspace }}/ps2dev/gsKit" >> $GITHUB_ENV
echo "PATH=${{ github.workspace }}/ps2dev/bin:${{ github.workspace }}/ps2dev/ee/bin:${{ github.workspace }}/ps2dev/iop/bin:${{ github.workspace }}/ps2dev/dvp/bin:${{ github.workspace }}/ps2dev/ps2sdk/bin:$PATH" >> $GITHUB_ENV
- 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@v4
with:
name: OPNPS2LD-LANGS
path: |
OPNPS2LD-LANGS-*.zip
build-debug:
strategy:
fail-fast: false
matrix:
debug: [iopcore_debug, ingame_debug, eesio_debug, iopcore_ppctty_debug, ingame_ppctty_debug, DTL_T10000=1]
container_commit: [":main"]
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Download ps2dev artifact
run: |
curl -L -o ps2dev-ubuntu-latest.tar.gz "https://github.com/KrahJohlito/ps2dev/releases/download/2023-latest/ps2dev-ubuntu-latest.tar.gz"
tar -xzf ps2dev-ubuntu-latest.tar.gz -C $GITHUB_WORKSPACE
- name: Set environment variables
run: |
echo "PS2DEV=${{ github.workspace }}/ps2dev" >> $GITHUB_ENV
echo "PS2SDK=${{ github.workspace }}/ps2dev/ps2sdk" >> $GITHUB_ENV
echo "GSKIT=${{ github.workspace }}/ps2dev/gsKit" >> $GITHUB_ENV
echo "PATH=${{ github.workspace }}/ps2dev/bin:${{ github.workspace }}/ps2dev/ee/bin:${{ github.workspace }}/ps2dev/iop/bin:${{ github.workspace }}/ps2dev/dvp/bin:${{ github.workspace }}/ps2dev/ps2sdk/bin:$PATH" >> $GITHUB_ENV
echo "PS2PACKERSTUBPATH=${{ github.workspace }}/ps2dev/share/ps2-packer/stub" >> $GITHUB_ENV
# why? idk ps2-packer is a pain in the balls
- name: Move lzma-packer.so to root directory
run: |
cp $GITHUB_WORKSPACE/ps2dev/share/ps2-packer/module/lzma-packer.so $GITHUB_WORKSPACE/lzma-packer.so
- name: Get version
run: |
echo "OPL_VERSION=$(make oplversion)" >> $GITHUB_ENV
SHORT_COMMIT="${{ matrix.container_commit }}"
SHORT_COMMIT=${SHORT_COMMIT: -4}
echo "SHORT_COMMIT=$SHORT_COMMIT" >> $GITHUB_ENV
- name: Compile -> make debug
run: |
make ${{ matrix.debug }} --trace
mv opl.elf opl-${{ matrix.debug }}-${{ env.OPL_VERSION }}-${{ env.SHORT_COMMIT }}.elf
- name: Upload variants artifact ELF
uses: actions/upload-artifact@v4
with:
name: opl-${{ matrix.debug }}-${{ env.OPL_VERSION }}-${{ env.SHORT_COMMIT }}
path: opl-*.elf
merge-debug:
runs-on: ubuntu-latest
needs: build-debug
steps:
- name: Merge Artifacts
uses: actions/upload-artifact/merge@v4
with:
name: OPNPS2LD-DEBUG
pattern: opl-*
delete-merged: true
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@v4
- 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: Download all artifacts
uses: actions/download-artifact@v4
- 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: mathieucarbou/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: mathieucarbou/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