6
6
env :
7
7
REGISTRY : ghcr.io
8
8
IMAGE_NAME : ${{ github.repository }}
9
- IMAGE_DESCRIPTION : Dev Proxy is an API simulator that helps you effortlessly test your app beyond the happy path.
9
+ APP_DESCRIPTION : Dev Proxy is an API simulator that helps you effortlessly test your app beyond the happy path.
10
+ APP_PUBLISHER : Dev Proxy
11
+ APP_DESCRIPTION_URL : https://aka.ms/devproxy
10
12
11
13
jobs :
12
14
publish_binaries :
13
15
name : Publish binaries
14
16
runs-on : [windows-latest]
17
+ environment :
18
+ name : gh_releases
19
+ permissions :
20
+ id-token : write
21
+ contents : read
15
22
strategy :
16
23
matrix :
17
24
architecture :
60
67
Get-ChildItem -Filter *.pdb -Recurse | Remove-Item
61
68
Get-ChildItem -Filter *.deps.json -Recurse | Remove-Item
62
69
Get-ChildItem -Filter *.runtimeconfig.json -Recurse | Remove-Item
70
+ Get-ChildItem -Filter *.staticwebassets.endpoints.json -Recurse | Remove-Item
71
+ Get-ChildItem -Filter web.config -Recurse | Remove-Item
63
72
popd
73
+ - name : Install Sign CLI tool
74
+ run : dotnet tool install --tool-path . sign --version 0.9.1-beta.25181.2
75
+ - name : Azure CLI Login
76
+ uses : azure/login@a457da9ea143d694b1b9c7c869ebb04ebe844ef5 # v2.3.0
77
+ with :
78
+ client-id : ${{ secrets.DOTNET_APPLICATION_ID }}
79
+ tenant-id : ${{ secrets.DOTNET_TENANT_ID }}
80
+ allow-no-subscriptions : true
81
+ - name : Sign binaries
82
+ if : contains(matrix.architecture, 'win-')
83
+ working-directory : ./${{ env.release }}
84
+ shell : pwsh
85
+ run : >
86
+ ../sign code azure-key-vault
87
+ **/dev*proxy*
88
+ --publisher-name "${{ env.APP_PUBLISHER }}"
89
+ --description "${{ env.APP_DESCRIPTION }}"
90
+ --description-url "${{ env.APP_DESCRIPTION_URL }}"
91
+ --azure-key-vault-tenant-id "${{ secrets.DOTNET_TENANT_ID }}"
92
+ --azure-key-vault-client-id "${{ secrets.DOTNET_APPLICATION_ID }}"
93
+ --azure-key-vault-certificate "${{ secrets.DOTNET_CERTIFICATE_NAME }}"
94
+ --azure-key-vault-url "${{ secrets.DOTNET_VAULT_URL }}"
95
+ --timestamp-url http://timestamp.digicert.com
96
+ --verbosity Debug
64
97
- name : Archive release ${{ env.release }}
65
98
uses : thedoctor0/zip-release@a24011d8d445e4da5935a7e73c1f98e22a439464 # master
66
99
with :
@@ -74,6 +107,21 @@ jobs:
74
107
with :
75
108
name : binaries-${{ env.release }}
76
109
path : ./${{ env.release }}.zip
110
+ - name : Sign abstractions
111
+ if : matrix.architecture == 'win-x64'
112
+ shell : pwsh
113
+ run : >
114
+ ./sign code azure-key-vault
115
+ ./dev-proxy-abstractions/bin/Release/net9.0/dev-proxy-abstractions.dll
116
+ --publisher-name "${{ env.APP_PUBLISHER }}"
117
+ --description "${{ env.APP_DESCRIPTION }}"
118
+ --description-url "${{ env.APP_DESCRIPTION_URL }}"
119
+ --azure-key-vault-tenant-id "${{ secrets.DOTNET_TENANT_ID }}"
120
+ --azure-key-vault-client-id "${{ secrets.DOTNET_APPLICATION_ID }}"
121
+ --azure-key-vault-certificate "${{ secrets.DOTNET_CERTIFICATE_NAME }}"
122
+ --azure-key-vault-url "${{ secrets.DOTNET_VAULT_URL }}"
123
+ --timestamp-url http://timestamp.digicert.com
124
+ --verbosity Debug
77
125
- name : Archive abstractions
78
126
if : matrix.architecture == 'win-x64'
79
127
uses : thedoctor0/zip-release@a24011d8d445e4da5935a7e73c1f98e22a439464 # master
@@ -114,8 +162,24 @@ jobs:
114
162
run : cp ./${{ steps.installer.outputs.filename }} ./${{ env.release }}
115
163
- name : Build Installer
116
164
if : contains(matrix.architecture, 'win-')
117
- run : ISCC.exe ${{ steps.installer.outputs.filename }} /F"dev-proxy-installer-${{ matrix.architecture }}-${{ github.ref_name }}"
165
+ run : ISCC.exe ${{ steps.installer.outputs.filename }} /F"dev-proxy-installer-${{ matrix.architecture }}-${{ github.ref_name }}"
166
+ working-directory : ./${{ env.release }}
167
+ - name : Sign installer
168
+ if : contains(matrix.architecture, 'win-')
118
169
working-directory : ./${{ env.release }}
170
+ shell : pwsh
171
+ run : >
172
+ ../sign code azure-key-vault
173
+ ./dev-proxy-installer-*.exe
174
+ --publisher-name "${{ env.APP_PUBLISHER }}"
175
+ --description "${{ env.APP_DESCRIPTION }}"
176
+ --description-url "${{ env.APP_DESCRIPTION_URL }}"
177
+ --azure-key-vault-tenant-id "${{ secrets.DOTNET_TENANT_ID }}"
178
+ --azure-key-vault-client-id "${{ secrets.DOTNET_APPLICATION_ID }}"
179
+ --azure-key-vault-certificate "${{ secrets.DOTNET_CERTIFICATE_NAME }}"
180
+ --azure-key-vault-url "${{ secrets.DOTNET_VAULT_URL }}"
181
+ --timestamp-url http://timestamp.digicert.com
182
+ --verbosity Debug
119
183
- name : Upload Installer
120
184
if : contains(matrix.architecture, 'win-')
121
185
uses : actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
@@ -189,9 +253,9 @@ jobs:
189
253
type=raw,value=latest,enable=${{ !contains(github.ref_name, '-beta') }}
190
254
type=raw,value=beta,enable=${{ contains(github.ref_name, '-beta') }}
191
255
labels : |
192
- org.opencontainers.image.description=${{ env.IMAGE_DESCRIPTION }}
256
+ org.opencontainers.image.description=${{ env.APP_DESCRIPTION }}
193
257
annotations : |
194
- org.opencontainers.image.description=${{ env.IMAGE_DESCRIPTION }}
258
+ org.opencontainers.image.description=${{ env.APP_DESCRIPTION }}
195
259
- name : Build and push Docker image
196
260
if : " !contains(github.ref_name, '-beta')"
197
261
id : push
0 commit comments