Skip to content

Commit 0db9aab

Browse files
[FSSDK-12076] Pipeline update (#397)
1 parent 552fe4f commit 0db9aab

File tree

1 file changed

+31
-9
lines changed

1 file changed

+31
-9
lines changed

.github/workflows/csharp_release.yml

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,28 @@
33
on:
44
release:
55
types: [ published ] # Trigger on published pre-releases and releases
6-
workflow_dispatch:
6+
workflow_dispatch:
7+
inputs:
8+
tag:
9+
description: 'Tag to build (e.g., v4.2.0)'
10+
required: true
11+
type: string
712

813
jobs:
914
variables:
1015
name: Set Variables
1116
runs-on: ubuntu-latest
1217
env:
13-
TAG: ${{ github.event.release.tag_name }}
18+
TAG: ${{ github.event.release.tag_name || inputs.tag }}
1419
steps:
1520
- name: Extract semantic version from tag
1621
id: set_version
1722
run: |
23+
if [ -z "${TAG}" ]; then
24+
echo "Error: No release tag available. Please provide a tag when manually triggering the workflow."
25+
exit 1
26+
fi
27+
echo "Processing tag: ${TAG}"
1828
# Remove the "v" prefix if it exists and extract the semantic version number
1929
SEMANTIC_VERSION=$(echo "${TAG}" | grep -Po "(?<=^|[^0-9])([0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?(-[a-zA-Z]+[0-9]*)?)")
2030
SEMANTIC_VERSION=${SEMANTIC_VERSION#"v"}
@@ -23,9 +33,11 @@ jobs:
2333
exit 1
2434
fi
2535
echo "Extracted semantic version: ${SEMANTIC_VERSION}"
36+
echo "Resolved git ref: ${TAG}"
37+
echo "tag=${TAG}" >> $GITHUB_OUTPUT
2638
echo "semantic_version=${SEMANTIC_VERSION}" >> $GITHUB_OUTPUT
2739
outputs:
28-
tag: $TAG
40+
tag: ${{ steps.set_version.outputs.tag }}
2941
semanticVersion: ${{ steps.set_version.outputs.semantic_version }}
3042

3143
buildFrameworkVersions:
@@ -84,7 +96,7 @@ jobs:
8496
- name: Upload Framework artifacts
8597
uses: actions/upload-artifact@v4
8698
with:
87-
name: unsigned-dlls
99+
name: unsigned-dlls-framework
88100
if-no-files-found: error
89101
path: ./**/bin/Release/**/Optimizely*.dll
90102

@@ -106,7 +118,7 @@ jobs:
106118
- name: Upload Standard 1.6 artifact
107119
uses: actions/upload-artifact@v4
108120
with:
109-
name: unsigned-dlls
121+
name: unsigned-dlls-netstandard16
110122
if-no-files-found: error
111123
path: ./**/bin/Release/**/Optimizely*.dll
112124

@@ -125,10 +137,10 @@ jobs:
125137
run: dotnet restore OptimizelySDK.NetStandard20/OptimizelySDK.NetStandard20.csproj
126138
- name: Build and strongly name Standard 2.0 project
127139
run: dotnet build OptimizelySDK.NetStandard20/OptimizelySDK.NetStandard20.csproj /p:SignAssembly=true /p:AssemblyOriginatorKeyFile=$(pwd)/keypair.snk -c Release
128-
- name: Build and strongly name assemblies
140+
- name: Upload Standard 2.0 artifacts
129141
uses: actions/upload-artifact@v4
130142
with:
131-
name: unsigned-dlls
143+
name: unsigned-dlls-netstandard20
132144
if-no-files-found: error
133145
path: ./**/bin/Release/**/Optimizely*.dll
134146

@@ -146,10 +158,20 @@ jobs:
146158
# TODO: Remove this when we're ready to automate
147159
- name: Temporarily halt progress
148160
run: exit 1
149-
- name: Download the unsigned files
161+
- name: Download Framework DLLs
162+
uses: actions/download-artifact@v4
163+
with:
164+
name: unsigned-dlls-framework
165+
path: ./unsigned-dlls
166+
- name: Download NetStandard 1.6 DLLs
167+
uses: actions/download-artifact@v4
168+
with:
169+
name: unsigned-dlls-netstandard16
170+
path: ./unsigned-dlls
171+
- name: Download NetStandard 2.0 DLLs
150172
uses: actions/download-artifact@v4
151173
with:
152-
name: unsigned-dlls
174+
name: unsigned-dlls-netstandard20
153175
path: ./unsigned-dlls
154176
- name: Setup SSH
155177
uses: shimataro/ssh-key-action@v2

0 commit comments

Comments
 (0)