-
Notifications
You must be signed in to change notification settings - Fork 0
68 lines (60 loc) · 1.8 KB
/
spec-coverage.yml
File metadata and controls
68 lines (60 loc) · 1.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
name: specs coverage
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
pull-requests: write
contents: read
jobs:
coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Checkout specs tool
uses: actions/checkout@v4
with:
repository: ganesh47/specs
path: .specs-tool
- name: Install specs tool deps
working-directory: .specs-tool
run: npm install
- name: Build specs CLI
working-directory: .specs-tool
run: npm run build --workspace packages/specs-cli
- name: Run specs coverage
run: node .specs-tool/packages/specs-cli/bin/specs.js coverage
- name: spec-kit availability
run: npm run spec-kit:check
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Python deps for Semgrep
run: python3 -m pip install --upgrade pip semgrep
- name: SAST (Semgrep OSS)
run: semgrep --config p/ci --error --metrics=off
- name: Install Go
uses: actions/setup-go@v4
with:
go-version: '1.21'
- name: Install OSV-Scanner
run: |
go install github.com/google/osv-scanner/cmd/osv-scanner@latest
echo "$(go env GOPATH)/bin" >> "$GITHUB_PATH"
- name: SCA (OSV-Scanner)
run: osv-scanner -r .
- name: Install Gitleaks
run: go install github.com/zricethezav/gitleaks/v8@latest
- name: Secrets (Gitleaks)
run: gitleaks detect --no-banner --redact --source .
- name: IaC (Checkov)
uses: bridgecrewio/checkov-action@v12
with:
directory: .
quiet: true
skip_check: CKV_GHA_7