Skip to content

updating release workflow to sign windows MSIs and binaries#107

Merged
ashishkurmi merged 1 commit into
step-security:mainfrom
ashishkurmi:main
May 24, 2026
Merged

updating release workflow to sign windows MSIs and binaries#107
ashishkurmi merged 1 commit into
step-security:mainfrom
ashishkurmi:main

Conversation

@ashishkurmi
Copy link
Copy Markdown
Member

What does this PR do?

Type of change

  • Bug fix
  • Enhancement
  • Documentation

Testing

  • Tested on macOS (version: ___)
  • Binary runs without errors: ./stepsecurity-dev-machine-guard --verbose
  • JSON output is valid: ./stepsecurity-dev-machine-guard --json | python3 -m json.tool
  • No secrets or credentials included
  • Lint passes: make lint
  • Tests pass: make test

Related Issues

…ning

Adds Authenticode signing for Windows .exe and .msi artifacts as part of
the release workflow, using Azure Trusted Signing via OIDC federation.
Sigstore signing for Windows artifacts moves post-Authenticode so cosign
bundles cover the bytes users actually download.

- release.yml: new windows-sign-and-package job gated on the `release`
  GitHub Environment (two reviewers, main-only). Workflow signs the 4
  Windows .exes (agent + launcher × amd64 + arm64), builds 2 MSIs from
  the signed exes, Authenticode-signs the MSIs, then sigstore-signs
  everything and attests build provenance. Uses azure/login OIDC + the
  Azure/trusted-signing-action. cache-dependencies: false works around
  a same-job silent-exit bug when the action runs twice.

- test-azure-signing.yml: new manual-trigger smoke test for the
  OIDC -> Azure -> signtool path. Builds throwaway snapshot binaries,
  signs and verifies, uploads signed artifacts for offline inspection.
  Does not tag or touch any release.

- docs/release-process.md: documents the approval gate, the new
  Windows verification commands (Get-AuthenticodeSignature + signtool
  verify /pa + cosign + gh attestation verify), and the Authenticode
  + RFC3161 timestamp guarantee.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ashishkurmi ashishkurmi merged commit 1d3775e into step-security:main May 24, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants