@intentius/chant-lexicon-gitlab 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/codegen/docs-cli.d.ts +2 -0
- package/dist/codegen/docs-cli.d.ts.map +1 -0
- package/dist/codegen/docs.d.ts +12 -0
- package/dist/codegen/docs.d.ts.map +1 -0
- package/dist/codegen/fetch.d.ts +40 -0
- package/dist/codegen/fetch.d.ts.map +1 -0
- package/dist/codegen/generate-cli.d.ts +6 -0
- package/dist/codegen/generate-cli.d.ts.map +1 -0
- package/dist/codegen/generate-lexicon.d.ts +19 -0
- package/dist/codegen/generate-lexicon.d.ts.map +1 -0
- package/dist/codegen/generate-typescript.d.ts +11 -0
- package/dist/codegen/generate-typescript.d.ts.map +1 -0
- package/dist/codegen/generate.d.ts +19 -0
- package/dist/codegen/generate.d.ts.map +1 -0
- package/dist/codegen/naming.d.ts +15 -0
- package/dist/codegen/naming.d.ts.map +1 -0
- package/dist/codegen/package.d.ts +11 -0
- package/dist/codegen/package.d.ts.map +1 -0
- package/dist/codegen/parse.d.ts +60 -0
- package/dist/codegen/parse.d.ts.map +1 -0
- package/dist/codegen/patches.d.ts +31 -0
- package/dist/codegen/patches.d.ts.map +1 -0
- package/dist/codegen/typecheck.d.ts +5 -0
- package/dist/codegen/typecheck.d.ts.map +1 -0
- package/dist/composites/docker-build.d.ts +29 -0
- package/dist/composites/docker-build.d.ts.map +1 -0
- package/dist/composites/index.d.ts +11 -0
- package/dist/composites/index.d.ts.map +1 -0
- package/dist/composites/mr-plan-report.d.ts +43 -0
- package/dist/composites/mr-plan-report.d.ts.map +1 -0
- package/dist/composites/node-pipeline.d.ts +55 -0
- package/dist/composites/node-pipeline.d.ts.map +1 -0
- package/dist/composites/python-pipeline.d.ts +21 -0
- package/dist/composites/python-pipeline.d.ts.map +1 -0
- package/dist/composites/review-app.d.ts +24 -0
- package/dist/composites/review-app.d.ts.map +1 -0
- package/dist/coverage.d.ts +18 -0
- package/dist/coverage.d.ts.map +1 -0
- package/dist/generated/index.d.ts +22 -0
- package/dist/generated/index.d.ts.map +1 -0
- package/dist/generated/runtime.d.ts +5 -0
- package/dist/generated/runtime.d.ts.map +1 -0
- package/dist/import/generator.d.ts +19 -0
- package/dist/import/generator.d.ts.map +1 -0
- package/dist/import/parser.d.ts +14 -0
- package/dist/import/parser.d.ts.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/integrity.json +12 -12
- package/dist/intrinsics.d.ts +30 -0
- package/dist/intrinsics.d.ts.map +1 -0
- package/dist/lint/post-synth/index.d.ts +3 -0
- package/dist/lint/post-synth/index.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl010.d.ts +9 -0
- package/dist/lint/post-synth/wgl010.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl011.d.ts +13 -0
- package/dist/lint/post-synth/wgl011.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl012.d.ts +13 -0
- package/dist/lint/post-synth/wgl012.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl013.d.ts +16 -0
- package/dist/lint/post-synth/wgl013.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl014.d.ts +13 -0
- package/dist/lint/post-synth/wgl014.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl015.d.ts +12 -0
- package/dist/lint/post-synth/wgl015.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl016.d.ts +10 -0
- package/dist/lint/post-synth/wgl016.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl017.d.ts +10 -0
- package/dist/lint/post-synth/wgl017.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl018.d.ts +9 -0
- package/dist/lint/post-synth/wgl018.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl019.d.ts +9 -0
- package/dist/lint/post-synth/wgl019.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl020.d.ts +11 -0
- package/dist/lint/post-synth/wgl020.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl021.d.ts +10 -0
- package/dist/lint/post-synth/wgl021.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl022.d.ts +10 -0
- package/dist/lint/post-synth/wgl022.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl023.d.ts +10 -0
- package/dist/lint/post-synth/wgl023.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl024.d.ts +10 -0
- package/dist/lint/post-synth/wgl024.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl025.d.ts +10 -0
- package/dist/lint/post-synth/wgl025.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl026.d.ts +10 -0
- package/dist/lint/post-synth/wgl026.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl027.d.ts +9 -0
- package/dist/lint/post-synth/wgl027.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl028.d.ts +11 -0
- package/dist/lint/post-synth/wgl028.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl029.d.ts +11 -0
- package/dist/lint/post-synth/wgl029.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl030.d.ts +11 -0
- package/dist/lint/post-synth/wgl030.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl031.d.ts +11 -0
- package/dist/lint/post-synth/wgl031.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl032.d.ts +12 -0
- package/dist/lint/post-synth/wgl032.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl033.d.ts +11 -0
- package/dist/lint/post-synth/wgl033.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl034.d.ts +12 -0
- package/dist/lint/post-synth/wgl034.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl035.d.ts +12 -0
- package/dist/lint/post-synth/wgl035.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl036.d.ts +14 -0
- package/dist/lint/post-synth/wgl036.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl037.d.ts +12 -0
- package/dist/lint/post-synth/wgl037.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl038.d.ts +14 -0
- package/dist/lint/post-synth/wgl038.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl039.d.ts +11 -0
- package/dist/lint/post-synth/wgl039.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl040.d.ts +11 -0
- package/dist/lint/post-synth/wgl040.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl041.d.ts +13 -0
- package/dist/lint/post-synth/wgl041.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl042.d.ts +12 -0
- package/dist/lint/post-synth/wgl042.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl043.d.ts +12 -0
- package/dist/lint/post-synth/wgl043.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl044.d.ts +11 -0
- package/dist/lint/post-synth/wgl044.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl045.d.ts +12 -0
- package/dist/lint/post-synth/wgl045.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl046.d.ts +12 -0
- package/dist/lint/post-synth/wgl046.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl047.d.ts +11 -0
- package/dist/lint/post-synth/wgl047.d.ts.map +1 -0
- package/dist/lint/post-synth/wgl048.d.ts +11 -0
- package/dist/lint/post-synth/wgl048.d.ts.map +1 -0
- package/dist/lint/post-synth/yaml-helpers.d.ts +107 -0
- package/dist/lint/post-synth/yaml-helpers.d.ts.map +1 -0
- package/dist/lint/rules/artifact-no-expiry.d.ts +9 -0
- package/dist/lint/rules/artifact-no-expiry.d.ts.map +1 -0
- package/dist/lint/rules/data/known-include-sources.d.ts +14 -0
- package/dist/lint/rules/data/known-include-sources.d.ts.map +1 -0
- package/dist/lint/rules/data/untrusted-variables.d.ts +14 -0
- package/dist/lint/rules/data/untrusted-variables.d.ts.map +1 -0
- package/dist/lint/rules/deprecated-only-except.d.ts +10 -0
- package/dist/lint/rules/deprecated-only-except.d.ts.map +1 -0
- package/dist/lint/rules/index.d.ts +8 -0
- package/dist/lint/rules/index.d.ts.map +1 -0
- package/dist/lint/rules/missing-script.d.ts +9 -0
- package/dist/lint/rules/missing-script.d.ts.map +1 -0
- package/dist/lint/rules/missing-stage.d.ts +9 -0
- package/dist/lint/rules/missing-stage.d.ts.map +1 -0
- package/dist/lsp/completions.d.ts +6 -0
- package/dist/lsp/completions.d.ts.map +1 -0
- package/dist/lsp/hover.d.ts +6 -0
- package/dist/lsp/hover.d.ts.map +1 -0
- package/dist/manifest.json +1 -1
- package/dist/mcp/context-tools.d.ts +20 -0
- package/dist/mcp/context-tools.d.ts.map +1 -0
- package/dist/migrate/from-github/actions/index.d.ts +13 -0
- package/dist/migrate/from-github/actions/index.d.ts.map +1 -0
- package/dist/migrate/from-github/actions/registry.d.ts +63 -0
- package/dist/migrate/from-github/actions/registry.d.ts.map +1 -0
- package/dist/migrate/from-github/actions/tier-1.d.ts +20 -0
- package/dist/migrate/from-github/actions/tier-1.d.ts.map +1 -0
- package/dist/migrate/from-github/actions/tier-2.d.ts +9 -0
- package/dist/migrate/from-github/actions/tier-2.d.ts.map +1 -0
- package/dist/migrate/from-github/actions/tier-3.d.ts +9 -0
- package/dist/migrate/from-github/actions/tier-3.d.ts.map +1 -0
- package/dist/migrate/from-github/composites/patterns.d.ts +27 -0
- package/dist/migrate/from-github/composites/patterns.d.ts.map +1 -0
- package/dist/migrate/from-github/composites/rewriter.d.ts +14 -0
- package/dist/migrate/from-github/composites/rewriter.d.ts.map +1 -0
- package/dist/migrate/from-github/diagnostics.d.ts +17 -0
- package/dist/migrate/from-github/diagnostics.d.ts.map +1 -0
- package/dist/migrate/from-github/emit-yaml.d.ts +16 -0
- package/dist/migrate/from-github/emit-yaml.d.ts.map +1 -0
- package/dist/migrate/from-github/expressions.d.ts +65 -0
- package/dist/migrate/from-github/expressions.d.ts.map +1 -0
- package/dist/migrate/from-github/index.d.ts +61 -0
- package/dist/migrate/from-github/index.d.ts.map +1 -0
- package/dist/migrate/from-github/provenance.d.ts +68 -0
- package/dist/migrate/from-github/provenance.d.ts.map +1 -0
- package/dist/migrate/from-github/rules.d.ts +12 -0
- package/dist/migrate/from-github/rules.d.ts.map +1 -0
- package/dist/migrate/from-github/security.d.ts +35 -0
- package/dist/migrate/from-github/security.d.ts.map +1 -0
- package/dist/migrate/from-github/stages.d.ts +34 -0
- package/dist/migrate/from-github/stages.d.ts.map +1 -0
- package/dist/migrate/from-github/transformer.d.ts +26 -0
- package/dist/migrate/from-github/transformer.d.ts.map +1 -0
- package/dist/package-cli.d.ts +3 -0
- package/dist/package-cli.d.ts.map +1 -0
- package/dist/plugin.d.ts +9 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/rules/wgl011.ts +2 -2
- package/dist/rules/wgl012.ts +2 -2
- package/dist/rules/wgl018.ts +2 -2
- package/dist/rules/wgl019.ts +2 -2
- package/dist/rules/wgl022.ts +2 -2
- package/dist/rules/wgl023.ts +2 -2
- package/dist/rules/wgl024.ts +2 -2
- package/dist/rules/wgl025.ts +2 -2
- package/dist/rules/wgl026.ts +2 -2
- package/dist/rules/wgl027.ts +2 -2
- package/dist/serializer.d.ts +14 -0
- package/dist/serializer.d.ts.map +1 -0
- package/dist/testdata/create-fixture.d.ts +7 -0
- package/dist/testdata/create-fixture.d.ts.map +1 -0
- package/dist/testdata/load-fixtures.d.ts +12 -0
- package/dist/testdata/load-fixtures.d.ts.map +1 -0
- package/dist/validate-cli.d.ts +3 -0
- package/dist/validate-cli.d.ts.map +1 -0
- package/dist/validate.d.ts +17 -0
- package/dist/validate.d.ts.map +1 -0
- package/dist/variables.d.ts +31 -0
- package/dist/variables.d.ts.map +1 -0
- package/package.json +20 -6
- package/src/codegen/parse.ts +2 -2
- package/src/lint/post-synth/index.ts +83 -0
- package/src/lint/post-synth/wgl011.ts +2 -2
- package/src/lint/post-synth/wgl012.ts +2 -2
- package/src/lint/post-synth/wgl018.ts +2 -2
- package/src/lint/post-synth/wgl019.ts +2 -2
- package/src/lint/post-synth/wgl022.ts +2 -2
- package/src/lint/post-synth/wgl023.ts +2 -2
- package/src/lint/post-synth/wgl024.ts +2 -2
- package/src/lint/post-synth/wgl025.ts +2 -2
- package/src/lint/post-synth/wgl026.ts +2 -2
- package/src/lint/post-synth/wgl027.ts +2 -2
- package/src/mcp/context-tools.ts +3 -5
- package/src/plugin.ts +2 -3
- package/src/serializer.ts +5 -5
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export { gitlabSerializer } from "./serializer.js";
|
|
2
|
+
export { gitlabPlugin } from "./plugin.js";
|
|
3
|
+
export { reference, ReferenceIntrinsic } from "./intrinsics.js";
|
|
4
|
+
export { CI } from "./variables.js";
|
|
5
|
+
export * from "./generated/index.js";
|
|
6
|
+
export { DockerBuild, NodePipeline, BunPipeline, PnpmPipeline, PythonPipeline, ReviewApp, MrPlanReport } from "./composites/index.js";
|
|
7
|
+
export type { DockerBuildProps, NodePipelineProps, PythonPipelineProps, ReviewAppProps, MrPlanReportProps } from "./composites/index.js";
|
|
8
|
+
export { fetchCISchema, fetchSchemas, GITLAB_SCHEMA_VERSION } from "./codegen/fetch.js";
|
|
9
|
+
export { parseCISchema, gitlabShortName, gitlabServiceName } from "./codegen/parse.js";
|
|
10
|
+
export type { GitLabParseResult, ParsedResource, ParsedProperty, ParsedPropertyType, ParsedEnum } from "./codegen/parse.js";
|
|
11
|
+
export { generate, writeGeneratedFiles } from "./codegen/generate.js";
|
|
12
|
+
export { packageLexicon } from "./codegen/package.js";
|
|
13
|
+
export type { PackageOptions, PackageResult } from "./codegen/package.js";
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAG7D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAIjC,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACnI,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGtI,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpF,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGzH,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/integrity.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"algorithm": "sha256",
|
|
3
3
|
"artifacts": {
|
|
4
|
-
"manifest.json": "
|
|
4
|
+
"manifest.json": "8280f5cc822f0966f949ebb45e470ee00866edc747332a5ecf43ae8656f41a89",
|
|
5
5
|
"meta.json": "931fc3246a55645b1493080bbeb160e5d205e42349e8bdca96ca243adb5f0da3",
|
|
6
6
|
"types/index.d.ts": "5cd2e99f135a929b72bdd822d00d780d39b1cd407ba0cfb3d511c7ac9d667b58",
|
|
7
7
|
"rules/artifact-no-expiry.ts": "3f3cabf9792cbf8207e53a25f506715466b19ec25e9c3b4d0d77fed6b2eb4542",
|
|
@@ -9,23 +9,23 @@
|
|
|
9
9
|
"rules/missing-script.ts": "1dba062d77fa248fc02857fd08bc7789f90eefd3206e552ac63782a04b843888",
|
|
10
10
|
"rules/missing-stage.ts": "ce810703cba6c8942282c4ebaeff23fe3312c4ecc362acce05baf85d0fd32ea3",
|
|
11
11
|
"rules/wgl010.ts": "e9a14d5f9e4c49b1524ba5ee3746be739603125ec3c2dc4eb4b7c0bfc32581b0",
|
|
12
|
-
"rules/wgl011.ts": "
|
|
13
|
-
"rules/wgl012.ts": "
|
|
12
|
+
"rules/wgl011.ts": "2fbb164669204ac8c3662b9c1ae156b59589913e59dd596fb38f289a0f218aaf",
|
|
13
|
+
"rules/wgl012.ts": "ec4bd3fe93d30824c74223bb4e5929e493a06561a7bd3265b68dc1ba5d734da4",
|
|
14
14
|
"rules/wgl013.ts": "f1309b1c048c00684181b9488a633f44068b537fd743ac21b0ae2712478158ba",
|
|
15
15
|
"rules/wgl014.ts": "acbbeec029ec7f23e74cebcd4965dae12ea991a5a29e754040edd4a0c3fd8f0c",
|
|
16
16
|
"rules/wgl015.ts": "040da46b2fe8126ba18c8d44957b402a710537eca0dc05d885498022ccec006a",
|
|
17
17
|
"rules/wgl016.ts": "d8bf9a371b22f37a767f92e3361d5f8e064e6dd6ba879ff1a5fc90b4b09fd304",
|
|
18
18
|
"rules/wgl017.ts": "2d212de62eee4f7b086b49c92975b09d988c1ff05c2fb20cffccdc500a14e668",
|
|
19
|
-
"rules/wgl018.ts": "
|
|
20
|
-
"rules/wgl019.ts": "
|
|
19
|
+
"rules/wgl018.ts": "dba1e1357becb1bbea9b435d9ce88b12138a53d8fc934483bc0ec8f22e4b18f5",
|
|
20
|
+
"rules/wgl019.ts": "d54038ed7b24ac8e8d59efba9645ef435fe090647138fff1946443dcd75ebfd1",
|
|
21
21
|
"rules/wgl020.ts": "81a84b49308f36ab2b01342bd0e262b59b2a8395d233760ac52a679c2a4ae0e6",
|
|
22
22
|
"rules/wgl021.ts": "59a75e0b0123779bcd4c7f66eb068c4302860df8333a4bc7b41c68e3983505da",
|
|
23
|
-
"rules/wgl022.ts": "
|
|
24
|
-
"rules/wgl023.ts": "
|
|
25
|
-
"rules/wgl024.ts": "
|
|
26
|
-
"rules/wgl025.ts": "
|
|
27
|
-
"rules/wgl026.ts": "
|
|
28
|
-
"rules/wgl027.ts": "
|
|
23
|
+
"rules/wgl022.ts": "96b87f8f410f5ffa6358823f4c8cb08a59166a7575166ede24e8c41b50f3be65",
|
|
24
|
+
"rules/wgl023.ts": "069ee847f09751319dc6ae6f8ff6eccb30d5c15242e526165ff98b386eb4ac3d",
|
|
25
|
+
"rules/wgl024.ts": "4665b340defd39ec627d9a12468b1f85e6a90021836baec3729acac195a6441b",
|
|
26
|
+
"rules/wgl025.ts": "2093a4e4f4e2ccdd4d6cc6f0cd389ae266ee6c36ac4189c5f597dfa2d7987cf3",
|
|
27
|
+
"rules/wgl026.ts": "3e8c0f24b065ac60f4348ba6a8435c717cc1cb113e0105b3eea7c2757bef8d8c",
|
|
28
|
+
"rules/wgl027.ts": "ba5d0e020ffda2b3adedff9aeb95c963bdfa01b4d00de6460dbd4fa535a03856",
|
|
29
29
|
"rules/wgl028.ts": "f1c64eda25e2ad8da634d64a397f877a46ae8327713db5cf3193882bb9b96453",
|
|
30
30
|
"rules/wgl029.ts": "f06d36689d5e5649ae4465ea3b45e6e5e797223f246c45b7cb4dab7bef09ab05",
|
|
31
31
|
"rules/wgl030.ts": "6acd43eadebde694676257de0a1b1b8477f3acd8f4db3380a987fafb8d65b68f",
|
|
@@ -52,5 +52,5 @@
|
|
|
52
52
|
"skills/chant-gitlab-migrate.md": "4853d04980560b379e5b0f7267dcb0a1e5d5879cb9e9931681ce76b2a5fe69d8",
|
|
53
53
|
"skills/chant-gitlab-patterns.md": "6d9a44e9e8de4c3820be9d65381b0d2ede4cb3626aaaf0011e21838a9fbf556e"
|
|
54
54
|
},
|
|
55
|
-
"composite": "
|
|
55
|
+
"composite": "37c0127c26164d77a012a046f7d699d94f491d5bf9b1e5584f381f3615e3b562"
|
|
56
56
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitLab CI/CD intrinsic functions.
|
|
3
|
+
*
|
|
4
|
+
* GitLab CI has a single intrinsic: the !reference tag.
|
|
5
|
+
* CI/CD variables ($CI_*) are just strings, not intrinsic functions.
|
|
6
|
+
*/
|
|
7
|
+
import { INTRINSIC_MARKER, type Intrinsic } from "@intentius/chant/intrinsic";
|
|
8
|
+
/**
|
|
9
|
+
* !reference tag intrinsic.
|
|
10
|
+
* References another job's properties: !reference [job_name, key]
|
|
11
|
+
*/
|
|
12
|
+
export declare class ReferenceIntrinsic implements Intrinsic {
|
|
13
|
+
readonly [INTRINSIC_MARKER]: true;
|
|
14
|
+
private path;
|
|
15
|
+
constructor(...path: string[]);
|
|
16
|
+
toJSON(): string[];
|
|
17
|
+
/**
|
|
18
|
+
* YAML representation uses the !reference tag.
|
|
19
|
+
*/
|
|
20
|
+
toYAML(): {
|
|
21
|
+
tag: "!reference";
|
|
22
|
+
value: string[];
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Create a !reference intrinsic.
|
|
27
|
+
* Usage: reference("job_name", "script") → !reference [job_name, script]
|
|
28
|
+
*/
|
|
29
|
+
export declare function reference(...path: string[]): ReferenceIntrinsic;
|
|
30
|
+
//# sourceMappingURL=intrinsics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intrinsics.d.ts","sourceRoot":"","sources":["../src/intrinsics.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE9E;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,SAAS;IAClD,QAAQ,CAAC,CAAC,gBAAgB,CAAC,EAAG,IAAI,CAAU;IAC5C,OAAO,CAAC,IAAI,CAAW;gBAEX,GAAG,IAAI,EAAE,MAAM,EAAE;IAI7B,MAAM,IAAI,MAAM,EAAE;IAIlB;;OAEG;IACH,MAAM,IAAI;QAAE,GAAG,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE;CAGjD;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAE/D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAyCvE,eAAO,MAAM,eAAe,EAAE,cAAc,EAwC3C,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL010: Undefined stage
|
|
3
|
+
*
|
|
4
|
+
* Detects jobs that reference a stage not declared in the `stages:` list.
|
|
5
|
+
* This will cause a pipeline validation error in GitLab.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
export declare const wgl010: PostSynthCheck;
|
|
9
|
+
//# sourceMappingURL=wgl010.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl010.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl010.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cA8BpB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL011: Unreachable job
|
|
3
|
+
*
|
|
4
|
+
* Detects jobs where all `rules:` entries evaluate to `when: never`,
|
|
5
|
+
* making the job unreachable. This usually indicates a configuration error.
|
|
6
|
+
*
|
|
7
|
+
* Note: This is a simple static check — it only catches the obvious case
|
|
8
|
+
* where every rule has `when: "never"` literally set. Complex conditions
|
|
9
|
+
* with `if:` expressions are not evaluated.
|
|
10
|
+
*/
|
|
11
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
12
|
+
export declare const wgl011: PostSynthCheck;
|
|
13
|
+
//# sourceMappingURL=wgl011.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl011.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl011.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAuCpB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL012: Deprecated Property Usage
|
|
3
|
+
*
|
|
4
|
+
* Flags properties marked as deprecated in the GitLab CI schema.
|
|
5
|
+
* Sources: description text mining (keywords like "Deprecated", "legacy").
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck, PostSynthContext, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
/**
|
|
9
|
+
* Core detection logic — exported for direct testing with synthetic data.
|
|
10
|
+
*/
|
|
11
|
+
export declare function checkDeprecatedProperties(ctx: PostSynthContext, deprecated: Map<string, Set<string>>): PostSynthDiagnostic[];
|
|
12
|
+
export declare const wgl012: PostSynthCheck;
|
|
13
|
+
//# sourceMappingURL=wgl012.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl012.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl012.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAgC9G;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,gBAAgB,EACrB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,GACnC,mBAAmB,EAAE,CA6BvB;AAED,eAAO,MAAM,MAAM,EAAE,cAOpB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL013: Invalid `needs:` Target
|
|
3
|
+
*
|
|
4
|
+
* Detects two cases in the serialized YAML:
|
|
5
|
+
* - Dangling reference: `needs:` names a job not defined in the pipeline
|
|
6
|
+
* - Self-reference: job lists itself in `needs:`
|
|
7
|
+
*
|
|
8
|
+
* Both cause GitLab pipeline validation failures.
|
|
9
|
+
*
|
|
10
|
+
* Caveat: when `include:` is present, referenced jobs may come from
|
|
11
|
+
* included files, so the check is skipped.
|
|
12
|
+
*/
|
|
13
|
+
import type { PostSynthCheck, PostSynthContext, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
14
|
+
export declare function checkInvalidNeeds(ctx: PostSynthContext): PostSynthDiagnostic[];
|
|
15
|
+
export declare const wgl013: PostSynthCheck;
|
|
16
|
+
//# sourceMappingURL=wgl013.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl013.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl013.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG9G,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,mBAAmB,EAAE,CAoC9E;AAED,eAAO,MAAM,MAAM,EAAE,cAOpB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL014: Invalid `extends:` Target
|
|
3
|
+
*
|
|
4
|
+
* Detects jobs that `extends:` a template not defined in the pipeline YAML.
|
|
5
|
+
* GitLab rejects pipelines with unresolved extends references.
|
|
6
|
+
*
|
|
7
|
+
* Caveat: when `include:` is present, templates may come from
|
|
8
|
+
* included files, so the check is skipped.
|
|
9
|
+
*/
|
|
10
|
+
import type { PostSynthCheck, PostSynthContext, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
11
|
+
export declare function checkInvalidExtends(ctx: PostSynthContext): PostSynthDiagnostic[];
|
|
12
|
+
export declare const wgl014: PostSynthCheck;
|
|
13
|
+
//# sourceMappingURL=wgl014.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl014.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl014.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG9G,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,mBAAmB,EAAE,CA4BhF;AAED,eAAO,MAAM,MAAM,EAAE,cAOpB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL015: Circular `needs:` Chain
|
|
3
|
+
*
|
|
4
|
+
* DFS-based cycle detection on the `needs:` dependency graph.
|
|
5
|
+
* If A needs B and B needs A, GitLab rejects the pipeline.
|
|
6
|
+
*
|
|
7
|
+
* Reports one diagnostic per cycle found, listing the full chain.
|
|
8
|
+
*/
|
|
9
|
+
import type { PostSynthCheck, PostSynthContext, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
10
|
+
export declare function checkCircularNeeds(ctx: PostSynthContext): PostSynthDiagnostic[];
|
|
11
|
+
export declare const wgl015: PostSynthCheck;
|
|
12
|
+
//# sourceMappingURL=wgl015.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl015.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl015.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG9G,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,GAAG,mBAAmB,EAAE,CA+D/E;AAED,eAAO,MAAM,MAAM,EAAE,cAOpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL016: Secrets in Variables
|
|
3
|
+
*
|
|
4
|
+
* Detects hardcoded passwords, tokens, or secrets in `variables:` blocks.
|
|
5
|
+
* These should use CI/CD masked variables instead.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
export declare function checkSecretsInVariables(yaml: string): PostSynthDiagnostic[];
|
|
9
|
+
export declare const wgl016: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl016.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl016.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl016.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAoB,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AA0B9G,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAkC3E;AAED,eAAO,MAAM,MAAM,EAAE,cAYpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL017: Insecure Registry
|
|
3
|
+
*
|
|
4
|
+
* Detects Docker push/pull to non-HTTPS registries in job scripts.
|
|
5
|
+
* Using HTTP for container registries is a security risk.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
export declare function checkInsecureRegistry(yaml: string): PostSynthDiagnostic[];
|
|
9
|
+
export declare const wgl017: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl017.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl017.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl017.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAoB,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAK9G,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,EAAE,CA2BzE;AAED,eAAO,MAAM,MAAM,EAAE,cAYpB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL018: Missing Timeout
|
|
3
|
+
*
|
|
4
|
+
* Warns about jobs without an explicit `timeout:` setting.
|
|
5
|
+
* The default (1 hour) may be too long for most jobs.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
export declare const wgl018: PostSynthCheck;
|
|
9
|
+
//# sourceMappingURL=wgl018.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl018.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl018.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cA4BpB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL019: Missing Retry on Deploy Jobs
|
|
3
|
+
*
|
|
4
|
+
* Deploy-stage jobs should have a `retry:` strategy to handle transient
|
|
5
|
+
* infrastructure failures. This is informational, not a hard requirement.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
export declare const wgl019: PostSynthCheck;
|
|
9
|
+
//# sourceMappingURL=wgl019.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl019.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl019.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAK9G,eAAO,MAAM,MAAM,EAAE,cA+BpB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL020: Duplicate Job Names
|
|
3
|
+
*
|
|
4
|
+
* Detects multiple jobs that resolve to the same kebab-case name in
|
|
5
|
+
* the serialized YAML. GitLab silently merges duplicate keys, which
|
|
6
|
+
* causes unexpected behavior.
|
|
7
|
+
*/
|
|
8
|
+
import type { PostSynthCheck, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
9
|
+
export declare function checkDuplicateJobNames(yaml: string): PostSynthDiagnostic[];
|
|
10
|
+
export declare const wgl020: PostSynthCheck;
|
|
11
|
+
//# sourceMappingURL=wgl020.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl020.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl020.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAoB,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG9G,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,EAAE,CA8B1E;AAED,eAAO,MAAM,MAAM,EAAE,cAYpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL021: Unused Variables
|
|
3
|
+
*
|
|
4
|
+
* Detects global `variables:` that are not referenced by any job script.
|
|
5
|
+
* Unused variables add noise and may indicate stale configuration.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
export declare function checkUnusedVariables(yaml: string): PostSynthDiagnostic[];
|
|
9
|
+
export declare const wgl021: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl021.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl021.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl021.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAoB,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG9G,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAqCxE;AAED,eAAO,MAAM,MAAM,EAAE,cAYpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL022: Missing Artifacts Expiry
|
|
3
|
+
*
|
|
4
|
+
* Warns about `artifacts:` without `expire_in:`, which causes disk bloat
|
|
5
|
+
* on the GitLab instance. Default retention is "never expire" in some
|
|
6
|
+
* GitLab configurations.
|
|
7
|
+
*/
|
|
8
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
9
|
+
export declare const wgl022: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl022.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl022.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl022.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAgCpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL023: Overly Broad Rules
|
|
3
|
+
*
|
|
4
|
+
* Flags jobs with a single rule that has only `when: always` and no
|
|
5
|
+
* conditions (no `if:`, `changes:`, etc.). This effectively disables
|
|
6
|
+
* all pipeline filtering for the job, which is usually unintended.
|
|
7
|
+
*/
|
|
8
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
9
|
+
export declare const wgl023: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl023.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl023.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl023.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAuCpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL024: Manual Without allow_failure
|
|
3
|
+
*
|
|
4
|
+
* Warns about jobs with `when: manual` that don't set `allow_failure: true`.
|
|
5
|
+
* Without it, the manual job blocks the pipeline from progressing past
|
|
6
|
+
* its stage until someone manually triggers it.
|
|
7
|
+
*/
|
|
8
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
9
|
+
export declare const wgl024: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl024.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl024.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl024.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAkCpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL025: Missing Cache Key
|
|
3
|
+
*
|
|
4
|
+
* Warns about `cache:` without `key:`. Without an explicit key, GitLab
|
|
5
|
+
* uses `default` as the key, which causes cache collisions between
|
|
6
|
+
* unrelated jobs sharing the same runner.
|
|
7
|
+
*/
|
|
8
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
9
|
+
export declare const wgl025: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl025.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl025.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl025.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAqCpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL026: Privileged Services Without TLS
|
|
3
|
+
*
|
|
4
|
+
* Warns about Docker-in-Docker (DinD) services that don't set
|
|
5
|
+
* DOCKER_TLS_CERTDIR. Running DinD without TLS exposes the Docker
|
|
6
|
+
* daemon on an unencrypted socket.
|
|
7
|
+
*/
|
|
8
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
9
|
+
export declare const wgl026: PostSynthCheck;
|
|
10
|
+
//# sourceMappingURL=wgl026.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl026.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl026.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAS9G,eAAO,MAAM,MAAM,EAAE,cAiDpB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL027: Empty Script
|
|
3
|
+
*
|
|
4
|
+
* Detects jobs with `script: []` or scripts containing only empty strings.
|
|
5
|
+
* GitLab rejects jobs with empty scripts at pipeline validation time.
|
|
6
|
+
*/
|
|
7
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
8
|
+
export declare const wgl027: PostSynthCheck;
|
|
9
|
+
//# sourceMappingURL=wgl027.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl027.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl027.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cA2CpB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL028: Redundant Needs
|
|
3
|
+
*
|
|
4
|
+
* Detects `needs:` entries that list jobs already implied by stage ordering.
|
|
5
|
+
* While not incorrect, redundant needs add noise and make the pipeline
|
|
6
|
+
* harder to maintain. This is informational only.
|
|
7
|
+
*/
|
|
8
|
+
import type { PostSynthCheck, PostSynthDiagnostic } from "@intentius/chant/lint/post-synth";
|
|
9
|
+
export declare function checkRedundantNeeds(yaml: string): PostSynthDiagnostic[];
|
|
10
|
+
export declare const wgl028: PostSynthCheck;
|
|
11
|
+
//# sourceMappingURL=wgl028.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl028.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl028.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAoB,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAG9G,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAyCvE;AAED,eAAO,MAAM,MAAM,EAAE,cAYpB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL029: Unpinned include:project / component Reference
|
|
3
|
+
*
|
|
4
|
+
* Flags an `include:project` or CI/CD `component:` resolved by a moving ref — a
|
|
5
|
+
* branch, no `ref:` at all (defaults to the project's default branch), or a
|
|
6
|
+
* floating component version — instead of a pinned tag or commit SHA. A
|
|
7
|
+
* repointed ref turns the included configuration into a supply-chain entry point.
|
|
8
|
+
*/
|
|
9
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
10
|
+
export declare const wgl029: PostSynthCheck;
|
|
11
|
+
//# sourceMappingURL=wgl029.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl029.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl029.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cA8CpB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL030: Mutable or Insecure include:remote
|
|
3
|
+
*
|
|
4
|
+
* Flags `include:remote` URLs that are fetched over HTTP (no transport
|
|
5
|
+
* integrity) or over HTTPS but inherently mutable (a raw URL can be repointed
|
|
6
|
+
* at any time). Prefer `include:project` pinned to a tag/SHA, or a pinned
|
|
7
|
+
* component, over a remote URL. Generalizes WGL017 (non-HTTPS) to includes.
|
|
8
|
+
*/
|
|
9
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
10
|
+
export declare const wgl030: PostSynthCheck;
|
|
11
|
+
//# sourceMappingURL=wgl030.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl030.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl030.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAmCpB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL031: Container Image Without an Immutable Digest
|
|
3
|
+
*
|
|
4
|
+
* Flags `image:` and `services:` references that are not pinned to an immutable
|
|
5
|
+
* `@sha256:` digest. A mutable tag can be repointed to a different image after
|
|
6
|
+
* review. Images built from a variable (e.g. `$CI_REGISTRY_IMAGE:tag`) are
|
|
7
|
+
* skipped — their concrete reference is not knowable from the static config.
|
|
8
|
+
*/
|
|
9
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
10
|
+
export declare const wgl031: PostSynthCheck;
|
|
11
|
+
//# sourceMappingURL=wgl031.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl031.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl031.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAwBpB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL032: Include/Component Source Resembling a Well-Known Project
|
|
3
|
+
*
|
|
4
|
+
* Flags an `include:project` path or `component:` source that is a near-miss
|
|
5
|
+
* (edit distance 1–2) of a well-known GitLab CI source but not an exact match —
|
|
6
|
+
* a likely typo or an impersonation of the trusted project. Advisory; backed by
|
|
7
|
+
* a vendored reference list.
|
|
8
|
+
*/
|
|
9
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
10
|
+
export declare function nearestKnownSource(path: string): string | undefined;
|
|
11
|
+
export declare const wgl032: PostSynthCheck;
|
|
12
|
+
//# sourceMappingURL=wgl032.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl032.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl032.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAkB9G,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAYnE;AAED,eAAO,MAAM,MAAM,EAAE,cA0BpB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL033: OIDC id_token Without a Scoped Audience
|
|
3
|
+
*
|
|
4
|
+
* Flags an `id_tokens:` declaration with no `aud:` or a wildcard audience. The
|
|
5
|
+
* audience binds the minted OIDC token to a specific relying party; without it
|
|
6
|
+
* (or with `*`), a leaked token is accepted anywhere, defeating the point of
|
|
7
|
+
* short-lived federated identity. Set `aud:` to the exact audience(s) needed.
|
|
8
|
+
*/
|
|
9
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
10
|
+
export declare const wgl033: PostSynthCheck;
|
|
11
|
+
//# sourceMappingURL=wgl033.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl033.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl033.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cAyBpB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL034: OIDC id_token Mintable from a Merge-Request Pipeline
|
|
3
|
+
*
|
|
4
|
+
* Flags a job that declares an `id_tokens:` (OIDC) and is reachable from
|
|
5
|
+
* merge-request pipelines. MR pipelines can be triggered by outside
|
|
6
|
+
* contributors, so a job that mints a cloud-federated token there hands fork
|
|
7
|
+
* code a path to your cloud roles. Gate OIDC jobs to protected refs, or require
|
|
8
|
+
* approval before they run.
|
|
9
|
+
*/
|
|
10
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
11
|
+
export declare const wgl034: PostSynthCheck;
|
|
12
|
+
//# sourceMappingURL=wgl034.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl034.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl034.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAG9G,eAAO,MAAM,MAAM,EAAE,cA4BpB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL035: Untrusted CI Variable Interpolated into a Script
|
|
3
|
+
*
|
|
4
|
+
* Flags an attacker-controllable predefined variable (branch/tag name, commit or
|
|
5
|
+
* merge-request title/description, author) referenced in a `script:` command. A
|
|
6
|
+
* crafted branch name or commit title containing shell metacharacters can break
|
|
7
|
+
* out of the command. Quote the reference and avoid using it in sensitive
|
|
8
|
+
* commands, or sanitize it first.
|
|
9
|
+
*/
|
|
10
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
11
|
+
export declare const wgl035: PostSynthCheck;
|
|
12
|
+
//# sourceMappingURL=wgl035.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl035.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl035.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAI9G,eAAO,MAAM,MAAM,EAAE,cA6BpB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL036: Privileged Service / Docker-in-Docker Reachable from Merge Requests
|
|
3
|
+
*
|
|
4
|
+
* Flags a job that uses Docker-in-Docker (a privileged service) and is reachable
|
|
5
|
+
* from merge-request pipelines. MR pipelines can run code from an outside
|
|
6
|
+
* contributor; a privileged DinD service shares the host daemon socket and can
|
|
7
|
+
* be used to escape the build and reach the runner. Restrict privileged services
|
|
8
|
+
* to protected refs, or require approval before such jobs run.
|
|
9
|
+
*
|
|
10
|
+
* Complements WGL026 (DinD without TLS) by adding the trust-boundary dimension.
|
|
11
|
+
*/
|
|
12
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
13
|
+
export declare const wgl036: PostSynthCheck;
|
|
14
|
+
//# sourceMappingURL=wgl036.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl036.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl036.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAK9G,eAAO,MAAM,MAAM,EAAE,cA0BpB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL037: Security Gate on a Regex Match of an Untrusted Ref
|
|
3
|
+
*
|
|
4
|
+
* Flags a `rules:if` that gates execution on a regex match (`=~`) over an
|
|
5
|
+
* attacker-controllable ref variable (e.g. `$CI_COMMIT_REF_NAME =~ /^release/`).
|
|
6
|
+
* An outside contributor can craft a branch name that satisfies the pattern
|
|
7
|
+
* (`release-evil`), passing a gate meant for trusted refs. Match the full ref
|
|
8
|
+
* with `==`, or gate on a protected condition instead.
|
|
9
|
+
*/
|
|
10
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
11
|
+
export declare const wgl037: PostSynthCheck;
|
|
12
|
+
//# sourceMappingURL=wgl037.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl037.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl037.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAO9G,eAAO,MAAM,MAAM,EAAE,cA6BpB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WGL038: Secret Reachable from a Merge-Request Pipeline
|
|
3
|
+
*
|
|
4
|
+
* Flags a user-defined secret-like variable (`*_PASSWORD`, `*_SECRET`,
|
|
5
|
+
* `*_TOKEN`, `*_API_KEY`, …) referenced in a job reachable from merge-request
|
|
6
|
+
* pipelines. Those pipelines can run an outside contributor's code, so a secret
|
|
7
|
+
* they can read is a secret they can exfiltrate. Gate secret-using jobs to
|
|
8
|
+
* protected refs, or make the variable protected so MR pipelines can't see it.
|
|
9
|
+
*
|
|
10
|
+
* Built-in `CI_*` variables are project-managed and excluded.
|
|
11
|
+
*/
|
|
12
|
+
import type { PostSynthCheck } from "@intentius/chant/lint/post-synth";
|
|
13
|
+
export declare const wgl038: PostSynthCheck;
|
|
14
|
+
//# sourceMappingURL=wgl038.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wgl038.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/wgl038.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAyC,MAAM,kCAAkC,CAAC;AAK9G,eAAO,MAAM,MAAM,EAAE,cA8BpB,CAAC"}
|