-
-
Notifications
You must be signed in to change notification settings - Fork 39
Description
Now that #116 has landed, the next step is to enable JEP-229 CD for this repository, using GitHub Actions (as is standard for CD in the Jenkins project). The CD work should largely follow https://www.jenkins.io/doc/developer/publishing/releasing-cd/ but may be slightly more involved in that it needs to run on a Windows 2019 system in GitHub Actions rather than a Linux system in GitHub Actions (as the instructions currently describe).
The standard process used in Jenkins is to run CD after CI has passed, skipping the tests in CD. Since this CD build is more complicated, and since the test suite runs in milliseconds, it may be desirable to also run the tests again during CD.
One complication is that CD needs to sign the binaries after building them but before putting them in the JAR. The signing should take place as described here with some commands like:
WinSDK/bin/signtool sign /f path-to-certificate.pfx /p PASSWORD /t http://timestamp.digicert.com native\x64\Release\winp.dll
WinSDK/bin/signtool sign /f path-to-certificate.pfx /p PASSWORD /t http://timestamp.digicert.com native\x64\Release\winp.x64.dll
It may be necessary to engage with the Jenkins infrastructure team for access to a certificate. The password for the certificate can be stored by a GitHub administrator as a secret in the "Actions secrets and variables" configuration for this repository, where it may be consumed by the CD (but not CI!) build.