Repository navigation
75 lines (73 loc) · 2.64 KB
/
Copy pathpre-commit.yml
File metadata and controls
75 lines (73 loc) · 2.64 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
name: Pre-commit check
# Controls when the workflow will run
on:
pull_request:
branches: [main]
types: [labeled, opened, reopened, synchronize]
workflow_dispatch:
env:
TF_DOCS_VERSION: v0.16.0
TFLINT_VERSION: v0.44.1
TF_VERSION: "1.3.4"
HELM_DOCS_VERSION: "1.14.2"
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
pre-commit:
if: github.event.action != 'labeled' || github.event.label.name == 'pre-commit ci run'
name: Pre-commit check
runs-on: ubuntu-latest
steps:
- name: Checkout git repository
uses: actions/checkout@v7
- run: gh pr edit ${{ github.event.number }} --remove-label 'pre-commit ci run'
if: github.event.action == 'labeled' && github.event.label.name == 'pre-commit ci run'
env:
GH_TOKEN: ${{ github.token }}
- name: Setup Node.js
uses: actions/setup-node@v7
with:
node-version: 26
cache: npm
cache-dependency-path: |
package-lock.json
cleaner/package-lock.json
wrongsecrets-balancer/package-lock.json
wrongsecrets-balancer/ui/package-lock.json
- name: Setup python
uses: actions/setup-python@v7
with:
python-version: "3.15"
- uses: actions/cache@v6
name: Cache plugin dir
with:
path: ~/.tflint.d/plugins
key: ${{ matrix.os }}-tflint-${{ hashFiles('.tflint.hcl') }}
- name: Setup Terraform
uses: hashicorp/setup-terraform@v4
with:
terraform_version: v1.16.6
- name: Setup TFLint
uses: terraform-linters/setup-tflint@v6
with:
tflint_version: ${{env.TFLINT_VERSION}}
- name: Setup Terraform docs
run: |
wget https://github.com/terraform-docs/terraform-docs/releases/download/${{env.TF_DOCS_VERSION}}/terraform-docs-${{env.TF_DOCS_VERSION}}-linux-amd64.tar.gz -O terraform_docs.tar.gz
tar -zxvf terraform_docs.tar.gz terraform-docs
chmod +x terraform-docs
mv terraform-docs /usr/local/bin/
- name: Setup helm-docs
run: |
cd /tmp
wget https://github.com/norwoodj/helm-docs/releases/download/v${{env.HELM_DOCS_VERSION}}/helm-docs_${{env.HELM_DOCS_VERSION}}_Linux_x86_64.tar.gz
tar -xvf helm-docs_${{env.HELM_DOCS_VERSION}}_Linux_x86_64.tar.gz
sudo mv helm-docs /usr/local/sbin
- name: Pre-commit checks
uses: pre-commit/action@v3.0.1
- name: pre-commit-ci-lite
uses: pre-commit-ci/lite-action@v1.2.0
if: always()