Skip to content

Commit cebf01b

Browse files
committed
simpler flows, fewer inputs, try not using setup-dotnet for azure artifact creds
1 parent 3277c33 commit cebf01b

File tree

1 file changed

+10
-77
lines changed

1 file changed

+10
-77
lines changed

.github/workflows/package.yml

Lines changed: 10 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,14 @@
11
name: Package
22

33
on:
4-
workflow_dispatch:
5-
inputs:
6-
deployToDevFeed:
7-
description: 'Deploy to Dev Feed?'
8-
required: false
9-
default: 'false'
10-
type: choice
11-
options: [ 'false', 'true' ]
12-
deployToNuGet:
13-
description: 'Deploy to NuGet.org?'
14-
required: false
15-
default: 'false'
16-
type: choice
17-
options: [ 'false', 'true' ]
4+
workflow_dispatch: {}
185
push:
196
branches:
207
- main
218
- '[0-9]+.x'
229
- 'release/*'
23-
tags:
24-
- v*
10+
release:
11+
types: [ published ]
2512
pull_request: {}
2613

2714
concurrency:
@@ -42,10 +29,6 @@ jobs:
4229
name: Build
4330
timeout-minutes: 15
4431
runs-on: ubuntu-latest
45-
outputs:
46-
sign_packages: ${{ steps.decisions.outputs.sign_packages }}
47-
deploy_to_dev_feed: ${{ steps.decisions.outputs.deploy_to_dev_feed }}
48-
deploy_to_nuget_org: ${{ steps.decisions.outputs.deploy_to_nuget_org }}
4932
steps:
5033
- name: Setup .NET
5134
uses: actions/setup-dotnet@v4
@@ -77,37 +60,11 @@ jobs:
7760
if-no-files-found: error
7861
name: unsigned-packages
7962
path: ${{ github.workspace }}/packages/**/*.nupkg
80-
retention-days: 7
81-
82-
- id: decisions
83-
name: Make decisions based on workflow triggers
84-
run: |
85-
PUSH_TO_MAIN=$([[ "$GITHUB_EVENT_NAME" == "push" && "$GITHUB_REF" == "refs/heads/main" ]] && echo true || echo false)
86-
PUSH_TAG=$([[ "$GITHUB_EVENT_NAME" == "push" && "$GITHUB_REF" == refs/tags/v* ]] && echo true || echo false)
87-
DISPATCH_TO_DEV=$([[ "$GITHUB_EVENT_NAME" == "workflow_dispatch" && "${{ github.event.inputs.deployToDevFeed }}" == "true" ]] && echo true || echo false)
88-
DISPATCH_TO_NUGET=$([[ "$GITHUB_EVENT_NAME" == "workflow_dispatch" && "${{ github.event.inputs.deployToNuGet }}" == "true" ]] && echo true || echo false)
89-
90-
if [[ "$PUSH_TO_MAIN" == true || "$PUSH_TAG" == true || "$DISPATCH_TO_NUGET" == true ]]; then
91-
echo "sign_packages=true" >> $GITHUB_OUTPUT
92-
echo "Packages will be signed"
93-
else
94-
echo "sign_packages=false" >> $GITHUB_OUTPUT
95-
echo "Packages will NOT be signed"
96-
fi
97-
98-
if [[ "$DISPATCH_TO_DEV" == true || "$DISPATCH_TO_NUGET" == true || "$PUSH_TO_MAIN" == true || "$PUSH_TAG" == true ]]; then
99-
echo "deploy_to_dev_feed=$DEPLOY_TO_DEV" >> $GITHUB_OUTPUT
100-
echo "Packages will be deployed to development feed"
101-
fi
102-
if [[ "$DISPATCH_TO_NUGET" == true || "$PUSH_TAG" == true ]]; then
103-
echo "deploy_to_nuget=$DEPLOY_TO_PROD" >> $GITHUB_OUTPUT
104-
echo "Packages will be deployed to nuget.org"
105-
fi
10663

10764
sign:
10865
needs: build
10966
runs-on: windows-latest
110-
if: needs.build.outputs.sign_packages == 'true'
67+
if: github.event_name != 'pull_request'
11168
environment: Production
11269
permissions:
11370
id-token: write
@@ -153,42 +110,16 @@ jobs:
153110
name: signed-packages
154111
path: ${{ github.workspace }}/packages/**/*.nupkg
155112

156-
az-artifacts-deploy-unsigned:
157-
name: Deploy unsigned packages to Dev Feed
158-
needs: build
159-
if: needs.build.outputs.sign_packages != true && needs.build.outputs.deploy_to_dev_feed
160-
runs-on: ubuntu-latest
161-
steps:
162-
- name: Setup .NET
163-
uses: actions/setup-dotnet@v4
164-
with:
165-
dotnet-version: '8.0.x'
166-
source-url: ${{ env.AZURE_ARTIFACTS_FEED_URL }}
167-
env:
168-
NUGET_AUTH_TOKEN: ${{ secrets.DEV_FEED_PERSONAL_TOKEN }}
169-
170-
- name: Download unsigned packages
171-
uses: actions/download-artifact@v4
172-
with:
173-
name: unsigned-packages
174-
path: packages
175-
176-
- name: Push unsigned packages to Azure Artifacts
177-
run: dotnet nuget push packages/*.nupkg --api-key azdo-placeholder --source ${{ env.AZURE_ARTIFACTS_FEED_URL }}
178-
179-
az-artifacts-deploy-signed:
113+
az-artifacts-deploy:
180114
name: Deploy signed packages to Dev Feed
181115
needs: [build, sign]
182-
if: needs.build.outputs.sign_packages == true && needs.build.outputs.deploy_to_dev_feed
116+
if: github.event_name != 'pull_request'
183117
runs-on: ubuntu-latest
184118
steps:
185119
- name: Setup .NET
186120
uses: actions/setup-dotnet@v4
187121
with:
188122
dotnet-version: '8.0.x'
189-
source-url: ${{ env.AZURE_ARTIFACTS_FEED_URL }}
190-
env:
191-
NUGET_AUTH_TOKEN: ${{ secrets.DEV_FEED_PERSONAL_TOKEN }}
192123

193124
- name: Download signed packages
194125
uses: actions/download-artifact@v4
@@ -197,12 +128,14 @@ jobs:
197128
path: packages
198129

199130
- name: Push signed packages to Azure Artifacts
200-
run: dotnet nuget push packages/*.nupkg --api-key azdo-placeholder --source ${{ env.AZURE_ARTIFACTS_FEED_URL }}
131+
run: |
132+
dotnet nuget add source --name 'SteeltoeDevFeed' ${{ env.AZURE_ARTIFACTS_FEED_URL }}
133+
dotnet nuget push packages/*.nupkg --api-key ${{ secrets.DEV_FEED_PERSONAL_TOKEN }} --source 'SteeltoeDevFeed'
201134
202135
nuget-org-deploy:
203136
name: Deploy to nuget.org
204137
needs: [build, sign]
205-
if: needs.build.outputs.deploy_to_nuget_org
138+
if: github.event_name == 'release'
206139
environment: nuget.org
207140
runs-on: ubuntu-latest
208141
steps:

0 commit comments

Comments
 (0)