Bryan Frimin
138f24ef59
Add Homebrew tap publishing for prb CLI
...
Configure GoReleaser to publish the prb CLI to the getprobo/homebrew-tap repository on each release. Separate the prb archive from the main probod archive and add the necessary GitHub token to the release workflow.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-20 14:33:35 +01:00
Bryan Frimin
c74e5cc123
Add go fmt and go fix checks to lint
...
Adds go-fmt and go-fix Makefile targets that fail when gofmt or go fix
suggest changes. Both are wired into the lint target and used in CI.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
Signed-off-by: Sacha Al Himdani <sacha@getprobo.com >
2026-03-19 16:37:51 +01:00
Bryan Frimin
7ffb2d5e94
Add document viewer with proper 404 handling for trust center
...
Move document download/view to a dedicated viewer page with PDF preview,
access request flow, and a proper 404 error boundary when documents are
not found. The backend now returns NOT_FOUND instead of INTERNAL for
missing documents and reports.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-16 19:13:21 +01:00
Bryan Frimin
7ed9c6c2e6
Add go fmt and go fix checks to lint
...
Adds go-fmt and go-fix Makefile targets that fail when gofmt or go fix
suggest changes. Both are wired into the lint target and used in CI.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-16 17:32:25 +01:00
Bryan Frimin
807213d384
Stop tracking generated files
...
Run make generate in CI lint and test jobs since generated files are
now gitignored. Also include Relay codegen for frontend apps in the
generate target.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-16 16:19:47 +01:00
Bryan Frimin
3e3138f764
Cache Go modules explicitly with go mod download
...
Add go mod download step after setup-go in all CI jobs to ensure the
module cache is populated as a discrete step. This makes cache hits visible
in logs and prevents module downloads from being interleaved with build
operations, improving cache effectiveness.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-16 15:54:54 +01:00
Bryan Frimin
5c22789624
Add reviewdog to post lint errors as PR comments
...
Use reviewdog in the CI lint job so golangci-lint and eslint
failures appear as inline comments on pull request files instead
of only in job logs.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-16 00:41:22 +01:00
mendral-app[bot]
1921445a73
ci: add shared build job to eliminate redundant make build in test and lint
...
Extract make build into a dedicated build job that uploads artifacts
(bin/probod, frontend dist, emails dist). Both test and lint jobs now
download these artifacts instead of rebuilding from scratch.
This eliminates ~172 compute minutes/week of redundant builds while
keeping wall-clock time neutral (test and lint were spending their
first ~2min building anyway).
2026-03-11 13:43:11 +01:00
mendral-app[bot]
76e1c17a24
ci: remove redundant grype install from release-snapshot workflow
...
The manual grype install (cache + curl-pipe-sh + PATH export) is redundant
because anchore/scan-action already bundles grype internally. Removing it
also eliminates a supply chain risk: the install script was fetched from
the mutable @main branch of anchore/grype via curl | sh, in a job with
packages:write and id-token:write permissions.
2026-03-11 05:28:01 -07:00
Bryan Frimin
38b12fa278
Upgrade go version
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-09 14:52:23 +01:00
Sacha Al Himdani
e173b26acd
Update go and open telemetry
...
Signed-off-by: Sacha Al Himdani <sacha@getprobo.com >
2026-03-02 09:39:10 +01:00
Bryan Frimin
9b0226ad3c
Upgrade codesign installer
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-16 17:53:22 +01:00
Bryan Frimin
76dc874ed6
Fix double install codesign
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-16 17:46:38 +01:00
Bryan Frimin
43b44b06bf
Set fixed version of codesign + upgrade to docker v2
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-16 17:41:43 +01:00
Bryan Frimin
c9de03ec43
Fix cosign cache race condition
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-16 17:26:35 +01:00
Bryan Frimin
d2dbb6f714
Use bigger github hosted runner
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-13 16:20:31 +01:00
Bryan Frimin
015ebe43dc
Use sbom file for grype
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-11 11:56:18 +01:00
Émile Ré
4c28792944
Upgrade go to 1.25.7
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-09 10:55:58 +04:00
mendral-app[bot]
09d73cf413
chore: pin all third-party actions to SHA digests
...
Pin third-party GitHub Actions to immutable SHA digests to prevent
supply chain attacks via tag force-pushing or branch updates.
Actions pinned:
- trufflesecurity/trufflehog (was @main, now SHA)
- sigstore/cosign-installer@v3.8.1
- docker/setup-buildx-action@v3.12 .0
- docker/setup-qemu-action@v3.7.0
- docker/login-action@v3.7.0
- goreleaser/goreleaser-action@v6.4.0
- aquasecurity/trivy-action@0.33 .1
- github/codeql-action/upload-sarif@v4.32 .1
- golangci/golangci-lint-action@v9.2.0
- docker/setup-compose-action@v1.2.0
Version comments added for maintainability.
2026-02-05 08:28:22 +01:00
Émile Ré
459ee41bd0
Skip apps building on api e2e tests
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-04 18:32:53 +04:00
Bryan Frimin
31f2cde8d0
Fix missing golintci binary
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-02 19:06:36 +01:00
Bryan Frimin
f7f2d704f2
Update github action lint command
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-02 18:45:37 +01:00
dependabot[bot]
b88a6ba012
Bump the github-actions group with 10 updates
...
Bumps the github-actions group with 10 updates:
| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout ) | `4` | `6` |
| [actions/setup-go](https://github.com/actions/setup-go ) | `5` | `6` |
| [actions/setup-node](https://github.com/actions/setup-node ) | `4` | `6` |
| [actions/cache](https://github.com/actions/cache ) | `4` | `5` |
| [anchore/sbom-action](https://github.com/anchore/sbom-action ) | `0.20.5` | `0.22.1` |
| [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action ) | `0.28.0` | `0.33.1` |
| [anchore/scan-action](https://github.com/anchore/scan-action ) | `6.5.1` | `7.3.1` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact ) | `4` | `6` |
| [actions/attest-sbom](https://github.com/actions/attest-sbom ) | `1` | `3` |
| [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance ) | `1` | `3` |
Updates `actions/checkout` from 4 to 6
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v4...v6 )
Updates `actions/setup-go` from 5 to 6
- [Release notes](https://github.com/actions/setup-go/releases )
- [Commits](https://github.com/actions/setup-go/compare/v5...v6 )
Updates `actions/setup-node` from 4 to 6
- [Release notes](https://github.com/actions/setup-node/releases )
- [Commits](https://github.com/actions/setup-node/compare/v4...v6 )
Updates `actions/cache` from 4 to 5
- [Release notes](https://github.com/actions/cache/releases )
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md )
- [Commits](https://github.com/actions/cache/compare/v4...v5 )
Updates `anchore/sbom-action` from 0.20.5 to 0.22.1
- [Release notes](https://github.com/anchore/sbom-action/releases )
- [Changelog](https://github.com/anchore/sbom-action/blob/main/RELEASE.md )
- [Commits](da167eac91...deef08a0db )
Updates `aquasecurity/trivy-action` from 0.28.0 to 0.33.1
- [Release notes](https://github.com/aquasecurity/trivy-action/releases )
- [Commits](https://github.com/aquasecurity/trivy-action/compare/0.28.0...0.33.1 )
Updates `anchore/scan-action` from 6.5.1 to 7.3.1
- [Release notes](https://github.com/anchore/scan-action/releases )
- [Changelog](https://github.com/anchore/scan-action/blob/main/RELEASE.md )
- [Commits](1638637db6...8d2fce0942 )
Updates `actions/upload-artifact` from 4 to 6
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v6 )
Updates `actions/attest-sbom` from 1 to 3
- [Release notes](https://github.com/actions/attest-sbom/releases )
- [Changelog](https://github.com/actions/attest-sbom/blob/main/RELEASE.md )
- [Commits](https://github.com/actions/attest-sbom/compare/v1...v3 )
Updates `actions/attest-build-provenance` from 1 to 3
- [Release notes](https://github.com/actions/attest-build-provenance/releases )
- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md )
- [Commits](https://github.com/actions/attest-build-provenance/compare/v1...v3 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/setup-go
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/setup-node
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/cache
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: anchore/sbom-action
dependency-version: 0.22.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: github-actions
- dependency-name: aquasecurity/trivy-action
dependency-version: 0.33.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: github-actions
- dependency-name: anchore/scan-action
dependency-version: 7.3.1
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/upload-artifact
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/attest-sbom
dependency-version: '3'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/attest-build-provenance
dependency-version: '3'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-01 21:14:12 +00:00
Émile Ré
58838e1420
Upgrade go to 1.25.6
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-29 11:59:12 +04:00
Émile Ré
975cccdc3a
Fix dependabot.yaml is not a CI workflow
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-29 08:55:13 +04:00
mendral-app[bot]
db27c6763f
fix: add grype binary caching and retry logic to release-snapshot job
...
- Cache grype binary using actions/cache to avoid repeated downloads
- Add retry logic (3 attempts with exponential backoff) for grype installation
- Pre-install grype before scan-action to ensure it's available
This addresses the HTTP 503/504 timeout errors when downloading grype from
GitHub releases, which caused 6 failures on the main branch in the past 14 days
(90.32% success rate vs 99% target).
2026-01-26 17:11:04 -08:00
Bryan Frimin
9b84206d56
Add Dependabot configuration for all dependencies
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-01-26 17:03:04 -08:00
mendral-app[bot]
1b0fffe99e
ci(release): enable Go module caching
...
Add cache: true to actions/setup-go@v5 in the Release workflow to
cache Go modules between runs. This reduces the GoReleaser step
duration from 5-18 minutes to 1-3 minutes by avoiding repeated
module downloads.
2026-01-26 08:49:41 -08:00
Émile Ré
d1f6006a17
Rename e2e test results artifact
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-26 12:08:55 +04:00
Émile Ré
f32b7d60f7
Always upload test results + fix cgo enabling for tests
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-26 12:02:46 +04:00
Émile Ré
0c73e28a31
Add junit results to e2e tests too
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-26 11:53:59 +04:00
Émile Ré
e1989e002f
Add gotestsum as a tool and use junit format to get test analysis
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-26 11:34:05 +04:00
Émile Ré
188ae13d58
Move linting in dedicated CI job
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-23 13:17:46 +04:00
Émile Ré
4d80dccbbf
Fix bot review
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-22 21:06:19 +04:00
Émile Ré
36cd0cae95
Update node to LTS and npm to avoid issue with optional dependencies on natives
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-22 17:47:44 +04:00
mendral-app[bot]
f55d4984ec
Enable Go module and npm caching in make workflow to reduce CI execution time
2026-01-05 13:58:41 +01:00
mendral-app[bot]
4a377e4aff
Suppress mkcert Firefox/Chrome warning in E2E tests
2026-01-05 11:21:52 +01:00
mendral-app[bot]
b438732bf7
Cache Trivy database to prevent HTTP 504 download failures
2026-01-02 01:15:43 -08:00
Bryan Frimin
ee08aeb8bf
Disable trivy license scanning
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-24 08:55:27 +01:00
Bryan Frimin
3830300c8e
Update trivy version
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-24 08:49:47 +01:00
Bryan Frimin
def286a827
Fix trivy version
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-24 08:46:21 +01:00
Bryan Frimin
564540e2ab
Fix path for trivy
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-24 08:44:12 +01:00
Bryan Frimin
179f44db3e
Fix ignore file
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-24 08:35:26 +01:00
Bryan Frimin
fd87a70cf2
Add license checker
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-23 22:35:46 +01:00
Émile Ré
81cb0de8f2
Update github workflows
...
Signed-off-by: Émile Ré <nemile.re@gmail.com >
2025-12-15 18:24:00 +01:00
Bryan Frimin
9bbea1d15e
Upgrade golang version
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-03 11:48:52 +01:00
Bryan Frimin
55794631ee
Fix output and sarif upload trivy
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-03 11:40:36 +01:00
Bryan Frimin
cd657e1bd8
Fix missing node modules release target
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-02 16:20:52 +01:00
Bryan Frimin
e01bec9f88
Fix npm version
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-02 15:33:23 +01:00
Bryan Frimin
d718766a94
Fix npm git url
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2025-12-02 15:26:51 +01:00