Skip to content

fix(ci): remove pointless cp out/404.html out/404.html step #38

fix(ci): remove pointless cp out/404.html out/404.html step

fix(ci): remove pointless cp out/404.html out/404.html step #38

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
go:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- uses: actions/setup-go@v6
with:
go-version: "1.25"
- name: Download dependencies
run: go mod download
- name: Build
run: go build ./...
- name: Vet
run: go vet ./...
- name: Test
run: go test ./... -count=1 -race -coverprofile=coverage.out -covermode=atomic
- name: Upload coverage
uses: codecov/codecov-action@v5
with:
files: ./coverage.out
fail_ci_if_error: false
- name: golangci-lint
uses: golangci/golangci-lint-action@v9
with:
version: v2.13
args: --timeout 5m
- name: Vulnerability scan
run: |
go install golang.org/x/vuln/cmd/govulncheck@latest
govulncheck ./...
- name: Secret scan (gitleaks)
run: |
docker run --rm -v "${GITHUB_WORKSPACE}:/path" -w /path zricethezav/gitleaks:latest detect --no-git --source . --config .gitleaks.toml --no-banner --redact
- name: SAST (semgrep)
uses: returntocorp/semgrep-action@v1
with:
config: >-
p/default
tui:
runs-on: ubuntu-latest
needs: go
steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v5
with:
node-version: "20"
- name: Install dependencies
working-directory: tui
run: npm ci
- name: Build
working-directory: tui
run: npm run build
- name: Lint
working-directory: tui
run: npm run lint
- name: Unit tests
working-directory: tui
run: npm run test:unit
- name: E2E (live server)
working-directory: tui
run: |
cd ..
go build -o aicodingagentteam ./cmd/aicodingagentteam
cd tui
npm test
quality-gate:
runs-on: ubuntu-latest
needs: go
steps:
- uses: actions/checkout@v5
- uses: actions/setup-go@v6
with:
go-version: "1.25"
- name: Build coordinator
run: go build -o aicodingagentteam ./cmd/aicodingagentteam
- name: Dogfood quality gate
run: ./aicodingagentteam verify
container-scan:
runs-on: ubuntu-latest
needs: go
steps:
- uses: actions/checkout@v5
- name: Build Docker image
run: docker build -f deploy/docker/agent/Dockerfile -t aicodingagentteam:ci .
- name: Trivy container scan
uses: aquasecurity/trivy-action@master
with:
image-ref: aicodingagentteam:ci
severity: CRITICAL,HIGH
exit-code: "1"