From 67876e7c146bf07acef7e9a863e749e464bbe8ad Mon Sep 17 00:00:00 2001 From: Andrew Berezovskyi Date: Sat, 19 Oct 2024 21:53:58 +0200 Subject: [PATCH] build: new approach to cutting releases Signed-off-by: Andrew Berezovskyi --- .github/workflows/main.yml | 28 +++++++++++++++++----------- CHANGELOG.md | 9 +++++++-- OSLC4Net_SDK/Directory.Build.props | 9 +++------ 3 files changed, 27 insertions(+), 19 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 36d61ee..dc5cbfb 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -11,13 +11,17 @@ on: release: types: - published # Run the workflow when a new GitHub release is published - workflow_dispatch: - inputs: - release: - description: "Make the release build" - required: false - type: boolean - default: false + # workflow_dispatch: + # inputs: + # release: + # description: "Make the release build" + # required: false + # type: boolean + # default: false + # version: + # description: "Version string" + # required: true + # type: string env: DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 @@ -43,6 +47,7 @@ jobs: working-directory: OSLC4Net_SDK/ env: NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages + # TAG_VALUE: ${{ github.ref_name || inputs.version }} steps: - name: Checkout Code uses: actions/checkout@v4 @@ -98,19 +103,20 @@ jobs: - name: Pack NuGet packages (snapshot) shell: pwsh run: | - dotnet pack -c Release --version-suffix "ts.$(Get-Date -Format 'yyyyMMddHHmm')" -o ${{ env.NuGetDirectory }} + dotnet pack -c Release -o ${{ env.NuGetDirectory }} if: | success() && github.ref == 'refs/heads/main' && matrix.version.target == 'net8.0' && matrix.os == 'windows-latest' - && ! (github.event_name == 'release' || inputs.release ) + && ! ( github.event_name == 'release' || inputs.release) - name: Pack NuGet packages (release) shell: pwsh run: | - dotnet pack -c Release -o ${{ env.NuGetDirectory }} + $env:GITHUB_REF -match '^refs/tags/v(.*)$' | Set-Variable VERSION $matches[1] + dotnet pack -c Release -p:RELEASE_VERSION=$VERSION -o ${{ env.NuGetDirectory }} if: | success() && matrix.version.target == 'net8.0' && matrix.os == 'windows-latest' - && (github.event_name == 'release' || inputs.release ) + && ( github.event_name == 'release' || inputs.release ) - uses: actions/upload-artifact@v4 with: name: nuget diff --git a/CHANGELOG.md b/CHANGELOG.md index 90f203e..b4d14b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 Legend: 🔒️ security fixes; ⚡️ major features/updates; ❗️ breaking changes; 👉 important notes. -## [0.4.4] - 2024-10-19 +## [0.4.5] - 2024-10-19 ### Security @@ -37,6 +37,10 @@ This release does not introduce deprecations. - Example and test project had `false` property set to prevent pushing their packages to NuGet. +## [0.4.4] - 2024-10-19 + +YANKED - deploy to NuGet.org did not succeed. + ## [0.4.3] - 2024-10-19 ### Security @@ -210,7 +214,8 @@ This release does not remove any features. This release does not contain bug fixes. -[UNRELEASED]: https://github.com/OSLC/oslc4net/compare/v0.4.4...HEAD +[UNRELEASED]: https://github.com/OSLC/oslc4net/compare/v0.4.5...HEAD +[0.4.5]: https://github.com/OSLC/oslc4net/releases/tag/v0.4.5 [0.4.4]: https://github.com/OSLC/oslc4net/releases/tag/v0.4.4 [0.4.3]: https://github.com/OSLC/oslc4net/releases/tag/v0.4.3 [0.4.2]: https://github.com/OSLC/oslc4net/releases/tag/v0.4.2 diff --git a/OSLC4Net_SDK/Directory.Build.props b/OSLC4Net_SDK/Directory.Build.props index c050b98..d497482 100644 --- a/OSLC4Net_SDK/Directory.Build.props +++ b/OSLC4Net_SDK/Directory.Build.props @@ -1,13 +1,10 @@ - 0.4.3 - $(VersionSuffix) - - + $(RELEASE_VERSION) + 999.9.9 + ts.$([System.DateTime]::UtcNow.ToString(`yyyyMMddHHmm`)) EPL-1.0 Andrii Berezovskyi and OSLC4Net contributors - README.md https://github.com/OSLC/oslc4net/ https://github.com/OSLC/oslc4net/