Adrien Bouvais 0b87f5ad97
Some checks failed
Build and Push Docker Images / build-and-push (push) Failing after 42s
Validate Kubernetes & YAML / validate-all (push) Failing after 40s
Fix actions
2026-08-17 09:25:26 +02:00

48 lines
1.5 KiB
YAML

name: Validate Kubernetes & YAML
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
validate-all:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Install Validation Tools
run: |
# Install yamllint
sudo apt-get update && sudo apt-get install -y yamllint
# Install Helm
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
# Install Kubeconform
wget https://github.com/yannh/kubeconform/releases/download/v0.6.4/kubeconform-linux-amd64.tar.gz
tar xf kubeconform-linux-amd64.tar.gz
sudo mv kubeconform /usr/local/bin/
- name: Lint Pure YAML Files
run: yamllint ./tenants
- name: Lint Helm Chart Syntax
run: helm lint charts/tenant/
- name: Validate Tenant Configurations against Chart
run: |
for tenant_dir in tenants/*; do
if [ -d "$tenant_dir" ]; then
tenant_name=$(basename "$tenant_dir")
echo "------------------------------------------------"
echo "Validating rendered output for: $tenant_name"
echo "------------------------------------------------"
helm template "$tenant_name" charts/tenant/ -f "$tenant_dir/config.yaml" | \
kubeconform -strict -summary -schema-location default
fi
done