Add helm option to enable kubernetesUseEndpointSlices and add endpointslices to DCA RBAC #3765
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Lint and Test Charts | |
on: | |
pull_request: | |
paths: | |
- "charts/**" | |
# Permission forced by repo-level setting; only elevate on job-level | |
permissions: | |
contents: read | |
# packages: read | |
jobs: | |
changed: | |
runs-on: ubuntu-latest | |
outputs: | |
charts: ${{ steps.list-changed.outputs.changed }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Helm | |
uses: azure/setup-helm@v3.5 | |
with: | |
version: v3.6.3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.12 | |
- name: Set up chart-testing | |
uses: helm/chart-testing-action@v2.6.1 | |
- name: Run chart-testing (list-changed) | |
id: list-changed | |
env: | |
CT_DEBUG: "false" | |
run: | | |
changed=$(ct list-changed --config .github/ct.yaml) | |
if [[ -n "$changed" ]]; then | |
echo -n "Charts changed:" | |
echo "$changed" | |
echo "changed<<EOF" >> $GITHUB_OUTPUT | |
echo "$changed" >> $GITHUB_OUTPUT | |
echo "EOF" >> $GITHUB_OUTPUT | |
else | |
echo "PR without any chart changes - failing" | |
exit 1 | |
fi | |
lint-chart: | |
runs-on: ubuntu-latest | |
needs: | |
- changed | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.12 | |
- name: Set up chart-testing | |
uses: helm/chart-testing-action@v2.6.1 | |
- name: Run chart-testing (lint) | |
run: ct lint --config .github/ct.yaml | |
lint-docs: | |
runs-on: ubuntu-latest | |
needs: | |
- changed | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Run helm-docs | |
run: .github/helm-docs.sh | |
kubeconform-chart: | |
runs-on: ubuntu-latest | |
needs: | |
- changed | |
strategy: | |
matrix: | |
# When changing versions here, check that the version exists at: | |
# https://github.com/yannh/kubernetes-json-schema | |
# The original source at: | |
# https://github.com/instrumenta/kubernetes-json-schema is no | |
# longer updated | |
k8s: | |
- v1.16.4 | |
- v1.18.20 | |
- v1.22.17 | |
- v1.24.17 | |
- v1.25.16 | |
- v1.26.15 | |
- v1.27.16 | |
- v1.28.13 | |
- v1.29.8 | |
- v1.30.4 | |
- v1.31.1 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Add datadog helm repo | |
run: helm repo add datadog https://helm.datadoghq.com && helm repo update | |
- name: Add KSM helm repo | |
run: helm repo add kube-state-metrics https://prometheus-community.github.io/helm-charts | |
- name: Run kubeconform | |
env: | |
KUBERNETES_VERSION: ${{ matrix.k8s }} | |
CHANGED_CHARTS: ${{needs.changed.outputs.charts}} | |
run: .github/kubeconform.sh | |
install-chart: | |
name: install-chart | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 60 | |
needs: | |
- lint-chart | |
- kubeconform-chart | |
strategy: | |
matrix: | |
versions: | |
- k8s: v1.18.20 | |
kind: v0.17.0 | |
- k8s: v1.22.17 | |
kind: v0.22.0 | |
- k8s: v1.24.17 | |
kind: v0.22.0 | |
- k8s: v1.25.16 | |
kind: v0.22.0 | |
- k8s: v1.26.15 | |
kind: v0.22.0 | |
- k8s: v1.27.16 | |
kind: v0.22.0 | |
- k8s: v1.28.13 | |
kind: v0.22.0 | |
- k8s: v1.29.8 | |
kind: v0.22.0 | |
- k8s: v1.30.4 | |
kind: v0.22.0 | |
- k8s: v1.31.1 | |
kind: v0.22.0 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Create kind ${{ matrix.versions.k8s }} cluster with kind version ${{ matrix.versions.kind }} | |
uses: helm/kind-action@v1.10.0 | |
with: | |
version: ${{ matrix.versions.kind }} | |
node_image: kindest/node:${{ matrix.versions.k8s}} | |
config: .github/kind_config.yaml | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.12 | |
- name: Set up chart-testing | |
uses: helm/chart-testing-action@v2.6.1 | |
- name: Run chart-testing (install) | |
run: ct install --config .github/ct.yaml | |
pr-validated: | |
name: pr-validated | |
runs-on: ubuntu-latest | |
needs: | |
- install-chart | |
steps: | |
- name: validate | |
run: echo "PR OK" |