Skip to content

Commit f84a8b5

Browse files
omer-rothclaude
andcommitted
CM-70024: document the certsync signing-access requirement
The cert rotation itself lives entirely in DigiCert One and the repo secrets, so all _NEW indirection is gone. What is worth keeping in the workflow is why certsync reported the new certificate as missing: it only syncs keypairs the calling identity may sign with. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent a959d09 commit f84a8b5

1 file changed

Lines changed: 8 additions & 13 deletions

File tree

.github/workflows/build_executable.yml

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -221,8 +221,7 @@ jobs:
221221
- name: Import cert for Windows and setup envs
222222
if: runner.os == 'Windows'
223223
env:
224-
# TODO(CM-70024): revert to the non-_NEW secrets once the service account is confirmed working
225-
SM_CLIENT_CERT_FILE_B64: ${{ secrets.SM_CLIENT_CERT_FILE_B64_NEW }}
224+
SM_CLIENT_CERT_FILE_B64: ${{ secrets.SM_CLIENT_CERT_FILE_B64 }}
226225
run: |
227226
# import certificate
228227
echo "$SM_CLIENT_CERT_FILE_B64" | base64 --decode > /d/Certificate_pkcs12.p12
@@ -237,18 +236,15 @@ jobs:
237236
shell: cmd
238237
env:
239238
SM_HOST: ${{ secrets.SM_HOST }}
240-
# TODO(CM-70024): revert to the non-_NEW secrets once the new cert and service account are confirmed working
241-
SM_API_KEY: ${{ secrets.SM_API_KEY_NEW }}
242-
SM_CLIENT_CERT_PASSWORD: ${{ secrets.SM_CLIENT_CERT_PASSWORD_NEW }}
243-
SM_KEYPAIR_ALIAS: ${{ secrets.SM_KEYPAIR_ALIAS_NEW }}
244-
SM_CODE_SIGNING_CERT_SHA1_HASH: ${{ secrets.SM_CODE_SIGNING_CERT_SHA1_HASH_NEW }}
239+
SM_KEYPAIR_ALIAS: ${{ secrets.SM_KEYPAIR_ALIAS }}
240+
SM_API_KEY: ${{ secrets.SM_API_KEY }}
241+
SM_CLIENT_CERT_PASSWORD: ${{ secrets.SM_CLIENT_CERT_PASSWORD }}
242+
SM_CODE_SIGNING_CERT_SHA1_HASH: ${{ secrets.SM_CODE_SIGNING_CERT_SHA1_HASH }}
245243
run: |
246244
:: setup SSM KSP
247245
curl -X GET https://one.digicert.com/signingmanager/api-ui/v1/releases/smtools-windows-x64.msi/download -H "x-api-key:%SM_API_KEY%" -o smtools-windows-x64.msi
248246
msiexec /i smtools-windows-x64.msi /quiet /qn
249247
C:\Windows\System32\certutil.exe -csp "DigiCert Signing Manager KSP" -key -user
250-
:: TODO(CM-70024): temporary, remove before merge — confirms which identity signs
251-
smctl healthcheck --all
252248
253249
:: certsync only syncs keypairs the calling identity has signing access to, so the
254250
:: identity behind SM_API_KEY must be a signer on the certificate for this alias
@@ -264,10 +260,9 @@ jobs:
264260
shell: powershell
265261
env:
266262
SM_HOST: ${{ secrets.SM_HOST }}
267-
# TODO(CM-70024): revert to the non-_NEW secrets once the new cert and service account are confirmed working
268-
SM_API_KEY: ${{ secrets.SM_API_KEY_NEW }}
269-
SM_CLIENT_CERT_PASSWORD: ${{ secrets.SM_CLIENT_CERT_PASSWORD_NEW }}
270-
SM_CODE_SIGNING_CERT_SHA1_HASH: ${{ secrets.SM_CODE_SIGNING_CERT_SHA1_HASH_NEW }}
263+
SM_API_KEY: ${{ secrets.SM_API_KEY }}
264+
SM_CLIENT_CERT_PASSWORD: ${{ secrets.SM_CLIENT_CERT_PASSWORD }}
265+
SM_CODE_SIGNING_CERT_SHA1_HASH: ${{ secrets.SM_CODE_SIGNING_CERT_SHA1_HASH }}
271266
run: |
272267
# Vendor binaries (PSF-signed stdlib .pyds, python3xx.dll, Microsoft VC runtime) already
273268
# carry valid signatures; re-signing would replace them with ours. Sign only the unsigned

0 commit comments

Comments
 (0)