From 1b43590936d5dad33f2eebcc879f0fd8d42a9148 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:30:09 +0100 Subject: [PATCH 01/17] added release pipeline --- .github/workflows/release.yaml | 105 +++++++++++++++++++++++++++++++++ src/Concordium.Sdk.csproj | 16 +++-- 2 files changed, 116 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/release.yaml diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 00000000..6368788e --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,105 @@ +name: Relase + +on: + workflow_dispatch: + +env: + RUST_VERSION: 1.68 + +jobs: + build-native-ubuntu: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Set up Rust + run: | + rustup default ${{ env.RUST_VERSION }} + + - name: Build Rust Project + run: cargo build --manifest-path=./rust-bindings/Cargo.toml --release + + - name: Upload linux library + uses: actions/upload-artifact@master + with: + name: linux-library + path: ./rust-bindings/target/release/librust_bindings.so + + build-native-macos: + runs-on: macos-latest + + steps: + - uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Set up Rust + run: | + rustup default ${{ env.RUST_VERSION }} + + - name: Build Rust Project + run: cargo build --manifest-path=./rust-bindings/Cargo.toml --release + + - name: Upload macos library + uses: actions/upload-artifact@master + with: + name: macos-library + path: ./rust-bindings/target/release/librust_bindings.dylib + + build-native-windows: + runs-on: windows-latest + + steps: + - uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Set up Rust + run: | + rustup default ${{ env.RUST_VERSION }} + + - name: Build Rust Project + run: cargo build --manifest-path=./rust-bindings/Cargo.toml --release + + - name: Upload windows library + uses: actions/upload-artifact@master + with: + name: windows-library + path: ./rust-bindings/target/release/rust_bindings.dll + + build-and-release: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Download linux library + uses: actions/download-artifact@master + with: + name: linux-library + path: rust-bindings/target/release + + - name: Download macos library + uses: actions/download-artifact@master + with: + name: macos-library + path: rust-bindings/target/release + + - name: Download windows library + uses: actions/download-artifact@master + with: + name: windows-library + path: rust-bindings/target/release + + - name: Setup .NET + uses: actions/setup-dotnet@v3 + with: + dotnet-version: 6.0.x + + - name: Pack + run: dotnet pack -c Release -p:RunRustBuild=false -p:IncludeAllRustBuilds=true diff --git a/src/Concordium.Sdk.csproj b/src/Concordium.Sdk.csproj index 395aa72b..17e05315 100644 --- a/src/Concordium.Sdk.csproj +++ b/src/Concordium.Sdk.csproj @@ -3,7 +3,6 @@ net6.0 enable enable - 4.1.0 A .NET integration library written in C# which adds support for constructing and sending various transactions, as well as querying @@ -16,7 +15,7 @@ concordium;concordium-net-sdk;blockchain;sdk; Concordium ConcordiumNetSdk - 4.0.1 + 4.1.0 icon.png README.md MPL-2.0 @@ -25,6 +24,7 @@ true true true + false @@ -76,15 +76,21 @@ - + + True + \ PreserveNewest - + + True + \ PreserveNewest - + + True + \ PreserveNewest From c8090f8dc97466e6c76d6d6a92b331990400ebf6 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:36:07 +0100 Subject: [PATCH 02/17] trigger first workflow run --- .github/workflows/release.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 6368788e..52ef5011 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,6 +1,8 @@ name: Relase on: + pull_request: + branches: [ "rust_bindings" ] workflow_dispatch: env: From ba9869937ee26c39b78b6ebfcac5328a64aba2dd Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:37:12 +0100 Subject: [PATCH 03/17] Update release.yaml --- .github/workflows/release.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 52ef5011..6783ea3a 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -2,7 +2,6 @@ name: Relase on: pull_request: - branches: [ "rust_bindings" ] workflow_dispatch: env: From b9d98057ad1ab6b51652ddbceeb150e2871714f6 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:37:36 +0100 Subject: [PATCH 04/17] Update release.yaml --- .github/workflows/release.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 6783ea3a..6368788e 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,7 +1,6 @@ name: Relase on: - pull_request: workflow_dispatch: env: From aab83ccf72c8fcf07d88ec7dab9ce6e101560101 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:38:41 +0100 Subject: [PATCH 05/17] added needs --- .github/workflows/release.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 6368788e..887ae03c 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -71,6 +71,7 @@ jobs: path: ./rust-bindings/target/release/rust_bindings.dll build-and-release: + needs: [build-native-ubuntu, build-native-macos, build-native-windows] runs-on: ubuntu-latest steps: From 22e2ec953f6e0d09983be92cdfc5f1fd028df510 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:43:21 +0100 Subject: [PATCH 06/17] Added out commented push step --- .github/workflows/release.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 887ae03c..c05b07b6 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -104,3 +104,6 @@ jobs: - name: Pack run: dotnet pack -c Release -p:RunRustBuild=false -p:IncludeAllRustBuilds=true + + # - name: Publish to NuGet + # run: dotnet nuget push "src/bin/Release/*.nupkg" --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json From 7823504caf8b1461c056de528d006681d282d7ab Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:43:45 +0100 Subject: [PATCH 07/17] fix naming --- .github/workflows/release.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index c05b07b6..cedc46a0 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,4 +1,4 @@ -name: Relase +name: Release on: workflow_dispatch: From 3e2303008a4d524fb1705e4f34e242ed165636be Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:44:57 +0100 Subject: [PATCH 08/17] fix triggers --- .github/workflows/release.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index cedc46a0..c8dab67e 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,7 +1,8 @@ name: Release on: - workflow_dispatch: + pull_request: + workflow_dispatch: env: RUST_VERSION: 1.68 From 8bf9c2b8a66e5c774e4d08192d42345d0cf8b6e5 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 15:52:01 +0100 Subject: [PATCH 09/17] Update release.yaml --- .github/workflows/release.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index c8dab67e..c6ccbd1f 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,8 +1,8 @@ name: Release on: - pull_request: workflow_dispatch: + pull_request: env: RUST_VERSION: 1.68 From 8fefc21848b105eb1143529e91d306dedc69055e Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Thu, 23 Nov 2023 16:00:41 +0100 Subject: [PATCH 10/17] Update release.yaml --- .github/workflows/release.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index c6ccbd1f..f69da3eb 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -2,7 +2,6 @@ name: Release on: workflow_dispatch: - pull_request: env: RUST_VERSION: 1.68 From 74fdfcc09b912cb2da8b9f7a159f22b168b7f497 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Fri, 24 Nov 2023 08:17:35 +0100 Subject: [PATCH 11/17] change to versioned macos runner --- .github/workflows/release.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index f69da3eb..3289e63f 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -29,7 +29,7 @@ jobs: path: ./rust-bindings/target/release/librust_bindings.so build-native-macos: - runs-on: macos-latest + runs-on: macos-12 steps: - uses: actions/checkout@v3 From 92f5e07372fa5cd99746261a237dfdf6e1c0c0da Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Fri, 24 Nov 2023 10:56:40 +0100 Subject: [PATCH 12/17] Fix copy to output --- src/Concordium.Sdk.csproj | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Concordium.Sdk.csproj b/src/Concordium.Sdk.csproj index 17e05315..2f7842b5 100644 --- a/src/Concordium.Sdk.csproj +++ b/src/Concordium.Sdk.csproj @@ -75,22 +75,22 @@ - + + true True - \ PreserveNewest - + + true True - \ PreserveNewest - + + true True - \ PreserveNewest From 3bb55682ab1074b3a1043800143455eacffd8917 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Fri, 24 Nov 2023 11:02:23 +0100 Subject: [PATCH 13/17] trigger validation of package --- .github/workflows/release.yaml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 3289e63f..a795b4fc 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,6 +1,7 @@ name: Release on: + pull_request: workflow_dispatch: env: @@ -105,5 +106,11 @@ jobs: - name: Pack run: dotnet pack -c Release -p:RunRustBuild=false -p:IncludeAllRustBuilds=true + - name: Upload package for validation + uses: actions/upload-artifact@master + with: + name: package-validation + path: ./src/bin/Release + # - name: Publish to NuGet # run: dotnet nuget push "src/bin/Release/*.nupkg" --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json From 9f22307176480ee6647e4689899acaf974fd859e Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Fri, 24 Nov 2023 11:39:57 +0100 Subject: [PATCH 14/17] change to content --- src/Concordium.Sdk.csproj | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Concordium.Sdk.csproj b/src/Concordium.Sdk.csproj index 2f7842b5..bb6804e7 100644 --- a/src/Concordium.Sdk.csproj +++ b/src/Concordium.Sdk.csproj @@ -76,23 +76,23 @@ - + true True PreserveNewest - + - + true True PreserveNewest - + - + true True PreserveNewest - + From ada247691195e6739ddf00576398c545db894643 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Fri, 24 Nov 2023 12:04:58 +0100 Subject: [PATCH 15/17] Revert "change to content" This reverts commit 9f22307176480ee6647e4689899acaf974fd859e. --- src/Concordium.Sdk.csproj | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Concordium.Sdk.csproj b/src/Concordium.Sdk.csproj index bb6804e7..2f7842b5 100644 --- a/src/Concordium.Sdk.csproj +++ b/src/Concordium.Sdk.csproj @@ -76,23 +76,23 @@ - + true True PreserveNewest - + - + true True PreserveNewest - + - + true True PreserveNewest - + From b5417e92b71d5b61f1caeaacef63566b2da5b387 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Fri, 24 Nov 2023 12:10:48 +0100 Subject: [PATCH 16/17] remove trigger --- .github/workflows/release.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index a795b4fc..aa82526d 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,7 +1,6 @@ name: Release on: - pull_request: workflow_dispatch: env: From feabbb20e52656323ee0d7702e38880e95539ac0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emil=20Holm=20Gj=C3=B8rup?= Date: Wed, 6 Dec 2023 11:39:44 +0100 Subject: [PATCH 17/17] Adjust release pipeline to use the release environment --- .github/workflows/release.yaml | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index aa82526d..30cf8311 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -14,20 +14,20 @@ jobs: - uses: actions/checkout@v3 with: submodules: recursive - + - name: Set up Rust run: | rustup default ${{ env.RUST_VERSION }} - name: Build Rust Project run: cargo build --manifest-path=./rust-bindings/Cargo.toml --release - + - name: Upload linux library uses: actions/upload-artifact@master with: name: linux-library path: ./rust-bindings/target/release/librust_bindings.so - + build-native-macos: runs-on: macos-12 @@ -35,14 +35,14 @@ jobs: - uses: actions/checkout@v3 with: submodules: recursive - + - name: Set up Rust run: | rustup default ${{ env.RUST_VERSION }} - name: Build Rust Project run: cargo build --manifest-path=./rust-bindings/Cargo.toml --release - + - name: Upload macos library uses: actions/upload-artifact@master with: @@ -56,14 +56,14 @@ jobs: - uses: actions/checkout@v3 with: submodules: recursive - + - name: Set up Rust run: | rustup default ${{ env.RUST_VERSION }} - name: Build Rust Project run: cargo build --manifest-path=./rust-bindings/Cargo.toml --release - + - name: Upload windows library uses: actions/upload-artifact@master with: @@ -73,6 +73,7 @@ jobs: build-and-release: needs: [build-native-ubuntu, build-native-macos, build-native-windows] runs-on: ubuntu-latest + environment: release steps: - uses: actions/checkout@v3 @@ -96,11 +97,11 @@ jobs: with: name: windows-library path: rust-bindings/target/release - + - name: Setup .NET uses: actions/setup-dotnet@v3 with: - dotnet-version: 6.0.x + dotnet-version: 6.0.x - name: Pack run: dotnet pack -c Release -p:RunRustBuild=false -p:IncludeAllRustBuilds=true @@ -111,5 +112,5 @@ jobs: name: package-validation path: ./src/bin/Release - # - name: Publish to NuGet - # run: dotnet nuget push "src/bin/Release/*.nupkg" --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json + - name: Publish to NuGet + run: dotnet nuget push "src/bin/Release/ConcordiumNetSdk.*.nupkg" --api-key ${{ secrets.NUGET_APIKEY }} --source https://api.nuget.org/v3/index.json