-
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@1dca3ad811867be18fbe293a9818d715a6c2cd46 # v1.20.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@6e0e63d1750d02d761b3df0f2c5ba9f9ac4a9ed7 # v1.29.0
with:
level: warning
fail_on_error: true
- uses: reviewdog/action-shfmt@f59386f08bd9a24ac1a746e69f026ddc2ed06710 # v1.0.2
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@db58217885f9a6570da9c71be4e40ec33fe44a1f # v1.65.0
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@49ded6a7e4f3acf6b1eb4b3aa2796d84b5faa63a # v25.1.3
with:
working_directory: "scripts/ansible"
requirements_file: "requirements.yml"