GH: Implement version-based artifact naming

This commit is contained in:
Serhii Snitsaruk 2023-08-01 18:06:19 +02:00
parent cccdf9578a
commit b9066e609a
7 changed files with 83 additions and 64 deletions

View File

@ -2,22 +2,22 @@ name: 🤖 Android builds
on: on:
workflow_call: workflow_call:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
workflow_dispatch: workflow_dispatch:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
@ -77,13 +77,13 @@ jobs:
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Clone LimboAI module - name: Clone LimboAI module
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
path: modules/limboai path: modules/limboai
ref: ${{ inputs.limboai_treeish }} ref: ${{ inputs.limboai-treeish }}
- name: Set up Java 11 - name: Set up Java 11
uses: actions/setup-java@v3 uses: actions/setup-java@v3
@ -127,12 +127,15 @@ jobs:
name: Make Android package name: Make Android package
needs: android-builds needs: android-builds
env:
NAME_PREFIX: godot.${{inputs.godot-treeish}}.limboai+${{inputs.limboai-treeish}}
steps: steps:
- name: Clone Godot - name: Clone Godot
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Download Android template builds - name: Download Android template builds
uses: actions/download-artifact@v3 uses: actions/download-artifact@v3
@ -179,11 +182,11 @@ jobs:
- name: Upload Android libs - name: Upload Android libs
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: godot.limboai.android-lib name: ${{env.NAME_PREFIX}}.android-lib
path: bin/godot-lib.* path: bin/godot-lib.*
- name: Upload Android templates - name: Upload Android templates
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: godot.limboai.export-templates name: ${{env.NAME_PREFIX}}.export-templates
path: out/* path: out/*

View File

@ -2,22 +2,22 @@ name: 🍏 iOS builds
on: on:
workflow_call: workflow_call:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
workflow_dispatch: workflow_dispatch:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
@ -79,13 +79,13 @@ jobs:
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Clone LimboAI module - name: Clone LimboAI module
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
path: modules/limboai path: modules/limboai
ref: ${{ inputs.limboai_treeish }} ref: ${{ inputs.limboai-treeish }}
- name: Set up Python 3.x - name: Set up Python 3.x
uses: actions/setup-python@v4 uses: actions/setup-python@v4
@ -135,13 +135,16 @@ jobs:
name: Package iOS templates name: Package iOS templates
needs: ios-builds needs: ios-builds
env:
NAME_PREFIX: godot.${{inputs.godot-treeish}}.limboai+${{inputs.limboai-treeish}}
steps: steps:
- name: Clone Godot - name: Clone Godot
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Set up Vulkan SDK - name: Set up Vulkan SDK
run: | run: |
@ -179,7 +182,7 @@ jobs:
- name: Upload template bundle - name: Upload template bundle
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: godot.limboai.export-templates name: ${{env.NAME_PREFIX}}.export-templates
path: out/* path: out/*
- name: Delete templates artifact - name: Delete templates artifact

View File

@ -2,27 +2,26 @@ name: 🐧 Linux builds
on: on:
workflow_call: workflow_call:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
workflow_dispatch: workflow_dispatch:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
# Global Settings # Global Settings
env: env:
SCONS_CACHE_LIMIT: 4096 SCONS_CACHE_LIMIT: 4096
@ -102,17 +101,23 @@ jobs:
BIN: godot.linuxbsd.${{matrix.target}}.${{matrix.arch}}${{ matrix.build-mono == true && '.mono' || '' }} BIN: godot.linuxbsd.${{matrix.target}}.${{matrix.arch}}${{ matrix.build-mono == true && '.mono' || '' }}
steps: steps:
- name: Dump environment
env:
ENVI: ${{ toJson(env) }}
run: |
echo "$ENVI"
- name: Clone Godot - name: Clone Godot
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Clone LimboAI module - name: Clone LimboAI module
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
path: modules/limboai path: modules/limboai
ref: ${{ inputs.limboai_treeish }} ref: ${{ inputs.limboai-treeish }}
# About sed see: https://github.com/godotengine/buildroot/issues/6 # About sed see: https://github.com/godotengine/buildroot/issues/6
- name: Set up buildroot x86_64 - name: Set up buildroot x86_64
@ -175,7 +180,9 @@ jobs:
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
env: env:
BUILD_NAME: godot.limboai.${{matrix.target}}.linux.${{matrix.arch}}${{ matrix.build-mono == true && '.mono' || '' }} NAME_PREFIX: godot.${{inputs.godot-treeish}}.limboai+${{inputs.limboai-treeish}}
NAME_EDITOR: ${{env.NAME_PREFIX}}.${{matrix.target}}.linux.${{matrix.arch}}${{ matrix.build-mono == true && '.mono' || '' }}
NAME_TEMPLATES: ${{env.NAME_PREFIX}}.export-templates
with: with:
name: ${{ startsWith(matrix.target, 'template') && 'godot.limboai.export_templates' || env.BUILD_NAME }} name: ${{ startsWith(matrix.target, 'template') && env.NAME_TEMPLATES || env.NAME_EDITOR }}
path: out/* path: out/*

View File

@ -2,22 +2,22 @@ name: 🍎 macOS builds
on: on:
workflow_call: workflow_call:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
workflow_dispatch: workflow_dispatch:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
@ -125,13 +125,13 @@ jobs:
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Clone LimboAI module - name: Clone LimboAI module
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
path: modules/limboai path: modules/limboai
ref: ${{ inputs.limboai_treeish }} ref: ${{ inputs.limboai-treeish }}
- name: Set up Python 3.x - name: Set up Python 3.x
uses: actions/setup-python@v4 uses: actions/setup-python@v4
@ -198,13 +198,16 @@ jobs:
name: Make macOS Bundles name: Make macOS Bundles
needs: macos-builds needs: macos-builds
env:
NAME_PREFIX: godot.${{inputs.godot-treeish}}.limboai+${{inputs.limboai-treeish}}
steps: steps:
- name: Clone Godot - name: Clone Godot
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Download editor artifact - name: Download editor artifact
uses: actions/download-artifact@v3 uses: actions/download-artifact@v3
@ -228,7 +231,7 @@ jobs:
- name: Upload editor bundle - name: Upload editor bundle
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: godot.limboai.editor.macos.universal name: ${{env.NAME_PREFIX}}.editor.macos.universal
path: out/editor/* path: out/editor/*
- name: Download templates artifact - name: Download templates artifact
@ -265,5 +268,5 @@ jobs:
- name: Upload templates bundle - name: Upload templates bundle
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: godot.limboai.export-templates name: ${{env.NAME_PREFIX}}.export-templates
path: out/* path: out/*

View File

@ -2,11 +2,11 @@ name: 🔗 All Builds
on: on:
workflow_dispatch: workflow_dispatch:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
@ -16,40 +16,40 @@ jobs:
name: 🤖 Android name: 🤖 Android
uses: ./.github/workflows/android.yml uses: ./.github/workflows/android.yml
with: with:
godot_treeish: ${{ inputs.godot_treeish }} godot-treeish: ${{ inputs.godot-treeish }}
limboai_treeish: ${{ inputs.limboai_treeish }} limboai-treeish: ${{ inputs.limboai-treeish }}
ios-build: ios-build:
name: 🍏 iOS name: 🍏 iOS
uses: ./.github/workflows/ios.yml uses: ./.github/workflows/ios.yml
with: with:
godot_treeish: ${{ inputs.godot_treeish }} godot-treeish: ${{ inputs.godot-treeish }}
limboai_treeish: ${{ inputs.limboai_treeish }} limboai-treeish: ${{ inputs.limboai-treeish }}
linux-build: linux-build:
name: 🐧 Linux name: 🐧 Linux
uses: ./.github/workflows/linux.yml uses: ./.github/workflows/linux.yml
with: with:
godot_treeish: ${{ inputs.godot_treeish }} godot-treeish: ${{ inputs.godot-treeish }}
limboai_treeish: ${{ inputs.limboai_treeish }} limboai-treeish: ${{ inputs.limboai-treeish }}
macos-build: macos-build:
name: 🍎 macOS name: 🍎 macOS
uses: ./.github/workflows/macos.yml uses: ./.github/workflows/macos.yml
with: with:
godot_treeish: ${{ inputs.godot_treeish }} godot-treeish: ${{ inputs.godot-treeish }}
limboai_treeish: ${{ inputs.limboai_treeish }} limboai-treeish: ${{ inputs.limboai-treeish }}
windows-build: windows-build:
name: 🪟 Windows name: 🪟 Windows
uses: ./.github/workflows/windows.yml uses: ./.github/workflows/windows.yml
with: with:
godot_treeish: ${{ inputs.godot_treeish }} godot-treeish: ${{ inputs.godot-treeish }}
limboai_treeish: ${{ inputs.limboai_treeish }} limboai-treeish: ${{ inputs.limboai-treeish }}
web-build: web-build:
name: 🌐 Web name: 🌐 Web
uses: ./.github/workflows/web.yml uses: ./.github/workflows/web.yml
with: with:
godot_treeish: ${{ inputs.godot_treeish }} godot-treeish: ${{ inputs.godot-treeish }}
limboai_treeish: ${{ inputs.limboai_treeish }} limboai-treeish: ${{ inputs.limboai-treeish }}

View File

@ -2,22 +2,22 @@ name: 🌐 Web builds
on: on:
workflow_call: workflow_call:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
workflow_dispatch: workflow_dispatch:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
@ -56,19 +56,20 @@ jobs:
env: env:
CACHE_NAME: godot.web.${{matrix.target}}${{ matrix.dlink_enabled == true && '.dlink' || '' }} CACHE_NAME: godot.web.${{matrix.target}}${{ matrix.dlink_enabled == true && '.dlink' || '' }}
NAME_PREFIX: godot.${{inputs.godot-treeish}}.limboai+${{inputs.limboai-treeish}}
steps: steps:
- name: Clone Godot - name: Clone Godot
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Clone LimboAI module - name: Clone LimboAI module
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
path: modules/limboai path: modules/limboai
ref: ${{ inputs.limboai_treeish }} ref: ${{ inputs.limboai-treeish }}
- name: Set up Emscripten latest - name: Set up Emscripten latest
uses: mymindstorm/setup-emsdk@v12 uses: mymindstorm/setup-emsdk@v12
@ -115,5 +116,5 @@ jobs:
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: godot.limboai.export-templates name: ${{env.NAME_PREFIX}}.export-templates
path: out/* path: out/*

View File

@ -2,22 +2,22 @@ name: 🪟 Windows builds
on: on:
workflow_call: workflow_call:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
workflow_dispatch: workflow_dispatch:
inputs: inputs:
godot_treeish: godot-treeish:
description: A tag, branch or commit hash in the Godot repository. description: A tag, branch or commit hash in the Godot repository.
type: string type: string
default: master default: master
limboai_treeish: limboai-treeish:
description: A tag, branch or commit hash in the LimboAI repository. description: A tag, branch or commit hash in the LimboAI repository.
type: string type: string
default: master default: master
@ -106,13 +106,13 @@ jobs:
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
repository: godotengine/godot repository: godotengine/godot
ref: ${{ inputs.godot_treeish }} ref: ${{ inputs.godot-treeish }}
- name: Clone LimboAI module - name: Clone LimboAI module
uses: actions/checkout@v3 uses: actions/checkout@v3
with: with:
path: modules/limboai path: modules/limboai
ref: ${{ inputs.limboai_treeish }} ref: ${{ inputs.limboai-treeish }}
- name: Set up Python 3.x - name: Set up Python 3.x
uses: actions/setup-python@v4 uses: actions/setup-python@v4
@ -166,7 +166,9 @@ jobs:
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
env: env:
BUILD_NAME: godot.limboai.${{matrix.target}}.windows.${{matrix.arch}}${{ matrix.build-mono == true && '.mono' || '' }} NAME_PREFIX: godot.${{inputs.godot-treeish}}.limboai+${{inputs.limboai-treeish}}
NAME_EDITOR: ${{env.NAME_PREFIX}}.${{matrix.target}}.windows.${{matrix.arch}}${{ matrix.build-mono == true && '.mono' || '' }}
NAME_TEMPLATES: ${{env.NAME_PREFIX}}.export-templates
with: with:
name: ${{ startsWith(matrix.target, 'template') && 'godot.limboai.export_templates' || env.BUILD_NAME }} name: ${{ startsWith(matrix.target, 'template') && env.NAME_TEMPLATES || env.NAME_EDITOR }}
path: out/* path: out/*