Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release: update Linux, macOS, and Windows signing #1431

Merged
merged 7 commits into from
Oct 21, 2023

Conversation

ldennington
Copy link
Contributor

@ldennington ldennington commented Oct 7, 2023

This PR migrates GCM's Linux, macOS, and Windows signing workflows off the ESRP service. This means:

  1. Updating the Linux components to sign with a GPG key.
  2. Updating macOS components to sign/notarize using Application and Installer certificates (see this series for more details).
  3. Updating Windows components to sign using the Azure Code Signing service.

Note: This PR does not include updates to migrate the .NET tool package signing off ESRP for two reasons:

  1. The Azure Code Signing service does not yet support NuGet package signing. We are hopeful this will be our solution in the future, though.
  2. HSM requirements for Code Signing certificate storage.

An example run of release workflow with these changes can be found here.

Update .NET setup tasks to be titled "Set up .NET" instead of "Setup
dotnet." Additionally, change from using a specific .NET version
(6.0.201) to a more general version that aligns with the current version
in use by the project (7.0.x).
Add required permissions for federated credentials [1] to the release
workflow. Additionally, add a prereqs job to set the GCM version for the
workflow.

1: https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-azure#adding-permissions-settings
@ldennington ldennington force-pushed the signing-updates branch 14 times, most recently from 8dae2bd to 0fd9d66 Compare October 12, 2023 01:46
Update the Linux component of the release workflow to use GPG signing
instead of ESRP.
Update macOS component of release workflow to use GitHub certificates for
signing and notarization.
@ldennington ldennington force-pushed the signing-updates branch 6 times, most recently from 721f8e2 to 2a377a6 Compare October 16, 2023 21:50
Update Windows component of release workflow to use Azure Code Signing.
Update the .NET tool release workflow to use the workflow's Federated
credential for Azure access. Additionally, update ESRP setup to use secrets
instead of storage account/resource names.
Upload GCM's public key as a release asset. Add instructions for users to
import this key and use it to validate the latest Debian package and tarball.
@ldennington ldennington temporarily deployed to release October 21, 2023 14:50 — with GitHub Actions Inactive
@ldennington ldennington temporarily deployed to release October 21, 2023 14:50 — with GitHub Actions Inactive
@ldennington ldennington temporarily deployed to release October 21, 2023 14:50 — with GitHub Actions Inactive
@ldennington ldennington temporarily deployed to release October 21, 2023 14:50 — with GitHub Actions Inactive
@ldennington ldennington temporarily deployed to release October 21, 2023 14:50 — with GitHub Actions Inactive
@ldennington ldennington temporarily deployed to release October 21, 2023 14:56 — with GitHub Actions Inactive
@ldennington ldennington temporarily deployed to release October 21, 2023 15:01 — with GitHub Actions Inactive
@ldennington ldennington merged commit 2fd111b into git-ecosystem:main Oct 21, 2023
8 checks passed
mjcheetham added a commit that referenced this pull request Nov 1, 2023
**Changes:**

- Add support for managed identity and service principals in Azure Repos
(#1372)
- Support universal Gitea OAuth app configuration (#1442)
- Set default generic OAuth redirect URI value (#1444)
- Drop WPF helpers on Windows (#1417)
- Add software rendering override for Windows (#1445, #1453)
- Recognise GitLab hosts via WWW-Authenticate header (#1428)
- Recognise Bitbucket hosts via WWW-Authenticate header (#1441)
- Support GitHub Gist remote URLs (#1402)
- Update to Avalonia 11.x (#1383)
- Documentation updates (#1416)
- Drop unnecessary .NET Framework-specific code (#1447)
- Updates to release process (#1386, #1381)
- Update code signing certificates (#1431)
mjcheetham added a commit that referenced this pull request Nov 1, 2023
**Changes:**

_Since 2.4.0:_

- Fix macOS ARM64 tarball contents (#1458)

_Since 2.3.x:_

- Add support for managed identity and service principals in Azure Repos
(#1372)
- Support universal Gitea OAuth app configuration (#1442)
- Set default generic OAuth redirect URI value (#1444)
- Drop WPF helpers on Windows (#1417)
- Add software rendering override for Windows (#1445, #1453)
- Recognise GitLab hosts via WWW-Authenticate header (#1428)
- Recognise Bitbucket hosts via WWW-Authenticate header (#1441)
- Support GitHub Gist remote URLs (#1402)
- Update to Avalonia 11.x (#1383)
- Documentation updates (#1416)
- Drop unnecessary .NET Framework-specific code (#1447)
- Updates to release process (#1386, #1381)
- Update code signing certificates (#1431)
@ldennington ldennington deleted the signing-updates branch April 8, 2024 21:33
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.

3 participants