-
Notifications
You must be signed in to change notification settings - Fork 298
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
Implement deep signing for macOS Notarization #924
Conversation
9ad0c05
to
9598ad8
Compare
9598ad8
to
cfbaf67
Compare
cfbaf67
to
7af181d
Compare
lib/omnibus/packagers/pkg.rb
Outdated
log.debug(log_key) { " Signing: #{binary}" } | ||
sign_binary(binary, true) | ||
end | ||
libraries.merge binaries |
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.
What is the reason for merging the binaries into the libraries here after already processing the libraries?
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.
Nothing specific. In one iteration of the code I think i may have been logging/displaying the list of things we signed. I guess I left it as a way for the caller to determine if anything was signed.
* Adds deep signing of libraries and binaries to the pakacking process for the pkg packager. * Enables the hardened runtime for binaries. * Adds --preserve-xattr flag to pkgbuild so signing is preserved through packaging and install.* In order to deep sign we have to know where a software definition will install binaries and libraries. To facilite this lib_dirs and bin_dirs functions have been added to the software definition. These two functions return defaults that match standard omnibus locations, but allow individual software defs to override if they do something different. Bumps major version since signing deep signing is a major change. Signed-off-by: Jon Morrow <jmorrow@chef.io>
7af181d
to
cba1d5d
Compare
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.
This sounds like what we have talked about in the past. Allow software authors to list the libs/bins they want signed, and if they have not we search for those in some common locations
Description
This change adds deep signing of libraries and binaries to the pakacking process for the pkg packager. It aso enables the hardened runtime for binaries. In order to deep sign we have to know where a software definition will install binaries and libraries. To facilite this lib_dirs and bin_dirs functions have been added to the software definition. These two functions return defaults that match standard omnibus locations, but allow individual software defs to override if they do something different.
Bumps major version since signing deep signing is a major change.
Signed-off-by: Jon Morrow jmorrow@chef.io
Maintainers
Please ensure that you check for:
serial number
corresponding change is reviewed and there is a release plan
corresponding change is reviewed and there is a release plan