Skip to content

Fix jvm publications (#706) #5

Fix jvm publications (#706)

Fix jvm publications (#706) #5

Workflow file for this run

name: Deploy release
on:
push:
tags:
- '\d+.\d+.\d+-\d+.\d+.\d+-SNAPSHOT'
- '\d+.\d+.\d+-\d+.\d+.\d+'
concurrency:
group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}-trigger_on_tag
cancel-in-progress: true
jobs:
create-draft-release:
name: πŸ“ Create draft release
uses: ./.github/workflows/deploy_create_draft_release.yml
secrets: inherit # needed so that this sub workflow can also access github secrets for this workflow
setup-build-variables:
name: πŸ› οΈ Setup build variables
runs-on: ubuntu-latest
needs:
- create-draft-release
steps:
- run: |
echo "Setup done"
outputs: # defined here explicitly, so it only needs to be defined here. All other workflows can just reference it
godot-kotlin-jvm-version: "0.10.0-4.3.0"
godot-version: "4.3-stable"
jvm-version: "17"
build-jvm:
name: β˜• Build Jvm
uses: ./.github/workflows/build_jvm.yml
needs:
- setup-build-variables
with:
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
jvm-version: ${{ needs.setup-build-variables.outputs['jvm-version'] }}
build-android:
name: πŸ€– Build and Assemble Android
uses: ./.github/workflows/build_android.yml
needs:
- setup-build-variables
with:
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
jvm-version: ${{ needs.setup-build-variables.outputs['jvm-version'] }}
build-ios:
name: 🍏 Build iOS
uses: ./.github/workflows/build_ios.yml
needs:
- setup-build-variables
with:
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
build-linux:
name: 🐧 Build Linux
uses: ./.github/workflows/build_linux.yml
needs:
- setup-build-variables
with:
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
build-macos:
name: 🍎 Build macOS
uses: ./.github/workflows/build_macos.yml
needs:
- setup-build-variables
with:
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
build-windows:
name: πŸͺŸ Build Windows
uses: ./.github/workflows/build_windows.yml
needs:
- setup-build-variables
with:
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
assemble-macos:
name: 🍎 Assemble macos
uses: ./.github/workflows/assemble_macos.yml
needs:
- setup-build-variables
- build-jvm
- build-macos
with:
godot-kotlin-jvm-version: ${{ needs.setup-build-variables.outputs['godot-kotlin-jvm-version'] }}
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
assemble-ios:
name: 🍏 Assemble ios
uses: ./.github/workflows/assemble_ios.yml
needs:
- setup-build-variables
- build-ios
with:
godot-kotlin-jvm-version: ${{ needs.setup-build-variables.outputs['godot-kotlin-jvm-version'] }}
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
assemble-linux:
name: 🐧 Assemble linux
uses: ./.github/workflows/assemble_linux.yml
needs:
- setup-build-variables
- build-jvm
- build-linux
with:
godot-kotlin-jvm-version: ${{ needs.setup-build-variables.outputs['godot-kotlin-jvm-version'] }}
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
assemble-windows:
name: πŸͺŸ Assemble windows
uses: ./.github/workflows/assemble_windows.yml
needs:
- setup-build-variables
- build-jvm
- build-windows
with:
godot-kotlin-jvm-version: ${{ needs.setup-build-variables.outputs['godot-kotlin-jvm-version'] }}
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
assemble-export-templates:
name: πŸ€–+🍏+🐧+🍎+πŸͺŸ Assemble export templates
uses: ./.github/workflows/assemble_export_templates.yml
needs:
- setup-build-variables
- build-android # uploads finished export template directly
- assemble-ios # export templates need to be packed into xcode project
- build-linux # uploads finished export template directly
- assemble-macos # export templates need to be packed into app
- build-windows # uploads finished export template directly
with:
godot-kotlin-jvm-version: ${{ needs.setup-build-variables.outputs['godot-kotlin-jvm-version'] }}
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
deploy-godot:
name: πŸš€ Deploy godot artifacts to Github
uses: ./.github/workflows/deploy_godot.yml
needs:
- setup-build-variables
- build-jvm
- build-android
- assemble-ios
- assemble-linux
- assemble-macos
- assemble-windows
- assemble-export-templates
with:
godot-kotlin-jvm-version: ${{ needs.setup-build-variables.outputs['godot-kotlin-jvm-version'] }}
secrets: inherit # needed so that this sub workflow can also access github secrets for this workflow
deploy-jvm:
name: πŸš€ Deploy Jvm artifacts
uses: ./.github/workflows/deploy_jvm.yml
needs:
- setup-build-variables
- build-jvm
- deploy-godot # we define an explicit dependency on the github upload in case something goes wrong there. Github release purging is easier than from maven central and the likes
with:
godot-kotlin-jvm-version: ${{ needs.setup-build-variables.outputs['godot-kotlin-jvm-version'] }}
godot-version: ${{ needs.setup-build-variables.outputs['godot-version'] }}
jvm-version: ${{ needs.setup-build-variables.outputs['jvm-version'] }}
secrets: inherit # needed so that this sub workflow can also access github secrets for this workflow
deploy-docs:
name: πŸš€ Deploy Docs
uses: ./.github/workflows/deploy_docs.yml
needs: # only if all deployments are successful we want to deploy the docs
- deploy-godot
- deploy-jvm
secrets: inherit # needed so that this sub workflow can also access github secrets for this workflow