mirror of
https://github.com/Detanup01/gbe_fork.git
synced 2024-11-23 19:25:35 +08:00
fix release workflow
This commit is contained in:
parent
efbd091a80
commit
9d8ecfdb60
283
.github/workflows/release.yml
vendored
283
.github/workflows/release.yml
vendored
@ -4,9 +4,6 @@ on:
|
|||||||
push:
|
push:
|
||||||
tags:
|
tags:
|
||||||
- release*
|
- release*
|
||||||
|
|
||||||
workflow_dispatch:
|
|
||||||
# allows manual trigger
|
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
@ -47,48 +44,85 @@ jobs:
|
|||||||
- name: Download emu build artifacts (Win)
|
- name: Download emu build artifacts (Win)
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
# name: "emu-win-release"
|
path: build/win
|
||||||
path: build/prep
|
pattern: emu-win-*-${{ github.sha }}
|
||||||
pattern: emu-*
|
|
||||||
merge-multiple: true
|
merge-multiple: true
|
||||||
|
|
||||||
- name: Extract all build artifacts (Win)
|
|
||||||
shell: cmd
|
|
||||||
working-directory: ${{ github.workspace }}
|
|
||||||
run: |
|
|
||||||
"${{env.THIRD_PARTY_BASE_DIR}}\deps\win\7za\7za.exe" x "build\prep\*.zip" -aos -o"build\win"
|
|
||||||
|
|
||||||
### package (release mode)
|
### package (release mode)
|
||||||
- name: Package build (release)
|
- name: Package build (release)
|
||||||
shell: cmd
|
shell: cmd
|
||||||
working-directory: ${{ github.workspace }}
|
working-directory: ${{ github.workspace }}
|
||||||
run: package_win.bat release
|
run: package_win.bat release
|
||||||
|
|
||||||
### upload artifact/package to github Actions (release mode)
|
|
||||||
- name: Upload build package (release)
|
|
||||||
uses: actions/upload-artifact@v4
|
|
||||||
with:
|
|
||||||
name: "build-win-release"
|
|
||||||
path: "build/package/win/release/"
|
|
||||||
if-no-files-found: 'error'
|
|
||||||
compression-level: 9
|
|
||||||
retention-days: 1
|
|
||||||
|
|
||||||
### package (debug mode)
|
### package (debug mode)
|
||||||
- name: Package build (debug)
|
- name: Package build (debug)
|
||||||
shell: cmd
|
shell: cmd
|
||||||
working-directory: ${{ github.workspace }}
|
working-directory: ${{ github.workspace }}
|
||||||
run: package_win.bat debug
|
run: package_win.bat debug
|
||||||
|
|
||||||
### upload artifact/package to github Actions (debug mode)
|
### release (debug + release modes) if this is a tag push
|
||||||
- name: Upload build package (debug)
|
- name: Release
|
||||||
uses: actions/upload-artifact@v4
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
with:
|
with:
|
||||||
name: "build-win-debug"
|
files: "build/package/win/**/*"
|
||||||
path: "build/package/win/debug/"
|
|
||||||
if-no-files-found: 'error'
|
|
||||||
compression-level: 9
|
|
||||||
retention-days: 1
|
emu-linux-all:
|
||||||
|
name: Emu linux all
|
||||||
|
if: ${{ !cancelled() }}
|
||||||
|
uses: ./.github/workflows/emu-build-all-linux.yml
|
||||||
|
|
||||||
|
emu-linux-prep:
|
||||||
|
needs: [ emu-linux-all ]
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
steps:
|
||||||
|
# we need branch because it has package scripts
|
||||||
|
- name: Checkout branch
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Clone third-party deps (deps/linux)
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: 'third-party/deps/linux'
|
||||||
|
path: "${{env.THIRD_PARTY_BASE_DIR}}/deps/linux"
|
||||||
|
|
||||||
|
## donwload artifacts
|
||||||
|
- name: Download emu build artifacts (linux)
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
path: build/linux
|
||||||
|
pattern: emu-linux-*-${{ github.sha }}
|
||||||
|
merge-multiple: true
|
||||||
|
|
||||||
|
### fix folder permissions! not sure why this fails
|
||||||
|
# nested subdirs "build/linux/release" cause permission problems
|
||||||
|
- name: Give all permissions to repo folder
|
||||||
|
shell: bash
|
||||||
|
working-directory: ${{ github.workspace }}
|
||||||
|
run: sudo chmod -R 777 "${{ github.workspace }}" && sudo chmod 777 package_linux.sh
|
||||||
|
|
||||||
|
### package (release mode)
|
||||||
|
- name: Package build (release)
|
||||||
|
shell: bash
|
||||||
|
working-directory: ${{ github.workspace }}
|
||||||
|
run: sudo ./package_linux.sh release
|
||||||
|
|
||||||
|
### package (debug mode)
|
||||||
|
- name: Package build (debug)
|
||||||
|
shell: bash
|
||||||
|
working-directory: ${{ github.workspace }}
|
||||||
|
run: sudo ./package_linux.sh debug
|
||||||
|
|
||||||
|
### release (debug + release modes) if this is a tag push
|
||||||
|
- name: Release
|
||||||
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
|
with:
|
||||||
|
files: "build/package/linux/**/*"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
gen_emu_script-win:
|
gen_emu_script-win:
|
||||||
name: Gen emu config win
|
name: Gen emu config win
|
||||||
@ -119,71 +153,162 @@ jobs:
|
|||||||
path: "${{env.THIRD_PARTY_BASE_DIR}}/deps/win"
|
path: "${{env.THIRD_PARTY_BASE_DIR}}/deps/win"
|
||||||
|
|
||||||
## donwload artifacts
|
## donwload artifacts
|
||||||
- name: Download gen_emu_script build artifacts (Win)
|
- name: Download script build artifacts (Win)
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
# name: "emu-win-release"
|
path: tools/generate_emu_config/bin/win
|
||||||
path: build/prep
|
pattern: generate_emu_config-win-*
|
||||||
pattern: generate_emu_config-*
|
|
||||||
merge-multiple: true
|
merge-multiple: true
|
||||||
|
|
||||||
- name: Extract all build artifacts (Win)
|
|
||||||
shell: cmd
|
|
||||||
working-directory: ${{ github.workspace }}
|
|
||||||
run: |
|
|
||||||
"${{env.THIRD_PARTY_BASE_DIR}}\deps\win\7za\7za.exe" x "build\prep\*.zip" -aos -o"tools\generate_emu_config\bin\win"
|
|
||||||
|
|
||||||
### package
|
### package
|
||||||
- name: Package generate_emu_config
|
- name: Package script
|
||||||
shell: cmd
|
shell: cmd
|
||||||
working-directory: "tools/generate_emu_config"
|
working-directory: "tools/generate_emu_config"
|
||||||
run: package_win.bat
|
run: package_win.bat
|
||||||
|
|
||||||
### upload artifact/package to github Actions
|
# release tag
|
||||||
- name: Upload generate_emu_config package (release)
|
- name: Release
|
||||||
uses: actions/upload-artifact@v4
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
with:
|
with:
|
||||||
name: "generate_emu_config-win"
|
files: "tools/generate_emu_config/bin/package/win/**/*"
|
||||||
path: "generate_emu_config/bin/package/"
|
|
||||||
if-no-files-found: 'error'
|
|
||||||
compression-level: 9
|
|
||||||
retention-days: 1
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# ### release (debug + release modes)
|
gen_emu_script-linux:
|
||||||
# - name: Release
|
name: Gen emu config linux
|
||||||
# uses: softprops/action-gh-release@v1
|
if: ${{ !cancelled() }}
|
||||||
# with:
|
uses: ./.github/workflows/gen_emu_config-build-linux.yml
|
||||||
# files: "${{ env.PACKAGE_BASE_DIR }}/**/*"
|
|
||||||
|
gen_emu_script-linux-prep:
|
||||||
|
needs: [ gen_emu_script-linux ]
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
steps:
|
||||||
|
# we need branch because it has package scripts
|
||||||
|
- name: Checkout branch
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
## donwload artifacts
|
||||||
|
- name: Download script build artifacts (linux)
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
path: tools/generate_emu_config/bin/linux
|
||||||
|
pattern: generate_emu_config-linux-*
|
||||||
|
merge-multiple: true
|
||||||
|
|
||||||
|
### fix folder permissions! not sure why this fails
|
||||||
|
# nested subdirs "build/linux/release" cause permission problems
|
||||||
|
- name: Give all permissions to repo folder
|
||||||
|
shell: bash
|
||||||
|
working-directory: ${{ github.workspace }}
|
||||||
|
run: sudo chmod -R 777 "${{ github.workspace }}"
|
||||||
|
|
||||||
|
### package
|
||||||
|
- name: Package script
|
||||||
|
shell: bash
|
||||||
|
working-directory: "tools/generate_emu_config"
|
||||||
|
run: sudo chmod 777 package_linux.sh && sudo ./package_linux.sh
|
||||||
|
|
||||||
|
# release tag
|
||||||
|
- name: Release
|
||||||
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
|
with:
|
||||||
|
files: "tools/generate_emu_config/bin/package/linux/**/*"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
migrate_gse_script-win:
|
||||||
|
name: Migrate GSE win
|
||||||
|
if: ${{ !cancelled() }}
|
||||||
|
uses: ./.github/workflows/migrate_gse-build-win.yml
|
||||||
|
|
||||||
|
migrate_gse_script-win-prep:
|
||||||
|
needs: [ migrate_gse_script-win ]
|
||||||
|
runs-on: windows-2022
|
||||||
|
steps:
|
||||||
|
# on Windows Git will auto change line ending to CRLF, not preferable
|
||||||
|
- name: Ensure LF line ending
|
||||||
|
shell: cmd
|
||||||
|
working-directory: ${{ github.workspace }}
|
||||||
|
run: |
|
||||||
|
git config --local core.autocrlf false
|
||||||
|
git config --system core.autocrlf false
|
||||||
|
git config --global core.autocrlf false
|
||||||
|
|
||||||
|
# we need branch because it has package scripts
|
||||||
|
- name: Checkout branch
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Clone third-party deps (deps/win)
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: 'third-party/deps/win'
|
||||||
|
path: "${{env.THIRD_PARTY_BASE_DIR}}/deps/win"
|
||||||
|
|
||||||
|
## donwload artifacts
|
||||||
|
- name: Download script build artifacts (Win)
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
path: tools/migrate_gse/bin/win
|
||||||
|
pattern: migrate_gse-win-*
|
||||||
|
merge-multiple: true
|
||||||
|
|
||||||
|
### package
|
||||||
|
- name: Package script
|
||||||
|
shell: cmd
|
||||||
|
working-directory: "tools/migrate_gse"
|
||||||
|
run: package_win.bat
|
||||||
|
|
||||||
|
# release tag
|
||||||
|
- name: Release
|
||||||
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
|
with:
|
||||||
|
files: "tools/migrate_gse/bin/package/win/**/*"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
migrate_gse_script-linux:
|
||||||
|
name: Migrate GSE linux
|
||||||
|
if: ${{ !cancelled() }}
|
||||||
|
uses: ./.github/workflows/migrate_gse-build-linux.yml
|
||||||
|
|
||||||
|
migrate_gse_script-linux-prep:
|
||||||
|
needs: [ migrate_gse_script-linux ]
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
steps:
|
||||||
|
# we need branch because it has package scripts
|
||||||
|
- name: Checkout branch
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
## donwload artifacts
|
||||||
|
- name: Download script build artifacts (linux)
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
path: tools/migrate_gse/bin/linux
|
||||||
|
pattern: migrate_gse-linux-*
|
||||||
|
merge-multiple: true
|
||||||
|
|
||||||
|
### fix folder permissions! not sure why this fails
|
||||||
|
# nested subdirs "build/linux/release" cause permission problems
|
||||||
|
- name: Give all permissions to repo folder
|
||||||
|
shell: bash
|
||||||
|
working-directory: ${{ github.workspace }}
|
||||||
|
run: sudo chmod -R 777 "${{ github.workspace }}"
|
||||||
|
|
||||||
|
### package
|
||||||
|
- name: Package script
|
||||||
|
shell: bash
|
||||||
|
working-directory: "tools/migrate_gse"
|
||||||
|
run: sudo chmod 777 package_linux.sh && sudo ./package_linux.sh
|
||||||
|
|
||||||
|
# release tag
|
||||||
|
- name: Release
|
||||||
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
|
with:
|
||||||
|
files: "tools/migrate_gse/bin/package/linux/**/*"
|
||||||
|
|
||||||
# emu-win-linux:
|
|
||||||
# needs: [ emu-win-all ]
|
|
||||||
# runs-on: ubuntu-22.04
|
|
||||||
# steps:
|
|
||||||
# - name: Download emu build artifacts (Win)
|
|
||||||
# uses: actions/download-artifact@v4
|
|
||||||
# with:
|
|
||||||
# # name: "emu-win-release"
|
|
||||||
# path: build/prep
|
|
||||||
# merge-multiple: true
|
|
||||||
|
|
||||||
# ### fix folder permissions! not sure why this fails
|
|
||||||
# # nested subdirs "build/linux/release" cause permission problems
|
|
||||||
# - name: Give all permissions to repo folder
|
|
||||||
# shell: bash
|
|
||||||
# working-directory: ${{ github.workspace }}
|
|
||||||
# run: sudo chmod -R 777 "${{ github.workspace }}"
|
|
||||||
|
|
||||||
# - name: Extract all build artifacts
|
|
||||||
# shell: cmd
|
|
||||||
# working-directory: ${{ github.workspace }}
|
|
||||||
# run: |
|
|
||||||
# sudo apt install unzip -y || exit
|
|
||||||
# sudo apt install tar -y || exit 1
|
|
||||||
# unzip -q -b -C -DD -n 'build/prep/*.zip' -d 'build/win/' || exit
|
|
||||||
# tar -C "$script_dir/build/win" -c -j -vf "build/package/linux" "$1"
|
|
||||||
|
Loading…
Reference in New Issue
Block a user