Release #114
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
on: | |
workflow_dispatch: | |
inputs: | |
tag: | |
description: "tag: git tag you want create. (sample 1.0.0)" | |
required: true | |
dry-run: | |
description: "dry-run: false = create release/nuget. true = never create release/nuget." | |
required: true | |
default: false | |
type: boolean | |
env: | |
GIT_TAG: ${{ github.event.inputs.tag }} | |
jobs: | |
update-version-number: | |
uses: ./.github/workflows/update-version-number.yaml | |
with: | |
tag: ${{ github.event.inputs.tag }} | |
dry-run: ${{ fromJson(github.event.inputs.dry-run) }} | |
build-unity: | |
needs: [update-version-number] | |
runs-on: ubuntu-latest | |
env: | |
UNITY_LICENSE_FILE: ./tmp/ulf | |
UNITY_BIN: /opt/Unity/Editor/Unity | |
container: | |
image: gableroux/unity3d:2020.1.13f1-linux-il2cpp | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/cache@v3 | |
with: | |
path: Library | |
key: Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }} | |
restore-keys: | | |
Library- | |
- name: Decode Unity License File | |
run: | | |
mkdir ./tmp | |
echo -n ${{ secrets.UNITY_LICENSE_2020_1_BASE64 }} | base64 --decode > $UNITY_LICENSE_FILE | |
- run: $UNITY_BIN -quit -batchmode -nographics -silent-crashes -logFile -manualLicenseFile $UNITY_LICENSE_FILE || exit 0 | |
- uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: | | |
8.0.x | |
- name: Build SourceGenerator | |
run: | | |
dotnet build -c Release ./VContainer.SourceGenerator /p:Version=${{ env.GIT_TAG }} | |
dotnet build -c Release ./VContainer.SourceGenerator.Roslyn3 /p:Version=${{ env.GIT_TAG }} | |
- name: Export unitypackage | |
run: $UNITY_BIN -quit -batchmode -nographics -logFile /dev/stdout -exportPackage Assets/VContainer/Runtime Assets/VContainer/Editor VContainer.${{ env.GIT_TAG }}.unitypackage -projectPath ./ | |
working-directory: VContainer | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: VContainer.${{ env.GIT_TAG }} | |
path: | | |
./VContainer/VContainer.${{ env.GIT_TAG }}.unitypackage | |
./VContainer.SourceGenerator/bin/Release/netstandard2.0/VContainer.SourceGenerator.dll | |
./VContainer.SourceGenerator.Roslyn3/bin/Release/netstandard2.0/VContainer.SourceGenerator.Roslyn3.dll | |
create-release: | |
needs: [build-unity] | |
runs-on: ubuntu-latest | |
if: github.event.inputs.dry-run == 'false' | |
permissions: | |
contents: write | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/download-artifact@v4 | |
- uses: softprops/action-gh-release@v1 | |
id: create_release | |
with: | |
tag_name: ${{ env.GIT_TAG }} | |
name: v${{ env.GIT_TAG }} | |
draft: true | |
prerelease: false | |
generate_release_notes: true | |
files: | | |
./VContainer/VContainer.${{ env.GIT_TAG }}.unitypackage | |
./VContainer.SourceGenerator/bin/Release/netstandard2.0/VContainer.SourceGenerator.dll | |
./VContainer.SourceGenerator.Roslyn3/bin/Release/netstandard2.0/VContainer.SourceGenerator.Roslyn3.dll | |