|
4 | 4 | description: Install a CICD-Tools toolbox from the gpg key verified manifest. |
5 | 5 | entry: ./src/pre-commit/cicd-tools-box.sh -c curlimages/curl:8.90.@sha256:4c1cc1c836054961219e03d71e3f48a993aa40b92c3482eed316e50ede4889d9 -j ghcr.io/cicd-tools-org/cicd-tools:main -g ghcr.io/cicd-tools-org/cicd-tools-gpg:main |
6 | 6 | args: |
7 | | - - -b |
8 | | - - 0.1.0 |
9 | | - - -m |
10 | | - - https://raw.githubusercontent.com/cicd-tools-org/manifest/main/manifest.json.asc |
| 7 | + - -b |
| 8 | + - 0.1.0 |
| 9 | + - -m |
| 10 | + - https://raw.githubusercontent.com/cicd-tools-org/manifest/main/manifest.json.asc |
11 | 11 | always_run: true |
12 | 12 | language: script |
13 | 13 | pass_filenames: false |
14 | 14 | require_serial: true |
15 | 15 | stages: |
16 | | - - manual |
| 16 | + - manual |
17 | 17 | - id: cicd-tools-key |
18 | 18 | name: cicd-tools-key |
19 | 19 | description: Import the CICD-Tools gpg key for toolbox manifest verification. |
20 | 20 | entry: ./src/pre-commit/cicd-tools-key.sh -g ghcr.io/cicd-tools-org/cicd-tools-gpg:main |
21 | 21 | args: |
22 | | - - -n |
23 | | - - F07A79647E91E561A786B6D0D9020F7FEE20DBF2 |
24 | | - - -p |
25 | | - - hkps://keys.openpgp.org |
26 | | - - -s |
27 | | - - keyserver.ubuntu.com |
| 22 | + - -n |
| 23 | + - F07A79647E91E561A786B6D0D9020F7FEE20DBF2 |
| 24 | + - -p |
| 25 | + - hkps://keys.openpgp.org |
| 26 | + - -s |
| 27 | + - keyserver.ubuntu.com |
28 | 28 | always_run: true |
29 | 29 | language: script |
30 | 30 | pass_filenames: false |
31 | 31 | require_serial: true |
32 | 32 | stages: |
33 | | - - manual |
| 33 | + - manual |
34 | 34 | - id: cicd-tools-schema-cookiecutter |
35 | 35 | name: cicd-tools-schema-cookiecutter |
36 | 36 | description: Verify a JSON file against the CICD-Tools cookiecutter schema. |
37 | 37 | entry: with-cicd-resources check-jsonschema |
38 | 38 | args: |
39 | | - - --schemafile |
40 | | - - '{CICD_RESOURCES}/schemas/cookiecutter.json' |
| 39 | + - --schemafile |
| 40 | + - '{CICD_RESOURCES}/schemas/cookiecutter.json' |
41 | 41 | language: python |
42 | 42 | pass_filenames: true |
43 | 43 | stages: |
44 | | - - commit |
| 44 | + - commit |
45 | 45 | - id: cicd-tools-schema-manifest |
46 | 46 | name: cicd-tools-schema-manifest |
47 | 47 | description: Verify a JSON file against the CICD-Tools manifest schema. |
48 | 48 | entry: with-cicd-resources check-jsonschema |
49 | 49 | args: |
50 | | - - --schemafile |
51 | | - - '{CICD_RESOURCES}/schemas/manifest.json' |
| 50 | + - --schemafile |
| 51 | + - '{CICD_RESOURCES}/schemas/manifest.json' |
52 | 52 | language: python |
53 | 53 | pass_filenames: true |
54 | 54 | stages: |
55 | | - - commit |
| 55 | + - commit |
56 | 56 | - id: commitizen-pre-bump |
57 | 57 | name: commitizen-pre-bump |
58 | 58 | description: TOML quote formatting for commitizen. |
|
62 | 62 | pass_filenames: false |
63 | 63 | require_serial: true |
64 | 64 | stages: |
65 | | - - manual |
| 65 | + - manual |
66 | 66 | - id: format-shell |
67 | 67 | name: format-shell |
68 | 68 | description: Format the project's shell scripts. |
69 | 69 | entry: --entrypoint=shfmt --env=FORCE_COLOR=1 ghcr.io/cicd-tools-org/cicd-tools:main |
70 | 70 | args: |
71 | | - - -w |
72 | | - - --indent=2 |
73 | | - - -ci |
74 | | - - -sr |
| 71 | + - -w |
| 72 | + - --indent=2 |
| 73 | + - -ci |
| 74 | + - -sr |
75 | 75 | exclude: ^\.cicd-tools/boxes/.+$ |
76 | 76 | files: ^.+\.(bash|sh)$ |
77 | 77 | language: docker_image |
78 | 78 | pass_filenames: true |
79 | 79 | stages: |
80 | | - - commit |
| 80 | + - commit |
81 | 81 | - id: format-toml |
82 | 82 | name: format-toml |
83 | 83 | description: Format the project's TOML files. |
|
86 | 86 | language: docker_image |
87 | 87 | pass_filenames: true |
88 | 88 | stages: |
89 | | - - commit |
| 89 | + - commit |
90 | 90 | - id: gettext-translations-add |
91 | 91 | name: gettext-translations-add |
92 | 92 | description: Add new languages to the project folder structure for gettext. |
|
96 | 96 | pass_filenames: false |
97 | 97 | require_serial: true |
98 | 98 | stages: |
99 | | - - manual |
| 99 | + - manual |
100 | 100 | - id: gettext-translations-compile |
101 | 101 | name: gettext-translations-compile |
102 | 102 | description: Compile gettext '.po' files into '.mo' files for distribution. |
|
106 | 106 | pass_filenames: false |
107 | 107 | require_serial: true |
108 | 108 | stages: |
109 | | - - manual |
| 109 | + - manual |
110 | 110 | - id: gettext-translations-missing |
111 | 111 | name: gettext-translations-missing |
112 | 112 | description: Check all gettext '.po' files for untranslated strings. |
|
117 | 117 | pass_filenames: false |
118 | 118 | require_serial: true |
119 | 119 | stages: |
120 | | - - commit |
| 120 | + - commit |
121 | 121 | - id: gettext-translations-update |
122 | 122 | name: gettext-translations-update |
123 | 123 | description: Extract translatable strings from the code base with gettext and regenerate '.pot' and '.po' files. |
|
128 | 128 | pass_filenames: false |
129 | 129 | require_serial: true |
130 | 130 | stages: |
131 | | - - commit |
| 131 | + - commit |
132 | 132 | - id: git-conflict-markers |
133 | 133 | name: git-conflict-markers |
134 | 134 | entry: git |
135 | 135 | args: |
136 | | - - --no-pager |
137 | | - - diff |
138 | | - - --cached |
139 | | - - --check |
| 136 | + - --no-pager |
| 137 | + - diff |
| 138 | + - --cached |
| 139 | + - --check |
140 | 140 | language: system |
141 | 141 | stages: |
142 | | - - commit |
| 142 | + - commit |
143 | 143 | - id: lint-dockerfile |
144 | 144 | name: lint-dockerfile |
145 | 145 | description: Lint the project's Dockerfiles. |
146 | 146 | entry: --entrypoint=hadolint ghcr.io/cicd-tools-org/cicd-tools:main |
147 | 147 | language: docker_image |
148 | 148 | stages: |
149 | | - - commit |
| 149 | + - commit |
150 | 150 | types: |
151 | | - - dockerfile |
| 151 | + - dockerfile |
152 | 152 | - id: lint-github-workflow |
153 | 153 | name: lint-github-workflow |
154 | 154 | description: Lint the project's GitHub workflow files. |
155 | 155 | entry: --entrypoint=actionlint ghcr.io/cicd-tools-org/cicd-tools:main |
156 | 156 | args: |
157 | | - - -color |
158 | | - - -config-file |
159 | | - - .cicd-tools/configuration/actionlint.yaml |
| 157 | + - -color |
| 158 | + - -config-file |
| 159 | + - .cicd-tools/configuration/actionlint.yaml |
160 | 160 | files: ^.github/workflows/.+\.(yaml|yml)$ |
161 | 161 | language: docker_image |
162 | 162 | pass_filenames: false |
163 | 163 | stages: |
164 | | - - commit |
| 164 | + - commit |
165 | 165 | - id: lint-github-workflow-header |
166 | 166 | name: lint-github-workflow-header |
167 | 167 | description: Lint the headers of the project's GitHub workflow files. |
|
170 | 170 | language: script |
171 | 171 | pass_filenames: true |
172 | 172 | stages: |
173 | | - - commit |
| 173 | + - commit |
174 | 174 | - id: lint-markdown |
175 | 175 | name: lint-markdown |
176 | 176 | description: Lint the Markdown files. |
177 | 177 | files: ^.+\.md$ |
178 | 178 | entry: ghcr.io/igorshubovych/markdownlint-cli:v0.35.0@sha256:22cf4699a448a7bbc311a940e0600019423d7671cbedae9c35cd32b51f560350 |
179 | 179 | args: |
180 | | - - -c |
181 | | - - .markdownlint.yml |
| 180 | + - -c |
| 181 | + - .markdownlint.yml |
182 | 182 | language: docker_image |
183 | 183 | pass_filenames: true |
184 | 184 | stages: |
185 | | - - commit |
| 185 | + - commit |
186 | 186 | - id: lint-shell |
187 | 187 | name: lint-shell |
188 | 188 | description: Lint the project's shell scripts. |
189 | 189 | entry: --entrypoint=shellcheck ghcr.io/cicd-tools-org/cicd-tools:main |
190 | 190 | args: |
191 | | - - --color=always |
192 | | - - --source-path=SCRIPTDIR |
193 | | - - --exclude=SC2317 |
194 | | - - -x |
| 191 | + - --color=always |
| 192 | + - --source-path=SCRIPTDIR |
| 193 | + - --exclude=SC2317 |
| 194 | + - -x |
195 | 195 | exclude: ^\.cicd-tools/boxes/.+$ |
196 | 196 | files: ^.+\.(bash|sh)$ |
197 | 197 | language: docker_image |
198 | 198 | pass_filenames: true |
199 | 199 | stages: |
200 | | - - commit |
| 200 | + - commit |
201 | 201 | - id: poetry-lint-ansible |
202 | 202 | name: poetry-lint-ansible |
203 | 203 | description: Check the collection or role for Ansible best practices using ansible-lint from the local poetry environment. |
|
206 | 206 | language: script |
207 | 207 | pass_filenames: false |
208 | 208 | stages: |
209 | | - - commit |
| 209 | + - commit |
210 | 210 | - id: poetry-lint-python |
211 | 211 | name: poetry-lint-python |
212 | 212 | description: Lint the project's Python files using pylint from the local poetry environment. |
213 | 213 | entry: poetry run pylint |
214 | 214 | files: ^.+\.py$ |
215 | 215 | language: system |
216 | 216 | stages: |
217 | | - - commit |
| 217 | + - commit |
218 | 218 | - id: poetry-sphinx-build-language |
219 | 219 | name: poetry-sphinx-build-language |
220 | 220 | description: Build sphinx documentation for a specific language using poetry. |
|
223 | 223 | pass_filenames: false |
224 | 224 | require_serial: true |
225 | 225 | stages: |
226 | | - - manual |
| 226 | + - manual |
227 | 227 | - id: poetry-types-python |
228 | 228 | name: types-python |
229 | 229 | description: Type check the project's Python files using mypy from the local poetry environment. |
230 | 230 | entry: poetry run mypy |
231 | 231 | args: |
232 | | - - --strict |
233 | | - - --show-error-codes |
234 | | - - --implicit-reexport |
235 | | - - --explicit-package-bases |
| 232 | + - --strict |
| 233 | + - --show-error-codes |
| 234 | + - --implicit-reexport |
| 235 | + - --explicit-package-bases |
236 | 236 | files: ^.+\.pyi?$ |
237 | 237 | language: system |
238 | 238 | require_serial: true |
239 | 239 | stages: |
240 | | - - commit |
| 240 | + - commit |
241 | 241 | - id: pre-commit-sort-config |
242 | 242 | name: pre-commit-sort-config |
243 | 243 | description: Sort the hooks inside your pre-commit configuration files. |
244 | 244 | entry: ./src/pre-commit/pre-commit-sort-config.sh |
245 | 245 | args: |
246 | | - - ghcr.io/cicd-tools-org/cicd-tools:main |
| 246 | + - ghcr.io/cicd-tools-org/cicd-tools:main |
247 | 247 | files: ^(.+/)*\.pre-commit-config\.yaml$ |
248 | 248 | language: script |
249 | 249 | pass_filenames: true |
250 | 250 | require_serial: true |
251 | 251 | stages: |
252 | | - - commit |
| 252 | + - commit |
253 | 253 | - id: pre-commit-sort-hooks |
254 | 254 | name: pre-commit-sort-hooks |
255 | 255 | description: Sort the hooks inside your pre-commit hook definition files. |
256 | 256 | entry: ./src/pre-commit/pre-commit-sort-hooks.sh |
257 | 257 | args: |
258 | | - - ghcr.io/cicd-tools-org/cicd-tools:main |
| 258 | + - ghcr.io/cicd-tools-org/cicd-tools:main |
259 | 259 | files: ^(.+/)*\.pre-commit-hooks\.yaml$ |
260 | 260 | language: script |
261 | 261 | pass_filenames: true |
262 | 262 | require_serial: true |
263 | 263 | stages: |
264 | | - - commit |
| 264 | + - commit |
265 | 265 | - id: security-credentials |
266 | 266 | name: security-credentials |
267 | 267 | description: Scan codebase for checked in credentials. |
268 | 268 | entry: trufflesecurity/trufflehog:3.63.2@sha256:16c1cf07b7142037a2859d4ad0f51c40603e7e58703ddb8bd80cf40e6af51f44 |
269 | 269 | args: |
270 | | - - git |
271 | | - - file://. |
272 | | - - --fail |
273 | | - - --no-update |
274 | | - - --debug |
275 | | - - --max-depth=500 |
| 270 | + - git |
| 271 | + - file://. |
| 272 | + - --fail |
| 273 | + - --no-update |
| 274 | + - --debug |
| 275 | + - --max-depth=500 |
276 | 276 | language: docker_image |
277 | 277 | pass_filenames: false |
278 | 278 | stages: |
279 | | - - commit |
| 279 | + - commit |
280 | 280 | - id: spelling-commit-message |
281 | 281 | name: spelling-commit-message |
282 | 282 | description: Check the spelling on the commit message. |
283 | 283 | entry: ./src/pre-commit/spelling-commit-message.sh |
284 | 284 | args: |
285 | | - - ghcr.io/cicd-tools-org/cicd-tools:main |
| 285 | + - ghcr.io/cicd-tools-org/cicd-tools:main |
286 | 286 | always_run: true |
287 | 287 | language: script |
288 | 288 | pass_filenames: true |
289 | 289 | require_serial: true |
290 | 290 | stages: |
291 | | - - commit-msg |
| 291 | + - commit-msg |
292 | 292 | - id: spelling-markdown |
293 | 293 | name: spelling-markdown |
294 | 294 | description: Spellcheck the Markdown files. |
|
297 | 297 | language: docker_image |
298 | 298 | pass_filenames: true |
299 | 299 | stages: |
300 | | - - commit |
| 300 | + - commit |
301 | 301 | - id: spelling-vale-sync |
302 | 302 | name: spelling-vale-sync |
303 | 303 | description: Download any required vale packages. |
304 | 304 | entry: -v /tmp:/tmp --entrypoint=vale ghcr.io/cicd-tools-org/cicd-tools:main |
305 | 305 | args: |
306 | | - - sync |
| 306 | + - sync |
307 | 307 | always_run: true |
308 | 308 | language: docker_image |
309 | 309 | pass_filenames: false |
310 | 310 | stages: |
311 | | - - manual |
| 311 | + - manual |
312 | 312 | - id: spelling-vale-vocab |
313 | 313 | name: spelling-vale-vocab |
314 | 314 | entry: sh -c 'for FILE in "$@"; do sort -u -o ${FILE} ${FILE}; done' -- |
315 | 315 | files: ^.vale/Vocab/.+/(accept|reject)\.txt$ |
316 | 316 | language: system |
317 | 317 | stages: |
318 | | - - commit |
| 318 | + - commit |
0 commit comments