Commit Graph

105 Commits

Author SHA1 Message Date
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
Bryan Frimin
3be517289e Fix npm scope
Signed-off-by: Bryan Frimin <bryan@getprobo.com>
2025-12-02 15:21:50 +01:00
Bryan Frimin
f02e6eca9b Fix update version command
Signed-off-by: Bryan Frimin <bryan@getprobo.com>
2025-12-02 15:17:08 +01:00
Bryan Frimin
6ba68ee830 Enable trusted publisher
Signed-off-by: Bryan Frimin <bryan@getprobo.com>
2025-12-02 14:35:38 +01:00
Bryan Frimin
04f3f3798a Fix npm config
Signed-off-by: Bryan Frimin <bryan@getprobo.com>
2025-12-02 14:28:15 +01:00
Bryan Frimin
0daf272320 Add release workflow
Signed-off-by: Bryan Frimin <bryan@getprobo.com>
2025-12-02 13:38:26 +01:00
Bryan Frimin
04a142038e Update grype output
Signed-off-by: Bryan Frimin <bryan@getprobo.com>
2025-12-02 10:58:03 +01:00