-
Notifications
You must be signed in to change notification settings - Fork 79
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
Automate Code Signing of Windows Binary #1763
Automate Code Signing of Windows Binary #1763
Conversation
…1580-automate-codesigning-in-release Conflicts: HISTORY.rst
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @phargogh for getting this workflow set up so quickly. It looks good to me, just a few grammatical suggestions.
I had a few general questions for my understanding though:
- The signed windows binary will end up on GCS, but the github artifact will be unsigned?
- Does this play nicely with the automated release workflows, thinking about the above?
Co-authored-by: Doug <dcdenu4@gmail.com>
….com:phargogh/invest into feature/1580-automate-codesigning-in-release
@dcdenu4 great point about using the signed binary in the release! I just updated this in 782dbd1 so that the binary is fetched from GCS at release time. Because we have a human review step, it's pretty likely that the binary will be signed before the release part 2 automation is run, but it isn't a guarantee if we are super quick on the draw for merging the release PR or if there are a lot of binaries in the queue to sign. FYI @emlys |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @phargogh , looks good to me!
Signature files are now pushed to the bucket alongside the .exe file, and we check whether the file exists before enqueueing the exe. RE:natcap#1580
OK! @dcdenu4 I'm re-requesting your review because there have been a few nontrivial changes in response to our discussion during the team meeting. @emlys The only changes since your approval have been bugfix-related, so pretty minor :) The main changes since our team discussion are now:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @phargogh ! This looks good to me, just a conflict with History :)
This PR restores automated codesigning as a part of our GHA-based build process. Configuration (minus secrets) has been provided for a queue implemented as a GCS-backed cloud function, and a worker running as a debian:bookworm
systemd
service. Our github actions configuration and secrets have been updated to use the new codesigning.I would also like to add that there are several enhancements that I think we should look into long term, including:
enqueue
operation based on GCS events instead of an HTTP requestI have removed the old windows codesigning stuff that is no longer relevant. I think
make codesign_windows
should still work on a windows computer that has a yubikey (and corresponding minidriver) available, but we aren't using it for our build automation any longer. I left the recipe in the Makefile in case we need to sign locally.This has been tested and is working on my fork (example signed dev build binary)
Fixes #1580
Checklist