Skip to content

Commit

Permalink
Changes to CI files:
Browse files Browse the repository at this point in the history
Automatically create release on the master branch with builds
Upload files on that release (so it is possible to download build without login)
Name variants with the version number
Package variants + documentation in a zip file
  • Loading branch information
uyjulian committed Jul 24, 2020
1 parent 2d72e5e commit 7a1417f
Showing 1 changed file with 64 additions and 27 deletions.
91 changes: 64 additions & 27 deletions .github/workflows/compilation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,120 +19,157 @@ jobs:
- run: |
git fetch --prune --unshallow
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- name: Get version
id: version
run: echo "::set-output name=version::$(make oplversion)"

- name: Compile -> make clean release
run: |
make clean release
mv OPNPS2LD-*.ZIP OPNPS2LD-LATEST.ZIP
- name: Upload release artifact
if: ${{ success() }}
uses: actions/upload-artifact@v2
with:
name: OPNPS2LD-${{ steps.slug.outputs.sha8 }}
path: OPNPS2LD-*.ZIP
name: OPNPS2LD
path: OPNPS2LD-LATEST.ZIP

build-variants:
runs-on: ubuntu-latest
container: ps2dev/ps2dev:latest
steps:
- name: Install dependencies
run: |
apk add build-base git
apk add build-base git zip
- uses: actions/checkout@v2
- run: |
git fetch --prune --unshallow
- name: Get short SHA
id: slug
run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)"
- name: Get version
id: version
run: echo "::set-output name=version::$(make oplversion)"

- name: Compile -> make clean OPNPS2LD.ELF
run: |
make clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make PADEMU=1 clean OPNPS2LD.ELF
run: |
make PADEMU=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-PADEMU.ELF
mv OPNPS2LD.ELF OPNPS2LD-PADEMU-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-PADEMU-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-PADEMU-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make IGS=1 clean OPNPS2LD.ELF
run: |
make IGS=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make IGS=1 DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make IGS=1 DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make IGS=1 PADEMU=1 clean OPNPS2LD.ELF
run: |
make IGS=1 PADEMU=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS-PADEMU.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS-PADEMU-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make IGS=1 PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make IGS=1 PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS-PADEMU-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-IGS-PADEMU-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 clean OPNPS2LD.ELF
run: |
make RTL=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make RTL=1 DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 PADEMU=1 clean OPNPS2LD.ELF
run: |
make RTL=1 PADEMU=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-PADEMU.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-PADEMU-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make RTL=1 PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-PADEMU-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-PADEMU-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 IGS=1 clean OPNPS2LD.ELF
run: |
make RTL=1 IGS=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 IGS=1 DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make RTL=1 IGS=1 DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 IGS=1 PADEMU=1 clean OPNPS2LD.ELF
run: |
make RTL=1 IGS=1 PADEMU=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS-PADEMU.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS-PADEMU-${{ steps.version.outputs.version }}.ELF
- name: Compile -> make RTL=1 IGS=1 PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
run: |
make RTL=1 IGS=1 PADEMU=1 DTL_T10000=1 clean OPNPS2LD.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS-PADEMU-DTL_T10000.ELF
mv OPNPS2LD.ELF OPNPS2LD-RTL-IGS-PADEMU-DTL_T10000-${{ steps.version.outputs.version }}.ELF
- name: Create detailed changelog
run: sh ./make_changelog.sh

- name: Create zip archive
run: zip -r OPNPS2LD-VARIANTS-LATEST.ZIP OPNPS2LD*.ELF DETAILED_CHANGELOG CREDITS LICENSE README.md

- name: Upload variants artifact
if: ${{ success() }}
uses: actions/upload-artifact@v2
with:
name: OPNPS2LD-VARIANTS-${{ steps.slug.outputs.sha8 }}
path: OPNPS2LD*.ELF
name: OPNPS2LD-VARIANTS
path: |
OPNPS2LD-VARIANTS-LATEST.ZIP
create-release:
needs: [build, build-variants]
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/master'
steps:
- uses: actions/checkout@v2
- run: |
git fetch --prune --unshallow
- name: Download release artifact
uses: actions/download-artifact@v1
with:
name: OPNPS2LD

- name: Download variants artifact
uses: actions/download-artifact@v1
with:
name: OPNPS2LD-VARIANTS

- name: Create release
uses: marvinpinto/action-automatic-releases@latest
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
title: "Latest development builds"
files: |
OPNPS2LD/OPNPS2LD-LATEST.ZIP
OPNPS2LD-VARIANTS/OPNPS2LD-VARIANTS-LATEST.ZIP

0 comments on commit 7a1417f

Please sign in to comment.