-
Notifications
You must be signed in to change notification settings - Fork 0
81 lines (73 loc) · 2.05 KB
/
ci.yml
File metadata and controls
81 lines (73 loc) · 2.05 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
69
70
71
72
73
74
75
76
77
78
79
80
81
name: Main CI
on:
pull_request:
branches:
- "main"
permissions:
contents: write
pull-requests: write
jobs:
all-status-check:
runs-on: ubuntu-latest
timeout-minutes: 10
needs:
- ci-req-check
- yaml-lint
- shell-lint
- action-lint
- ansible-lint
steps:
- name: All status check
run: echo "All status check passed"
ci-req-check:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- name: Check all-status-check
run: |
diff \
<(yq ".jobs | del(.all-status-check) | keys.[]" .github/workflows/ci.yml) \
<(yq ".jobs.all-status-check.needs.[]" .github/workflows/ci.yml)
yaml-lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: reviewdog/action-yamllint@f01d8a48fd8d89f89895499fca2cff09f9e9e8c0 # v1.21.0
with:
level: warning
yamllint_flags: "-c .yamllint ."
fail_on_error: true
shell-lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: reviewdog/action-shellcheck@5ebd09ddbe2ebb471646ce234c6c8dd18663ca7c # v1.30.0
with:
level: warning
fail_on_error: true
- uses: reviewdog/action-shfmt@d8f080930b9be5847b4f97e9f4122b81a82aaeac # v1.0.4
with:
level: warning
fail_on_error: true
action-lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: reviewdog/action-actionlint@a5524e1c19e62881d79c1f1b9b6f09f16356e281 # v1.65.2
with:
level: warning
fail_on_error: true
ansible-lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- name: Run ansible-lint
uses: ansible/ansible-lint@4114ad63edbc25dcd9afc4f41b29dbcbebdf21ca # v25.5.0
with:
working_directory: "scripts/ansible"
requirements_file: "requirements.yml"