Skip to content

Commit 9d1aa6a

Browse files
committed
ci(build): Introduce code signing
The code signing is performed by the SignPath Github Action. All releases are automatically signed - both the MSI and all the binaries/DLLs.
1 parent 20f4386 commit 9d1aa6a

File tree

2 files changed

+47
-4
lines changed

2 files changed

+47
-4
lines changed

.github/workflows/release.yml

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,12 +88,29 @@ jobs:
8888
- name: Package
8989
shell: bash
9090
run: |
91-
export VERSION=${{ steps.get_version.outputs.VERSION }}
92-
./make.bat pkg
91+
export VERSION=${{ steps.get_version.outputs.VERSION }}
92+
./make.bat pkg
93+
mkdir ./build/msi/signed
9394
- uses: actions/upload-artifact@v4
95+
id: upload-msi
9496
with:
9597
name: fibratus-${{ steps.get_version.outputs.VERSION }}-amd64.msi
9698
path: "./build/msi/fibratus-${{ steps.get_version.outputs.VERSION }}-amd64.msi"
99+
- name: Sign MSI
100+
uses: signpath/github-action-submit-signing-request@v1
101+
with:
102+
api-token: "${{ secrets.SIGNPATH_API_TOKEN }}"
103+
organization-id: "${{ secrets.SIGNPATH_ORG_ID }}"
104+
project-slug: "fibratus"
105+
signing-policy-slug: "release-signing"
106+
github-artifact-id: "${{ steps.upload-msi.outputs.artifact-id }}"
107+
wait-for-completion: true
108+
output-artifact-directory: "./build/msi/signed"
109+
- uses: actions/upload-artifact@v4
110+
with:
111+
name: fibratus-${{ steps.get_version.outputs.VERSION }}-amd64.msi
112+
path: "./build/msi/signed/fibratus-${{ steps.get_version.outputs.VERSION }}-amd64.msi"
113+
overwrite: true
97114

98115
build-slim:
99116
runs-on: windows-latest
@@ -125,12 +142,30 @@ jobs:
125142
- name: Package
126143
shell: bash
127144
run: |
128-
export VERSION=${{ steps.get_version.outputs.VERSION }}
129-
./make.bat pkg-slim
145+
export VERSION=${{ steps.get_version.outputs.VERSION }}
146+
./make.bat pkg-slim
147+
mkdir ./build/msi/signed
130148
- uses: actions/upload-artifact@v4
149+
id: upload-msi
131150
with:
132151
name: fibratus-${{ steps.get_version.outputs.VERSION }}-slim-amd64.msi
133152
path: "./build/msi/fibratus-${{ steps.get_version.outputs.VERSION }}-slim-amd64.msi"
153+
- name: Sign MSI
154+
uses: signpath/github-action-submit-signing-request@v1
155+
with:
156+
api-token: "${{ secrets.SIGNPATH_API_TOKEN }}"
157+
organization-id: "${{ secrets.SIGNPATH_ORG_ID }}"
158+
project-slug: "fibratus"
159+
signing-policy-slug: "release-signing"
160+
artifact-configuration-slug: "fibratus-slim"
161+
github-artifact-id: "${{ steps.upload-msi.outputs.artifact-id }}"
162+
wait-for-completion: true
163+
output-artifact-directory: "./build/msi/signed"
164+
- uses: actions/upload-artifact@v4
165+
with:
166+
name: fibratus-${{ steps.get_version.outputs.VERSION }}-slim-amd64.msi
167+
path: "./build/msi/signed/fibratus-${{ steps.get_version.outputs.VERSION }}-slim-amd64.msi"
168+
overwrite: true
134169

135170
release:
136171
runs-on: windows-latest

README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,14 @@ To describe all rules in the catalog, use the `fibratus rules list` command. It
6262

6363
We love contributions. To start contributing to Fibratus, please read our [contribution guidelines](https://github.com/rabbitstack/fibratus/blob/master/CONTRIBUTING.md).
6464

65+
### Code Signing Policy
66+
67+
Free code signing provided by [SignPath.io], certificate by
68+
[SignPath Foundation]. All releases are automatically signed.
69+
70+
[SignPath.io]: https://signpath.io
71+
[SignPath Foundation]: https://signpath.org
72+
6573
---
6674

6775
<p align="center">

0 commit comments

Comments
 (0)