Skip to content

Commit 3401c35

Browse files
authored
Add Snapshot Testing (#401)
1 parent 9023469 commit 3401c35

10 files changed

Lines changed: 1322 additions & 0 deletions

File tree

.claude/skills/docs/SKILL.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
---
2+
name: docs
3+
description: Update project documentation when features are added or changed. Use after modifying CLI commands, OPA rules, MCP tools, or the development workflow.
4+
paths: opa/rego/**, cmd/**, docs/**, README.md, MCP_INTEGRATION.md, CONTRIBUTING.md
5+
---
6+
7+
Review recent code changes and update all relevant documentation:
8+
9+
1. **Rule documentation** (`docs/content/en/rules/<rule_id>.md`):
10+
- If a new rule was added, create a new markdown file following the existing format:
11+
```
12+
---
13+
title: "Rule Title"
14+
slug: rule_id
15+
url: /rules/rule_id/
16+
rule: rule_id
17+
severity: error|warning|note
18+
---
19+
## Description
20+
## Remediation
21+
## See Also
22+
```
23+
- If an existing rule was modified, update its description, remediation, or examples
24+
- Reference existing rule docs in `docs/content/en/rules/` for format guidance
25+
26+
2. **README.md** — Update if CLI commands, flags, or usage patterns changed
27+
28+
3. **MCP_INTEGRATION.md** — Update if MCP tools were added, removed, or changed
29+
30+
4. **CONTRIBUTING.md** — Update if development workflow, testing, or build process changed
31+
32+
5. **Structured finding metadata** (`docs/content/en/structured-finding-metadata.md`) — Update if finding JSON fields changed
33+
34+
Read the changed files first to understand what needs documenting, then make the updates.

.claude/skills/quality/SKILL.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
name: quality
3+
description: Run code formatting and linting after writing or modifying Go code. Use this after making code changes to ensure quality standards are met.
4+
allowed-tools: Bash(make fmt:*), Bash(make lint-branch:*), Bash(make test:*)
5+
---
6+
7+
Run code quality checks on the current branch:
8+
9+
1. Format all Go code: `make fmt`
10+
2. Run branch-scoped linting (only changes vs main): `make lint-branch`
11+
3. Run all tests: `make test`
12+
13+
Fix any issues found before proceeding. Report a summary of what passed and what failed.

.claude/skills/snapshot/SKILL.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
name: snapshot
3+
description: Run snapshot regression tests after changes to OPA rules, scanners, analyzers, or formatters to detect output regressions.
4+
allowed-tools: Bash(make snapshot:*), Bash(make update-snapshots:*)
5+
paths: opa/**, scanner/**, analyze/**, formatters/**
6+
---
7+
8+
Run the snapshot regression tests to validate analysis output hasn't changed:
9+
10+
1. Run snapshot tests: `make snapshot`
11+
2. If tests fail, examine the diff carefully:
12+
- If the change is **expected** (new rule, modified output format, updated OPA policy), update the snapshots: `make update-snapshots`
13+
- If the change is **unexpected**, investigate what caused the regression and fix the root cause
14+
3. After updating snapshots, re-run `make snapshot` to confirm they pass
15+
4. Report which snapshots changed and why
16+
17+
Note: Requires GH_TOKEN environment variable to be set.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
name: update-vulndb
3+
description: Update the embedded build platform vulnerability database from the CVE Project's cvelistV5 repository.
4+
disable-model-invocation: true
5+
allowed-tools: Bash(make update-vulndb:*), Bash(make test:*)
6+
---
7+
8+
Update the embedded build platform vulnerability database:
9+
10+
1. Run the database update: `make update-vulndb`
11+
2. Verify the updated database compiles correctly: `make test`
12+
3. Report how many CVEs were added or updated compared to the previous version
13+
14+
Note: This clones the CVE repository (sparse checkout) and processes CVE JSON files for GitHub Actions and GitLab CI vulnerabilities. The output is written to `opa/rego/external/build_platform.rego`.

.github/workflows/build_test.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,5 @@ jobs:
3232
run: go build -v ./...
3333
- name: Test
3434
run: go test -v ./...
35+
env:
36+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Makefile

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,20 @@ fmt:
1616

1717
lint:
1818
golangci-lint run
19+
20+
.PHONY: lint-branch
21+
lint-branch:
22+
golangci-lint run --new-from-merge-base main
23+
24+
.PHONY: snapshot
25+
snapshot:
26+
go test -v -run TestSnapshot -timeout 10m ./test/snapshot/
27+
28+
.PHONY: update-snapshots
29+
update-snapshots:
30+
UPDATE_SNAPS=true go test -v -run TestSnapshot -timeout 10m ./test/snapshot/
31+
32+
.PHONY: update-vulndb
33+
update-vulndb:
34+
go test -tags build_platform_vuln_database -run TestPopulateBuildPlatformVulnDatabase -timeout 10m ./opa/
35+
opa fmt -w opa/rego/external/build_platform.rego

go.mod

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ go 1.25.0
44

55
require (
66
github.com/cenkalti/backoff/v4 v4.3.0
7+
github.com/gkampitakis/go-snaps v0.5.21
78
github.com/gofri/go-github-ratelimit v1.1.1
89
github.com/google/go-github/v59 v59.0.0
910
github.com/hashicorp/go-version v1.7.0
@@ -36,12 +37,14 @@ require (
3637
github.com/dgraph-io/ristretto/v2 v2.3.0 // indirect
3738
github.com/fatih/color v1.18.0 // indirect
3839
github.com/fsnotify/fsnotify v1.9.0 // indirect
40+
github.com/gkampitakis/ciinfo v0.3.2 // indirect
3941
github.com/go-ini/ini v1.67.0 // indirect
4042
github.com/go-logr/logr v1.4.3 // indirect
4143
github.com/go-logr/stdr v1.2.2 // indirect
4244
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
4345
github.com/gobwas/glob v0.2.3 // indirect
4446
github.com/goccy/go-json v0.10.5 // indirect
47+
github.com/goccy/go-yaml v1.18.0 // indirect
4548
github.com/google/flatbuffers v25.9.23+incompatible // indirect
4649
github.com/google/go-querystring v1.1.0 // indirect
4750
github.com/google/uuid v1.6.0 // indirect
@@ -50,6 +53,8 @@ require (
5053
github.com/hashicorp/go-retryablehttp v0.7.8 // indirect
5154
github.com/inconshreveable/mousetrap v1.1.0 // indirect
5255
github.com/invopop/jsonschema v0.13.0 // indirect
56+
github.com/kr/pretty v0.3.1 // indirect
57+
github.com/kr/text v0.2.0 // indirect
5358
github.com/lestrrat-go/blackmagic v1.0.4 // indirect
5459
github.com/lestrrat-go/dsig v1.0.0 // indirect
5560
github.com/lestrrat-go/dsig-secp256k1 v1.0.0 // indirect
@@ -59,6 +64,7 @@ require (
5964
github.com/lestrrat-go/option v1.0.1 // indirect
6065
github.com/lestrrat-go/option/v2 v2.0.0 // indirect
6166
github.com/mailru/easyjson v0.7.7 // indirect
67+
github.com/maruel/natural v1.1.1 // indirect
6268
github.com/mattn/go-colorable v0.1.14 // indirect
6369
github.com/mattn/go-isatty v0.0.20 // indirect
6470
github.com/mattn/go-runewidth v0.0.19 // indirect
@@ -75,15 +81,21 @@ require (
7581
github.com/prometheus/procfs v0.17.0 // indirect
7682
github.com/rcrowley/go-metrics v0.0.0-20250401214520-65e299d6c5c9 // indirect
7783
github.com/rivo/uniseg v0.4.7 // indirect
84+
github.com/rogpeppe/go-internal v1.14.1 // indirect
7885
github.com/sagikazarmark/locafero v0.12.0 // indirect
7986
github.com/segmentio/asm v1.2.1 // indirect
87+
github.com/sergi/go-diff v1.4.0 // indirect
8088
github.com/shurcooL/graphql v0.0.0-20230722043721-ed46e5a46466 // indirect
8189
github.com/sirupsen/logrus v1.9.4-0.20230606125235-dd1b4c2e81af // indirect
8290
github.com/spf13/afero v1.15.0 // indirect
8391
github.com/spf13/cast v1.10.0 // indirect
8492
github.com/spf13/pflag v1.0.10 // indirect
8593
github.com/subosito/gotenv v1.6.0 // indirect
8694
github.com/tchap/go-patricia/v2 v2.3.3 // indirect
95+
github.com/tidwall/gjson v1.18.0 // indirect
96+
github.com/tidwall/match v1.1.1 // indirect
97+
github.com/tidwall/pretty v1.2.1 // indirect
98+
github.com/tidwall/sjson v1.2.5 // indirect
8799
github.com/valyala/fastjson v1.6.4 // indirect
88100
github.com/vektah/gqlparser/v2 v2.5.30 // indirect
89101
github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect

go.sum

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ github.com/clipperhouse/uax29/v2 v2.2.0 h1:ChwIKnQN3kcZteTXMgb1wztSgaU+ZemkgWdoh
2525
github.com/clipperhouse/uax29/v2 v2.2.0/go.mod h1:EFJ2TJMRUaplDxHKj1qAEhCtQPW2tJSwu5BF98AuoVM=
2626
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
2727
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
28+
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
2829
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
2930
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3031
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
@@ -51,6 +52,10 @@ github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHk
5152
github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0=
5253
github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
5354
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
55+
github.com/gkampitakis/ciinfo v0.3.2 h1:JcuOPk8ZU7nZQjdUhctuhQofk7BGHuIy0c9Ez8BNhXs=
56+
github.com/gkampitakis/ciinfo v0.3.2/go.mod h1:1NIwaOcFChN4fa/B0hEBdAb6npDlFL8Bwx4dfRLRqAo=
57+
github.com/gkampitakis/go-snaps v0.5.21 h1:SvhSFeZviQXwlT+dnGyAIATVehkhqRVW6qfQZhCZH+Y=
58+
github.com/gkampitakis/go-snaps v0.5.21/go.mod h1:gC3YqxQTPyIXvQrw/Vpt3a8VqR1MO8sVpZFWN4DGwNs=
5459
github.com/go-ini/ini v1.67.0 h1:z6ZrTEZqSWOTyH2FlglNbNgARyHG8oLW9gMELqKr06A=
5560
github.com/go-ini/ini v1.67.0/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8=
5661
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
@@ -64,6 +69,8 @@ github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y=
6469
github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
6570
github.com/goccy/go-json v0.10.5 h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4=
6671
github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
72+
github.com/goccy/go-yaml v1.18.0 h1:8W7wMFS12Pcas7KU+VVkaiCng+kG8QiFeFwzFb+rwuw=
73+
github.com/goccy/go-yaml v1.18.0/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA=
6774
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
6875
github.com/gofri/go-github-ratelimit v1.1.1 h1:5TCOtFf45M2PjSYU17txqbiYBEzjOuK1+OhivbW69W0=
6976
github.com/gofri/go-github-ratelimit v1.1.1/go.mod h1:wGZlBbzHmIVjwDR3pZgKY7RBTV6gsQWxLVkpfwhcMJM=
@@ -125,6 +132,8 @@ github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0
125132
github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
126133
github.com/mark3labs/mcp-go v0.42.0 h1:gk/8nYJh8t3yroCAOBhNbYsM9TCKvkM13I5t5Hfu6Ls=
127134
github.com/mark3labs/mcp-go v0.42.0/go.mod h1:YnJfOL382MIWDx1kMY+2zsRHU/q78dBg9aFb8W6Thdw=
135+
github.com/maruel/natural v1.1.1 h1:Hja7XhhmvEFhcByqDoHz9QZbkWey+COd9xWfCfn1ioo=
136+
github.com/maruel/natural v1.1.1/go.mod h1:v+Rfd79xlw1AgVBjbO0BEQmptqb5HvL/k9GRHB7ZKEg=
128137
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
129138
github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE=
130139
github.com/mattn/go-colorable v0.1.14/go.mod h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8=
@@ -157,6 +166,7 @@ github.com/package-url/packageurl-go v0.1.3 h1:4juMED3hHiz0set3Vq3KeQ75KD1avthoX
157166
github.com/package-url/packageurl-go v0.1.3/go.mod h1:nKAWB8E6uk1MHqiS/lQb9pYBGH2+mdJ2PJc2s50dQY0=
158167
github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4=
159168
github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY=
169+
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
160170
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
161171
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
162172
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
@@ -173,6 +183,7 @@ github.com/rcrowley/go-metrics v0.0.0-20250401214520-65e299d6c5c9 h1:bsUq1dX0N8A
173183
github.com/rcrowley/go-metrics v0.0.0-20250401214520-65e299d6c5c9/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
174184
github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=
175185
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
186+
github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
176187
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
177188
github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc=
178189
github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0=
@@ -205,6 +216,7 @@ github.com/spf13/pflag v1.0.10/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3A
205216
github.com/spf13/viper v1.21.0 h1:x5S+0EU27Lbphp4UKm1C+1oQO+rKx36vfCoaVebLFSU=
206217
github.com/spf13/viper v1.21.0/go.mod h1:P0lhsswPGWD/1lZJ9ny3fYnVqxiegrlNrEmgLjbTCAY=
207218
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
219+
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
208220
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
209221
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
210222
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
@@ -214,6 +226,16 @@ github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8
214226
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
215227
github.com/tchap/go-patricia/v2 v2.3.3 h1:xfNEsODumaEcCcY3gI0hYPZ/PcpVv5ju6RMAhgwZDDc=
216228
github.com/tchap/go-patricia/v2 v2.3.3/go.mod h1:VZRHKAb53DLaG+nA9EaYYiaEx6YztwDlLElMsnSHD4k=
229+
github.com/tidwall/gjson v1.14.2/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=
230+
github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY=
231+
github.com/tidwall/gjson v1.18.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=
232+
github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA=
233+
github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
234+
github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
235+
github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4=
236+
github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
237+
github.com/tidwall/sjson v1.2.5 h1:kLy8mja+1c9jlljvWTlSazM7cKDRfJuR/bOJhcY5NcY=
238+
github.com/tidwall/sjson v1.2.5/go.mod h1:Fvgq9kS/6ociJEDnK0Fk1cpYF4FIW6ZF7LAe+6jwd28=
217239
github.com/valyala/fastjson v1.6.4 h1:uAUNq9Z6ymTgGhcm0UynUAB6tlbakBrz6CQFax3BXVQ=
218240
github.com/valyala/fastjson v1.6.4/go.mod h1:CLCAqky6SMuOcxStkYQvblddUtoRxhYMGLrsQns1aXY=
219241
github.com/vektah/gqlparser/v2 v2.5.30 h1:EqLwGAFLIzt1wpx1IPpY67DwUujF1OfzgEyDsLrN6kE=
@@ -307,8 +329,11 @@ google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aO
307329
google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
308330
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
309331
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
332+
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
310333
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
311334
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
335+
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
336+
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
312337
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
313338
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
314339
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

0 commit comments

Comments
 (0)