Skip to content

fix: deploy hygiene (validate-before-persist, env filter, honest badge, real hostname) — CashPilot-Desktop-ada #177

fix: deploy hygiene (validate-before-persist, env filter, honest badge, real hostname) — CashPilot-Desktop-ada

fix: deploy hygiene (validate-before-persist, env filter, honest badge, real hostname) — CashPilot-Desktop-ada #177

Workflow file for this run

name: CI
on:
pull_request:
push:
branches: [main]
permissions:
contents: read
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: build + test (linux)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- uses: actions/setup-go@v6
with:
go-version: '1.26.5'
cache: true
- name: Build
run: go build ./...
- name: Vet
run: go vet ./...
- name: Test (race + coverage)
run: go test -race -covermode=atomic -coverprofile=coverage.out ./...
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v7
with:
files: coverage.out
fail_ci_if_error: false
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
# Advisory dependency vulnerability scan (govulncheck). Non-blocking on purpose:
# the only current findings are upstream-unfixed github.com/docker/docker daemon
# CVEs (Fixed in: N/A) that a Docker *client* app cannot resolve by bumping the
# dependency — see docs/SECURITY-NOTES.md for the accepted list and rationale. It
# still surfaces any NEW or fixable vulnerability on every PR. Flip
# continue-on-error off (or drop the accepted CVEs) once moby ships fixes.
vuln:
name: govulncheck
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- uses: actions/setup-go@v6
with:
go-version: '1.26.5'
cache: true
- name: Install govulncheck
run: go install golang.org/x/vuln/cmd/govulncheck@latest
- name: Run govulncheck (advisory)
continue-on-error: true
run: govulncheck ./...