Run CI linters without Docker
This commit is contained in:
+26
-33
@@ -18,6 +18,16 @@ jobs:
|
|||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Check lint toolchain
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
for tool in prettier ruff yamllint hadolint; do
|
||||||
|
command -v "$tool" >/dev/null || {
|
||||||
|
echo "Missing required tool: $tool" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
done
|
||||||
|
|
||||||
- name: Check formatting with Prettier
|
- name: Check formatting with Prettier
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
@@ -32,29 +42,15 @@ jobs:
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker run --rm \
|
prettier --check --ignore-unknown "${prettier_files[@]}"
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
node:22-alpine \
|
|
||||||
sh -lc 'npx --yes prettier@3 --check --ignore-unknown "$@"' sh "${prettier_files[@]}"
|
|
||||||
|
|
||||||
- name: Lint Python with Ruff
|
- name: Lint Python with Ruff
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: ruff check .
|
||||||
docker run --rm \
|
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
ghcr.io/astral-sh/ruff:latest \
|
|
||||||
check .
|
|
||||||
|
|
||||||
- name: Lint YAML syntax
|
- name: Lint YAML syntax
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: yamllint -c .yamllint .
|
||||||
docker run --rm \
|
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
cytopia/yamllint:latest \
|
|
||||||
-c .yamllint .
|
|
||||||
|
|
||||||
- name: Lint Dockerfiles
|
- name: Lint Dockerfiles
|
||||||
shell: bash
|
shell: bash
|
||||||
@@ -68,12 +64,7 @@ jobs:
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker run --rm \
|
hadolint -c .hadolint.yaml "${dockerfiles[@]}"
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
--entrypoint hadolint \
|
|
||||||
hadolint/hadolint:latest-debian \
|
|
||||||
-c .hadolint.yaml "${dockerfiles[@]}"
|
|
||||||
|
|
||||||
validate:
|
validate:
|
||||||
runs-on: [self-hosted, linux, arch, homelab]
|
runs-on: [self-hosted, linux, arch, homelab]
|
||||||
@@ -81,14 +72,19 @@ jobs:
|
|||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Lint YAML syntax
|
- name: Check validation toolchain
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
docker run --rm \
|
for tool in yamllint kubeconform; do
|
||||||
-v "$PWD:/work" \
|
command -v "$tool" >/dev/null || {
|
||||||
-w /work \
|
echo "Missing required tool: $tool" >&2
|
||||||
cytopia/yamllint:latest \
|
exit 1
|
||||||
-c .yamllint .
|
}
|
||||||
|
done
|
||||||
|
|
||||||
|
- name: Lint YAML syntax
|
||||||
|
shell: bash
|
||||||
|
run: yamllint -c .yamllint .
|
||||||
|
|
||||||
- name: Validate Kubernetes manifests
|
- name: Validate Kubernetes manifests
|
||||||
shell: bash
|
shell: bash
|
||||||
@@ -103,10 +99,7 @@ jobs:
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker run --rm \
|
kubeconform \
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
ghcr.io/yannh/kubeconform:latest \
|
|
||||||
-strict \
|
-strict \
|
||||||
-ignore-missing-schemas \
|
-ignore-missing-schemas \
|
||||||
-summary \
|
-summary \
|
||||||
|
|||||||
+26
-33
@@ -18,6 +18,16 @@ jobs:
|
|||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Check lint toolchain
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
for tool in prettier ruff yamllint hadolint; do
|
||||||
|
command -v "$tool" >/dev/null || {
|
||||||
|
echo "Missing required tool: $tool" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
done
|
||||||
|
|
||||||
- name: Check formatting with Prettier
|
- name: Check formatting with Prettier
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
@@ -32,29 +42,15 @@ jobs:
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker run --rm \
|
prettier --check --ignore-unknown "${prettier_files[@]}"
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
node:22-alpine \
|
|
||||||
sh -lc 'npx --yes prettier@3 --check --ignore-unknown "$@"' sh "${prettier_files[@]}"
|
|
||||||
|
|
||||||
- name: Lint Python with Ruff
|
- name: Lint Python with Ruff
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: ruff check .
|
||||||
docker run --rm \
|
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
ghcr.io/astral-sh/ruff:latest \
|
|
||||||
check .
|
|
||||||
|
|
||||||
- name: Lint YAML syntax
|
- name: Lint YAML syntax
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: yamllint -c .yamllint .
|
||||||
docker run --rm \
|
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
cytopia/yamllint:latest \
|
|
||||||
-c .yamllint .
|
|
||||||
|
|
||||||
- name: Lint Dockerfiles
|
- name: Lint Dockerfiles
|
||||||
shell: bash
|
shell: bash
|
||||||
@@ -68,12 +64,7 @@ jobs:
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker run --rm \
|
hadolint -c .hadolint.yaml "${dockerfiles[@]}"
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
--entrypoint hadolint \
|
|
||||||
hadolint/hadolint:latest-debian \
|
|
||||||
-c .hadolint.yaml "${dockerfiles[@]}"
|
|
||||||
|
|
||||||
validate:
|
validate:
|
||||||
runs-on: [self-hosted, linux, arch, homelab]
|
runs-on: [self-hosted, linux, arch, homelab]
|
||||||
@@ -81,14 +72,19 @@ jobs:
|
|||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Lint YAML syntax
|
- name: Check validation toolchain
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
docker run --rm \
|
for tool in yamllint kubeconform; do
|
||||||
-v "$PWD:/work" \
|
command -v "$tool" >/dev/null || {
|
||||||
-w /work \
|
echo "Missing required tool: $tool" >&2
|
||||||
cytopia/yamllint:latest \
|
exit 1
|
||||||
-c .yamllint .
|
}
|
||||||
|
done
|
||||||
|
|
||||||
|
- name: Lint YAML syntax
|
||||||
|
shell: bash
|
||||||
|
run: yamllint -c .yamllint .
|
||||||
|
|
||||||
- name: Validate Kubernetes manifests
|
- name: Validate Kubernetes manifests
|
||||||
shell: bash
|
shell: bash
|
||||||
@@ -103,10 +99,7 @@ jobs:
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker run --rm \
|
kubeconform \
|
||||||
-v "$PWD:/work" \
|
|
||||||
-w /work \
|
|
||||||
ghcr.io/yannh/kubeconform:latest \
|
|
||||||
-strict \
|
-strict \
|
||||||
-ignore-missing-schemas \
|
-ignore-missing-schemas \
|
||||||
-summary \
|
-summary \
|
||||||
|
|||||||
Reference in New Issue
Block a user