@@ -2,6 +2,22 @@ name: 📞 Build binaries and create packages
22
33on :
44 workflow_call :
5+ secrets :
6+ gh_token :
7+ description : ' Github token for uploading packages to release'
8+ required : false
9+ gpg_private_key_base64 :
10+ description : ' Private key for signing packages'
11+ required : false
12+ gpg_passphrase :
13+ description : ' Passphrase the GPG private key'
14+ required : false
15+ pfx_certificate_base64 :
16+ description : ' Pfx for signing windows executables'
17+ required : false
18+ pfx_passphrase :
19+ description : ' Passphrase of the PFX certificate'
20+ required : false
521 inputs :
622 pre-release :
723 description : ' set to true if running a real pre-release'
@@ -82,18 +98,22 @@ jobs:
8298 if : ${{ inputs.skip_sign }}
8399 run : |
84100 echo SKIP_SIGN="--skip=sign" >> $GITHUB_ENV
101+ echo SKIP_WINDOWS_SIGN="true" >> $GITHUB_ENV
85102
86103 - name : Release packages with GoReleaser
87104 uses : goreleaser/goreleaser-action@e435ccd777264be153ace6237001ef4d979d3a7a # v6
88105 with :
89106 args : release ${{ env.SKIP_UPLOAD_RELEASE }} ${{ env.SKIP_SIGN }} --clean --verbose --timeout 2h
90107 env :
91- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
92- GPG_PASSPHRASE : ${{ secrets.OHAI_GPG_PASSPHRASE }}
93- GPG_PRIVATE_KEY_BASE64 : ${{ secrets.OHAI_GPG_PRIVATE_KEY_BASE64 }} # base64 encoded
108+ GITHUB_TOKEN : ${{ secrets.gh_token }}
109+ GPG_PRIVATE_KEY_BASE64 : ${{ secrets.gpg_private_key_base64 }} # base64 encoded
110+ GPG_PASSPHRASE : ${{ secrets.gpg_passphrase }}
111+ PFX_CERTIFICATE_BASE64 : ${{ secrets.pfx_certificate_base64 }} # base64 encoded
112+ PFX_PASSPHRASE : ${{ secrets.pfx_passphrase }}
94113 GPG_MAIL : ' infrastructure-eng@newrelic.com'
95114 NR_RELEASE_TAG : ${{ inputs.tag_name }}
96115 GORELEASER_CURRENT_TAG : ${{ inputs.tag_name }}
116+ SKIP_WINDOWS_SIGN : ${{ env.SKIP_WINDOWS_SIGN }}
97117
98118 - name : Upload assets to pipeline
99119 uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
@@ -103,3 +123,25 @@ jobs:
103123 path : |
104124 ./bin/*
105125 ./dist/*
126+
127+ verify-windows-signatures :
128+ runs-on : windows-latest
129+ name : Verify Windows signatures
130+ needs : build
131+ if : ${{ ! inputs.skip_sign }}
132+ steps :
133+ - uses : actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
134+
135+ - name : Download built binaries
136+ uses : actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4
137+ with :
138+ name : built-binaries-${{ inputs.tag_name }}
139+ path : ./artifacts
140+
141+ - name : Verify Windows executable signatures
142+ shell : powershell
143+ run : |
144+ ./build/scripts/windows-exec-sign/verify-signature.ps1 -Executables @(
145+ "./artifacts/dist/newrelic-agent-control-windows_x86_64-pc-windows-msvc/newrelic-agent-control.exe",
146+ "./artifacts/dist/newrelic-agent-control-cli-windows_x86_64-pc-windows-msvc/newrelic-agent-control-cli.exe"
147+ )
0 commit comments