mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-02-04 14:24:53 +08:00
[godot] Unify 4.x builds into a single workflow, with an orchestrating workflow in spine-godot-v4-all.yml
This commit is contained in:
parent
b405686823
commit
49e901fd4a
25
.github/workflows/spine-godot-v4-all.yml
vendored
Normal file
25
.github/workflows/spine-godot-v4-all.yml
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
name: Build all Godot 4.x versions
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- ".github/workflows/spine-godot.yml"
|
||||
- 'spine-godot/**'
|
||||
- 'spine-cpp/**'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build-versions:
|
||||
strategy:
|
||||
matrix:
|
||||
version:
|
||||
[
|
||||
{"tag": "4.0-stable", "version": "4.0.stable", "mono": false},
|
||||
{"tag": "4.1-stable", "version": "4.1.stable", "mono": false},
|
||||
]
|
||||
uses: ./.github/workflows/spine-godot-v4.yml
|
||||
with:
|
||||
godot_tag: ${{ matrix.version.tag }}
|
||||
godot_version: ${{ matrix.version.version }}
|
||||
godot_mono: ${{ matrix.version.mono }}
|
||||
secrets: inherit
|
||||
368
.github/workflows/spine-godot-v4.1.yml
vendored
368
.github/workflows/spine-godot-v4.1.yml
vendored
@ -1,368 +0,0 @@
|
||||
name: Build and Publish Godot 4.1 editor and templates
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- ".github/workflows/spine-godot.yml"
|
||||
- 'spine-godot/**'
|
||||
- 'spine-cpp/**'
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_EC2_METADATA_DISABLED: true
|
||||
EM_VERSION: 3.1.18
|
||||
GODOT_TAG: 4.1-stable
|
||||
GODOT_VERSION: 4.1.stable
|
||||
|
||||
jobs:
|
||||
|
||||
godot-editor-windows:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
shell: bash
|
||||
run: |
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-v4.sh
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-editor-windows.zip
|
||||
path: spine-godot/godot/bin/godot.windows.editor.x86_64.exe
|
||||
|
||||
godot-editor-linux:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
shell: bash
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install build-essential scons pkg-config libx11-dev libxcursor-dev libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-v4.sh
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-editor-linux.zip
|
||||
path: spine-godot/godot/bin/godot.linuxbsd.editor.x86_64
|
||||
|
||||
godot-editor-macos:
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
shell: bash
|
||||
run: |
|
||||
./spine-godot/build/install-macos-vulkan-sdk.sh
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-v4.sh
|
||||
pushd spine-godot/godot/bin
|
||||
zip -r godot-editor-macos.zip Godot.app
|
||||
popd
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-editor-macos.zip
|
||||
path: spine-godot/godot/bin/godot-editor-macos.zip
|
||||
|
||||
godot-template-ios:
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
run: |
|
||||
./spine-godot/build/install-macos-vulkan-sdk.sh
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-templates-v4.sh ios
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-ios.zip
|
||||
path: spine-godot/godot/bin/ios.zip
|
||||
|
||||
godot-template-macos:
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
run: |
|
||||
./spine-godot/build/install-macos-vulkan-sdk.sh
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-templates-v4.sh macos
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-macos.zip
|
||||
path: spine-godot/godot/bin/macos.zip
|
||||
|
||||
godot-template-linux:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install build-essential scons pkg-config libx11-dev libxcursor-dev libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-templates-v4.sh linux
|
||||
|
||||
- name: Upload artifacts debug
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-linux-debug.zip
|
||||
path: spine-godot/godot/bin/linux_x11_64_debug
|
||||
|
||||
- name: Upload artifacts release
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-linux-release.zip
|
||||
path: spine-godot/godot/bin/linux_x11_64_release
|
||||
|
||||
godot-template-windows:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
shell: bash
|
||||
run: |
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-templates-v4.sh windows
|
||||
|
||||
- name: Upload artifacts debug
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-windows-debug.zip
|
||||
path: spine-godot/godot/bin/windows_debug_x86_64.exe
|
||||
|
||||
- name: Upload artifacts release
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-windows-release.zip
|
||||
path: spine-godot/godot/bin/windows_release_x86_64.exe
|
||||
|
||||
godot-template-android:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
# Azure repositories are not reliable, we need to prevent azure giving us packages.
|
||||
- name: Make apt sources.list use the default Ubuntu repositories
|
||||
run: |
|
||||
sudo rm -f /etc/apt/sources.list.d/*
|
||||
sudo cp -f spine-godot/build/sources.lst /etc/apt/sources.list
|
||||
sudo apt-get update
|
||||
|
||||
- name: Set up Java 11
|
||||
uses: actions/setup-java@v1
|
||||
with:
|
||||
java-version: 11
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
shell: bash
|
||||
run: |
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-templates-v4.sh android
|
||||
|
||||
- name: Upload artifacts debug
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-android-debug.zip
|
||||
path: spine-godot/godot/bin/android_debug.apk
|
||||
|
||||
- name: Upload artifacts release
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-android-release.zip
|
||||
path: spine-godot/godot/bin/android_release.apk
|
||||
|
||||
- name: Upload artifacts source
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-android-source.zip
|
||||
path: spine-godot/godot/bin/android_source.zip
|
||||
|
||||
godot-template-web:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up Emscripten latest
|
||||
uses: mymindstorm/setup-emsdk@v11
|
||||
with:
|
||||
version: ${{env.EM_VERSION}}
|
||||
|
||||
- name: Verify Emscripten setup
|
||||
run: |
|
||||
emcc -v
|
||||
|
||||
- name: Setup python and scons
|
||||
uses: ./.github/actions/setup-godot-deps
|
||||
|
||||
- name: Build Godot artifact
|
||||
run: |
|
||||
./spine-godot/build/setup.sh $GODOT_TAG false
|
||||
./spine-godot/build/build-templates-v4.sh web
|
||||
|
||||
- name: Upload artifacts debug
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-web-debug.zip
|
||||
path: spine-godot/godot/bin/web_debug.zip
|
||||
|
||||
- name: Upload artifacts release
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: godot-template-web-release.zip
|
||||
path: spine-godot/godot/bin/web_release.zip
|
||||
|
||||
upload-to-s3:
|
||||
needs: [godot-editor-windows, godot-editor-linux, godot-editor-macos, godot-template-ios, godot-template-macos, godot-template-windows, godot-template-linux, godot-template-android, godot-template-web]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Download godot-editor-windows artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-editor-windows.zip
|
||||
|
||||
- name: Download godot-editor-linux artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-editor-linux.zip
|
||||
|
||||
- name: Download godot-editor-macos artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-editor-macos.zip
|
||||
|
||||
- name: Download godot-template-ios artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-ios.zip
|
||||
|
||||
- name: Download godot-template-macos artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-macos.zip
|
||||
|
||||
- name: Download godot-template-windows-release artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-windows-release.zip
|
||||
|
||||
- name: Download godot-template-windows-debug artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-windows-debug.zip
|
||||
|
||||
- name: Download godot-template-linux-release artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-linux-release.zip
|
||||
|
||||
- name: Download godot-template-linux-debug artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-linux-debug.zip
|
||||
|
||||
- name: Download godot-template-android-release artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-android-release.zip
|
||||
|
||||
- name: Download godot-template-android-debug artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-android-debug.zip
|
||||
|
||||
- name: Download godot-template-android-source artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-android-source.zip
|
||||
|
||||
- name: Download godot-template-web-release artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-web-release.zip
|
||||
|
||||
- name: Download godot-template-web-debug artifact
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: godot-template-web-debug.zip
|
||||
|
||||
- name: Upload artifacts to S3
|
||||
shell: bash
|
||||
if: env.AWS_ACCESS_KEY_ID != null
|
||||
run: |
|
||||
BRANCH=${GITHUB_REF#refs/heads/}
|
||||
echo "branch: $BRANCH"
|
||||
mv godot.windows.editor.x86_64.exe godot-$BRANCH-$GODOT_TAG.exe
|
||||
mv godot.linuxbsd.editor.x86_64 godot-$BRANCH-$GODOT_TAG
|
||||
zip godot-editor-windows.zip godot-$BRANCH-$GODOT_TAG.exe
|
||||
zip godot-editor-linux.zip godot-$BRANCH-$GODOT_TAG
|
||||
aws s3 cp godot-editor-windows.zip s3://spine-godot/$BRANCH/$GODOT_TAG/
|
||||
aws s3 cp godot-editor-linux.zip s3://spine-godot/$BRANCH/$GODOT_TAG/
|
||||
aws s3 cp godot-editor-macos.zip s3://spine-godot/$BRANCH/$GODOT_TAG/
|
||||
echo "$GODOT_VERSION" > version.txt
|
||||
ls -lah
|
||||
zip spine-godot-templates-$BRANCH-$GODOT_TAG.zip ios.zip macos.zip windows_debug_x86_64.exe windows_release_x86_64.exe linux_x11_64_debug linux_x11_64_release web_debug.zip web_release.zip android_release.apk android_debug.apk android_source.zip version.txt
|
||||
aws s3 cp spine-godot-templates-$BRANCH-$GODOT_TAG.zip s3://spine-godot/$BRANCH/$GODOT_TAG/spine-godot-templates-$BRANCH-$GODOT_TAG.tpz
|
||||
|
||||
|
||||
24
.github/workflows/spine-godot-v4.yml
vendored
24
.github/workflows/spine-godot-v4.yml
vendored
@ -1,20 +1,26 @@
|
||||
name: Build and Publish Godot 4.0 editor and templates
|
||||
name: Build and publish Godot 4.x editor and templates
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- ".github/workflows/spine-godot.yml"
|
||||
- 'spine-godot/**'
|
||||
- 'spine-cpp/**'
|
||||
workflow_dispatch:
|
||||
workflow_call:
|
||||
inputs:
|
||||
godot_tag:
|
||||
required: true
|
||||
type: string
|
||||
godot_version:
|
||||
required: true
|
||||
type: string
|
||||
godot_mono:
|
||||
required: true
|
||||
type: boolean
|
||||
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_EC2_METADATA_DISABLED: true
|
||||
EM_VERSION: 3.1.18
|
||||
GODOT_TAG: 4.0.3-stable
|
||||
GODOT_VERSION: 4.0.3.stable
|
||||
GODOT_TAG: ${{ inputs.godot_tag }}
|
||||
GODOT_VERSION: ${{ inputs.godot_version }}
|
||||
GODOT_MONO: ${{ inputs.godot_mono }}
|
||||
|
||||
jobs:
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user