-
Notifications
You must be signed in to change notification settings - Fork 6
53 lines (47 loc) · 2 KB
/
yamllint.yaml
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
name: Validate Manifests
on:
push:
pull_request:
workflow_dispatch:
jobs:
lint-yaml:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- run: pip install yamllint
- run: yamllint -c .yamllint.yaml --format github .
kustomize:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: azure/setup-kubectl@3e0aec4d80787158d308d7b364cb1b702e7feb7f # v4
- uses: azure/setup-helm@fe7b79cd5ee1e45176fcad797de68ecaf3ca4814 # v4.2.0
- uses: bmuschko/setup-kubeconform@5ccaecbbf012bcb1eeeab66e649db64a477ade8f # v1
- name: validate kustomize with kubeconform
run: |
set -o errexit
set -o pipefail
items=$(find bootstrap -maxdepth 2 -name kustomization.yaml -exec dirname {} \;)
items+=($(find operators -maxdepth 2 -name kustomization.yaml -exec dirname {} \;))
items+=($(find components -maxdepth 2 -name kustomization.yaml -exec dirname {} \;))
items+=($(find apps -maxdepth 2 -name kustomization.yaml -exec dirname {} \;))
for item in ${items}; do
echo "${item}"
kubectl kustomize --enable-helm "${item}" | \
kubeconform -skip=Secret -strict -ignore-missing-schemas
done
workflows-description:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: thiagodnf/yaml-schema-checker@3c4a632d4124b6c00e38b492b2eb35dea715e1ae # v0.0.12
with:
jsonSchemaFile: workflows/.workflow_with_description.schema.json
yamlFiles: |
workflows/argo-events/sensors/*.y*ml
workflows/argo-events/workflowtemplates/*.y*ml
shellcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4
- uses: reviewdog/action-shellcheck@ccaafec556ffa154f112bfcb7b9c9574190b7091 # v1