Skip to content

SD - Windows app code signing (vibe-kanban)#4

Open
mickmister wants to merge 10 commits intodevfrom
vk/2d05-sd-windows-app-c
Open

SD - Windows app code signing (vibe-kanban)#4
mickmister wants to merge 10 commits intodevfrom
vk/2d05-sd-windows-app-c

Conversation

@mickmister
Copy link
Member

Implement windows app code signing in the desktop app workflow/action in the ./songdrive-releases repo

Imports a PFX certificate into the Windows certificate store and sets
WINDOWS_CERTIFICATE_THUMBPRINT so Tauri's signtool integration signs
the installer. Secrets WINDOWS_CERTIFICATE and WINDOWS_CERTIFICATE_PASSWORD
are passed through from build_desktop_common.yml.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@mickmister mickmister changed the base branch from main to dev February 20, 2026 08:24
@mickmister mickmister force-pushed the vk/2d05-sd-windows-app-c branch from 93ff60c to a4c41be Compare February 20, 2026 08:24
Vibe Kanban and others added 9 commits February 20, 2026 08:26
Replaces the PFX certificate approach with Azure Trusted Signing via
trusted-signing-cli. Installs the CLI on Windows, passes Azure credentials
as env vars to the Tauri build step, and wires up 6 new secrets:
AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID,
AZURE_SIGNING_ENDPOINT, AZURE_SIGNING_ACCOUNT_NAME,
AZURE_SIGNING_CERT_PROFILE_NAME.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…file inputs

The signCommand in tauri.base.conf.json already has the endpoint, account,
and profile hardcoded. Only AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, and
AZURE_TENANT_ID need to be passed via CI secrets.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replaces hardcoded values in tauri.base.conf.json with %ENV_VAR% placeholders,
passed through CI as AZURE_SIGNING_ENDPOINT, AZURE_SIGNING_ACCOUNT_NAME,
and AZURE_SIGNING_CERT_PROFILE_NAME secrets.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sets Azure signing env vars via >> GITHUB_ENV in a dedicated step,
consistent with how Apple signing vars are handled for macOS.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tibility

windows-latest removed the Windows SDK version that trusted-signing-cli
falls back to for signtool.exe. windows-11-arm has it available out of
the box and is also faster.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… wildcard

Updates tauri_e2e.yml runner and conditionals, and simplifies
build_desktop_common.yml platform checks to use windows-* wildcard
only, removing the now-redundant windows-latest check.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…est_manifest

- Hardcode endpoint/account/profile in tauri.base.conf.json instead of
  using %ENV_VAR% placeholders which may not expand in Tauri's signCommand
- Remove azure_signing_endpoint/account_name/cert_profile_name inputs/secrets
- Set SIGNTOOL_PATH to known Windows SDK path so trusted-signing-cli can
  locate signtool.exe on windows-latest runners
- Switch runner back to windows-latest
- Disable publish_latest_manifest job for now

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.

1 participant