1 Commits

Author SHA1 Message Date
c3c0c99dc8 Update Helm release postgres-cluster to v6
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
lint-and-test / lint-test (pull_request) Successful in 2m16s
2025-06-09 21:10:03 +00:00

View File

@@ -1,77 +1,39 @@
name: Helm Lint name: lint-and-test
on: on:
push:
branches:
- main
paths:
- 'clusters/**'
- ! 'clusters/*/archive'
pull_request: pull_request:
branches:
- main
paths:
- 'clusters/**'
- ! 'clusters/*/archive'
jobs: jobs:
helm-lint: lint-test:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Helm - name: Set up Helm
uses: azure/setup-helm@v4 uses: azure/setup-helm@v4
with: with:
token: ${{ secrets.GITEA_TOKEN }}
version: latest version: latest
- name: Lint Helm Chart - name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
check-latest: true
- name: Set up Chart Testing
uses: helm/chart-testing-action@v2.7.0
- name: Run Chart Testing (list-changed)
id: list-changed
run: | run: |
find clusters -maxdepth 4 -name Chart.yaml -exec dirname {} \; | while read -r chart_path; do changed=$(ct list-changed --target-branch ${{ gitea.event.repository.default_branch }} --chart-dirs clusters/cl01tl/*/* )
echo "Building chart dependency in $chart_path" if [[ -n "$changed" ]]; then
helm dependency build "$chart_path" echo "changed=true" >> $GITHUB_OUTPUT
echo "Linting chart in $chart_path"
helm lint "$chart_path"
done
- name: Lint Helm Chart
run: |
set -e # Exit immediately if a command exits with a non-zero status.
TARGET_BRANCH="origin/${{ gitea.base_ref }}"
echo "Target branch for diff is: $TARGET_BRANCH"
CHANGED_FILES=$(git diff --name-only "$TARGET_BRANCH" -- 'clusters/**')
echo "Found changed files:"
echo "$CHANGED_FILES"
# For each changed file, find its parent chart directory (the one with Chart.yaml).
# Then, create a unique list of those directories.
CHANGED_CHARTS=$(echo "$CHANGED_FILES" | while read -r file; do
dir=$(dirname "$file")
while [[ "$dir" != "." && ! -f "$dir/Chart.yaml" ]]; do
dir=$(dirname "$dir")
done
if [[ "$dir" != "." ]]; then
echo "$dir"
fi
done | sort -u)
if [[ -z "$CHANGED_CHARTS" ]]; then
echo "Could not determine changed charts. This could happen if only files outside a chart were changed."
exit 0
fi fi
echo "Running helm lint on changed charts:" - name: Run Chart Testing (lint)
echo "$CHANGED_CHARTS" if: steps.list-changed.outputs.changed == 'true'
run: ct lint --validate-maintainers=false --target-branch ${{ gitea.event.repository.default_branch }} --chart-dirs clusters/cl01tl/*/*
echo "$CHANGED_CHARTS" | while read -r chart; do
echo "Building dependency for "$chart" ..."
helm dependency build "$chart"
echo "Linting $chart..."
helm lint "$chart"
done