From 1ee5e65ae2af4c9cecd7f6fc0ddd653c1070f3a7 Mon Sep 17 00:00:00 2001 From: hadashiA Date: Mon, 29 Jan 2024 11:23:38 +0900 Subject: [PATCH 1/3] [CI] Release automate more --- .github/workflows/release.yaml | 63 ++++++++--- .github/workflows/test.yaml | 36 +++++- .github/workflows/update-version-number.yaml | 113 +++++++++++++++++++ 3 files changed, 194 insertions(+), 18 deletions(-) create mode 100644 .github/workflows/update-version-number.yaml diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 9649d6d..a5741a5 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,3 +1,5 @@ +name: Release + on: workflow_dispatch: inputs: @@ -9,25 +11,52 @@ on: 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-dotnet: + needs: [update-version-number] runs-on: ubuntu-latest timeout-minutes: 10 steps: - - uses: actions/checkout@v3 - with: - ref: ${{ github.event.inputs.tag }} - - uses: actions/setup-dotnet@v3 - with: - dotnet-version: | - 8.0.x - - run: dotnet build -c Release - - run: dotnet test -c Release --no-build - - run: dotnet pack -c Release --no-build -o ./publish - - uses: actions/upload-artifact@v3 - with: - name: nuget - path: ./publish - - name: Publish - if: github.event.inputs.dry-run == false - run: nuget push ./publish/*.nupkg -Source 'https://api.nuget.org/v3/index.json' -ApiKey ${{secrets.NUGET_API_KEY}} + - uses: actions/checkout@v3 + - uses: actions/setup-dotnet@v3 + with: + dotnet-version: | + 8.0.x + - run: dotnet build -c Release + - run: dotnet test -c Release --no-build + - run: dotnet pack -c Release --no-build -o ./publish + - uses: actions/upload-artifact@v3 + with: + name: nuget + path: ./publish + # - name: Publish + # if: github.event.inputs.dry-run == 'false' + # run: dotnet nuget push ./publish/*.nupkg -s 'https://api.nuget.org/v3/index.json' -k ${{secrets.NUGET_API_KEY}} + + create-release: + if: github.event.inputs.dry-run == 'false' + needs: [update-version-number, build-dotnet] + runs-on: ubuntu-latest + permissions: + contents: write + timeout-minutes: 10 + steps: + # Create Releases + - 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 diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index e8ed643..9367e88 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -20,4 +20,38 @@ jobs: dotnet-version: | 8.0.x - run: dotnet build -c Debug - - run: dotnet test -c Debug --no-build + - run: dotnet test -c Debug --no-build + + test-unity: + runs-on: ubuntu-latest + strategy: + matrix: + unityVersion: + - 2021.3.34f1 + - 2022.2.21f1 + - 2022.3.18f1 + include: + - unityVersion: 2021.3.34f1 + license: UNITY_LICENSE_2021_3 + - unityVersion: 2022.2.21f1 + license: UNITY_LICENSE_2022_2 + - unityVersion: 2022.3.18f1 + license: UNITY_LICENSE_2022_3 + steps: + - uses: actions/checkout@v2 + - uses: actions/cache@v2 + with: + path: VYaml.Unity/Library + key: Library-VYaml-${{ matrix.unityVersion }} + restore-keys: | + Library-VYaml- + Library- + - uses: game-ci/unity-test-runner@v4 + env: + UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} + UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} + UNITY_LICENSE: ${{ secrets[matrix.license] }} + with: + projectPath: ./VYaml.Unity + githubToken: ${{ secrets.GITHUB_TOKEN }} + diff --git a/.github/workflows/update-version-number.yaml b/.github/workflows/update-version-number.yaml new file mode 100644 index 0000000..94859c2 --- /dev/null +++ b/.github/workflows/update-version-number.yaml @@ -0,0 +1,113 @@ +name: Update Version Number + +on: + workflow_dispatch: + inputs: + tag: + description: "git tag you want create. (sample 1.0.0)" + required: true + type: string + dry-run: + description: "true to simularate commit but not push change." + required: true + type: boolean + push-tag: + description: "true = push tag. false = no push tag." + required: false + type: boolean + default: true + + workflow_call: + inputs: + tag: + description: "git tag you want create. (sample 1.0.0)" + required: true + type: string + dry-run: + description: "true to simularate commit but not push change." + required: true + type: boolean + push-tag: + description: "true = push tag. false = no push tag." + required: false + type: boolean + default: true + outputs: + sha: + description: "Git commit sha has changed." + value: ${{ jobs.update-packagejson.outputs.sha }} + branch-name: + description: Git branch name created. + value: ${{ jobs.update-packagejson.outputs.branch-name }} + is-branch-created: + description: Indicate is Git branch created or not. + value: ${{ jobs.update-packagejson.outputs.is-branch-created }} + +jobs: + update-version-number: + runs-on: ubuntu-latest + timeout-minutes: 5 + outputs: + sha: ${{ steps.commit.outputs.sha }} + branch-name: ${{ steps.configure.outputs.branch-name }} + is-branch-created: ${{ steps.configure.outputs.is-branch-created }} + steps: + - name: Configure Output variables + id: configure + run: | + echo "git-tag=${{ inputs.tag }}" | tee -a "$GITHUB_OUTPUT" + echo "dry-run=${{ inputs.dry-run }}" | tee -a "$GITHUB_OUTPUT" + echo "branch-name=test-release/${{ inputs.tag }}" | tee -a "$GITHUB_OUTPUT" + echo "is-branch-created=${{ inputs.dry-run }}" | tee -a "$GITHUB_OUTPUT" + + - uses: actions/checkout@v4 + + - uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.3' + + - name: Update package.json ${{ steps.configure.outputs.git-tag }} + run: | + ruby -i -pe 'gsub(/"version"\s*:\s*"([\d\.]+)"/, %q{"version": "${{ steps.configure.outputs.git-tag }}"})' VYaml.Unity/Assets/VYaml/package.json + + - name: Update Directory.Build.props ${{ steps.configure.outputs.git-tag }} + run: | + ruby -i -pe 'gsub(%r{()[\d\.]+()}, %q{\1${{ steps.configure.outputs.git-tag }}\2})' Directory.Build.props + + - name: Update README.md ${{ steps.configure.outputs.git-tag }} + run: | + ruby -i -pe 'gsub(%r{(https://github.com/hadashiA/VYaml.git\?path=VYaml.Unity/Assets/VYaml#)[\d\.]+}, %q{\1${{ steps.configure.outputs.git-tag }}})' README.md + + - name: Check update on git + id: check_update + run: git diff --exit-code || echo "changed=1" | tee -a "$GITHUB_OUTPUT" + + - name: Commit files + id: commit + if: ${{ steps.check_update.outputs.changed == '1' }} + run: | + git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" + git config --local user.name "github-actions[bot]" + git commit -m "${{ steps.configure.outputs.git-tag }}" -a + echo "sha=$(git rev-parse HEAD)" | tee -a "$GITHUB_OUTPUT" + + - name: Create Tag + if: ${{ steps.check_update.outputs.changed == '1' && inputs.push-tag }} + run: git tag ${{ steps.configure.outputs.git-tag }} + + - name: Push changes + if: ${{ steps.configure.outputs.dry-run == 'false' && steps.check_update.outputs.changed == '1' }} + uses: ad-m/github-push-action@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + branch: ${{ github.ref }} + tags: ${{ inputs.push-tag }} + + - name: Push changes (dry-run) + if: ${{ steps.configure.outputs.dry-run == 'true' && steps.check_update.outputs.changed == '1' }} + uses: ad-m/github-push-action@master + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + branch: "refs/heads/${{ steps.configure.outputs.branch-name }}" + tags: false + force: true From 3b10a954f2c7014bfcf24272f9dcb59540a32978 Mon Sep 17 00:00:00 2001 From: hadashiA Date: Mon, 29 Jan 2024 11:34:05 +0900 Subject: [PATCH 2/3] [CI] Fix --- .github/workflows/release.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index a5741a5..befb976 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -39,9 +39,9 @@ jobs: with: name: nuget path: ./publish - # - name: Publish - # if: github.event.inputs.dry-run == 'false' - # run: dotnet nuget push ./publish/*.nupkg -s 'https://api.nuget.org/v3/index.json' -k ${{secrets.NUGET_API_KEY}} + - name: Publish + if: github.event.inputs.dry-run == 'false' + run: dotnet nuget push ./publish/*.nupkg -s 'https://api.nuget.org/v3/index.json' -k ${{secrets.NUGET_API_KEY}} create-release: if: github.event.inputs.dry-run == 'false' From 1bfd05ac86d217bbcb716d6118e4a144821216fe Mon Sep 17 00:00:00 2001 From: hadashiA Date: Mon, 29 Jan 2024 12:00:01 +0900 Subject: [PATCH 3/3] Fix source generator for unity --- VYaml.Unity/Assets/VYaml/Runtime/Plugins.meta | 8 -------- .../Runtime/Plugins/VYaml.SourceGenerator.dll | Bin 48128 -> 0 bytes .../VYaml/Runtime/VYaml.SourceGenerator.dll | Bin 0 -> 67584 bytes .../VYaml.SourceGenerator.dll.meta | 4 ++-- 4 files changed, 2 insertions(+), 10 deletions(-) delete mode 100644 VYaml.Unity/Assets/VYaml/Runtime/Plugins.meta delete mode 100644 VYaml.Unity/Assets/VYaml/Runtime/Plugins/VYaml.SourceGenerator.dll create mode 100644 VYaml.Unity/Assets/VYaml/Runtime/VYaml.SourceGenerator.dll rename VYaml.Unity/Assets/VYaml/Runtime/{Plugins => }/VYaml.SourceGenerator.dll.meta (96%) diff --git a/VYaml.Unity/Assets/VYaml/Runtime/Plugins.meta b/VYaml.Unity/Assets/VYaml/Runtime/Plugins.meta deleted file mode 100644 index 59e7a37..0000000 --- a/VYaml.Unity/Assets/VYaml/Runtime/Plugins.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: cfb47aa8e4e2040e8828318164e26f1d -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/VYaml.Unity/Assets/VYaml/Runtime/Plugins/VYaml.SourceGenerator.dll b/VYaml.Unity/Assets/VYaml/Runtime/Plugins/VYaml.SourceGenerator.dll deleted file mode 100644 index e7ad53db11c32f3deb7fb30a48a5c818e673a626..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48128 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 diff --git a/VYaml.Unity/Assets/VYaml/Runtime/VYaml.SourceGenerator.dll b/VYaml.Unity/Assets/VYaml/Runtime/VYaml.SourceGenerator.dll new file mode 100644 index 0000000000000000000000000000000000000000..b59de3ab27c29d57429fbf8ad0e20a5ac1f76e40 GIT binary patch literal 67584 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�> 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 literal 0 HcmV?d00001 diff --git a/VYaml.Unity/Assets/VYaml/Runtime/Plugins/VYaml.SourceGenerator.dll.meta b/VYaml.Unity/Assets/VYaml/Runtime/VYaml.SourceGenerator.dll.meta similarity index 96% rename from VYaml.Unity/Assets/VYaml/Runtime/Plugins/VYaml.SourceGenerator.dll.meta rename to VYaml.Unity/Assets/VYaml/Runtime/VYaml.SourceGenerator.dll.meta index 54d7835..1b16d0b 100644 --- a/VYaml.Unity/Assets/VYaml/Runtime/Plugins/VYaml.SourceGenerator.dll.meta +++ b/VYaml.Unity/Assets/VYaml/Runtime/VYaml.SourceGenerator.dll.meta @@ -10,8 +10,8 @@ PluginImporter: defineConstraints: [] isPreloaded: 0 isOverridable: 0 - isExplicitlyReferenced: 1 - validateReferences: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 platformData: - first: : Any