From 6a4565afd76ae025ba46f2bf4073d3286fba444c Mon Sep 17 00:00:00 2001 From: Md Junaed Hossain <169046794+junaed-optimizely@users.noreply.github.com> Date: Wed, 1 Jul 2026 20:19:17 +0600 Subject: [PATCH 1/4] [fssdk-12756] release pipeline update --- .github/workflows/csharp_release.yml | 92 +++++++--------------------- 1 file changed, 22 insertions(+), 70 deletions(-) diff --git a/.github/workflows/csharp_release.yml b/.github/workflows/csharp_release.yml index adfce8bb..71330633 100644 --- a/.github/workflows/csharp_release.yml +++ b/.github/workflows/csharp_release.yml @@ -144,67 +144,9 @@ jobs: if-no-files-found: error path: ./**/bin/Release/**/Optimizely*.dll - sign: - name: Send DLLs for signing - needs: [ variables, buildFrameworkVersions, buildStandard16, buildStandard20 ] - runs-on: ubuntu-latest - env: - # TODO: Replace actual values - SIGNING_SERVER_PRIVATE_KEY: ${{ secrets.SIGNING_SERVER_PRIVATE_KEY }} - SIGNING_SERVER_HOST: ${{ secrets.SIGNING_SERVER_HOST }} - SIGNING_SERVER_UPLOAD_PATH: /path/to/UPLOAD/directory - SIGNING_SERVER_DOWNLOAD_PATH: /path/to/DOWNLOAD/directory - steps: - # TODO: Remove this when we're ready to automate - - name: Temporarily halt progress - run: exit 1 - - name: Download Framework DLLs - uses: actions/download-artifact@v4 - with: - name: unsigned-dlls-framework - path: ./unsigned-dlls - - name: Download NetStandard 1.6 DLLs - uses: actions/download-artifact@v4 - with: - name: unsigned-dlls-netstandard16 - path: ./unsigned-dlls - - name: Download NetStandard 2.0 DLLs - uses: actions/download-artifact@v4 - with: - name: unsigned-dlls-netstandard20 - path: ./unsigned-dlls - - name: Setup SSH - uses: shimataro/ssh-key-action@v2 - with: - key: $SIGNING_SERVER_PRIVATE_KEY - - name: Send files to signing server - run: scp -r ./unsigned-dlls $SIGNING_SERVER_HOST:$SIGNING_SERVER_UPLOAD_PATH - - name: Wait for artifact to be published - run: | - for i in {1..60}; do - # Replace with actual path - if ssh $SIGNING_SERVER_HOST "ls $SIGNING_SERVER_DOWNLOAD_PATH"; then - exit 0 - fi - sleep 10 - done - exit 1 - - name: Download signed files - run: | - mkdir ./signed-dlls - scp -r $SIGNING_SERVER_HOST:$SIGNING_SERVER_DOWNLOAD_PATH ./signed-dlls - - name: Delete signed files from server - run: ssh $SIGNING_SERVER_HOST "rm -rf $SIGNING_SERVER_DOWNLOAD_PATH/*" - - name: Upload signed files - uses: actions/upload-artifact@v4 - with: - name: signed-dlls - if-no-files-found: error - path: ./signed-dlls - pack: name: Pack NuGet package - needs: [ variables, sign ] + needs: [ variables, buildFrameworkVersions, buildStandard16, buildStandard20 ] runs-on: ubuntu-latest env: VERSION: ${{ needs.variables.outputs.semanticVersion }} @@ -217,14 +159,24 @@ jobs: run: | sudo apt update sudo apt install -y mono-devel - - name: Download NuGet files + - name: Download Framework DLLs uses: actions/download-artifact@v4 with: - name: signed-dlls - path: ./signed-dlls + name: unsigned-dlls-framework + path: ./dlls + - name: Download NetStandard 1.6 DLLs + uses: actions/download-artifact@v4 + with: + name: unsigned-dlls-netstandard16 + path: ./dlls + - name: Download NetStandard 2.0 DLLs + uses: actions/download-artifact@v4 + with: + name: unsigned-dlls-netstandard20 + path: ./dlls - name: Organize files run: | - pushd ./signed-dlls + pushd ./dlls # Move all dlls to the root directory find . -type f -name "*.dll" -exec mv {} . popd @@ -232,11 +184,11 @@ jobs: mkdir -p nuget/lib/net35/ nuget/lib/net40/ nuget/lib/net45/ nuget/lib/netstandard1.6/ nuget/lib/netstandard2.0/ pushd ./nuget # Move files to directories - mv ../signed-dlls/OptimizelySDK.Net35.dll lib/net35/ - mv ../signed-dlls/OptimizelySDK.Net40.dll lib/net40/ - mv ../signed-dlls/OptimizelySDK.dll lib/net45/ - mv ../signed-dlls/OptimizelySDK.NetStandard16.dll lib/netstandard1.6/ - mv ../signed-dlls/OptimizelySDK.NetStandard20.dll lib/netstandard2.0/ + mv ../dlls/OptimizelySDK.Net35.dll lib/net35/ + mv ../dlls/OptimizelySDK.Net40.dll lib/net40/ + mv ../dlls/OptimizelySDK.dll lib/net45/ + mv ../dlls/OptimizelySDK.NetStandard16.dll lib/netstandard1.6/ + mv ../dlls/OptimizelySDK.NetStandard20.dll lib/netstandard2.0/ popd - name: Create nuspec # Uses env.VERSION in OptimizelySDK.nuspec.template @@ -259,8 +211,8 @@ jobs: name: Publish package to NuGet after reviewing the artifact needs: [ variables, pack ] runs-on: ubuntu-latest - # Review the `nuget-package` artifact ensuring the dlls are - # organized and signed before approving. + # Review the `nuget-package` artifact ensuring the dlls are + # organized before approving. environment: 'i-reviewed-nuget-package-artifact' env: VERSION: ${{ needs.variables.outputs.semanticVersion }} From 8b63ac1a23ca6fafd1fe919d7fa11078cb7937dd Mon Sep 17 00:00:00 2001 From: Md Junaed Hossain <169046794+junaed-optimizely@users.noreply.github.com> Date: Wed, 1 Jul 2026 20:58:41 +0600 Subject: [PATCH 2/4] [fssdk-12756] release pipeline fix --- .github/workflows/csharp_release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/csharp_release.yml b/.github/workflows/csharp_release.yml index 71330633..c52489fa 100644 --- a/.github/workflows/csharp_release.yml +++ b/.github/workflows/csharp_release.yml @@ -178,7 +178,7 @@ jobs: run: | pushd ./dlls # Move all dlls to the root directory - find . -type f -name "*.dll" -exec mv {} . + find . -type f -name "*.dll" | xargs -I{} mv {} . popd # Create directories mkdir -p nuget/lib/net35/ nuget/lib/net40/ nuget/lib/net45/ nuget/lib/netstandard1.6/ nuget/lib/netstandard2.0/ From df71610d7f11a8d8ccf8e4ba6fddfdefbcd75f48 Mon Sep 17 00:00:00 2001 From: Md Junaed Hossain <169046794+junaed-optimizely@users.noreply.github.com> Date: Wed, 1 Jul 2026 22:50:12 +0600 Subject: [PATCH 3/4] [fssdk-12756] release pipeline fix --- .github/workflows/csharp_release.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/csharp_release.yml b/.github/workflows/csharp_release.yml index c52489fa..f95af86a 100644 --- a/.github/workflows/csharp_release.yml +++ b/.github/workflows/csharp_release.yml @@ -159,6 +159,8 @@ jobs: run: | sudo apt update sudo apt install -y mono-devel + - name: Setup NuGet + uses: nuget/setup-nuget@v2 - name: Download Framework DLLs uses: actions/download-artifact@v4 with: From a6552698374ef7706e04602e9be8ad5a5b6e30f8 Mon Sep 17 00:00:00 2001 From: Md Junaed Hossain <169046794+junaed-optimizely@users.noreply.github.com> Date: Mon, 6 Jul 2026 21:06:07 +0600 Subject: [PATCH 4/4] [FSSDK-12756] pipeline fix --- .github/workflows/csharp_release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/csharp_release.yml b/.github/workflows/csharp_release.yml index f95af86a..30e32a43 100644 --- a/.github/workflows/csharp_release.yml +++ b/.github/workflows/csharp_release.yml @@ -180,7 +180,7 @@ jobs: run: | pushd ./dlls # Move all dlls to the root directory - find . -type f -name "*.dll" | xargs -I{} mv {} . + find . -type f -name "*.dll" -exec mv {} . \; popd # Create directories mkdir -p nuget/lib/net35/ nuget/lib/net40/ nuget/lib/net45/ nuget/lib/netstandard1.6/ nuget/lib/netstandard2.0/