NOISSUE - Fix invalid chart directory in lint-test.yaml
#116
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
# Copyright (c) Magistrala | |
# SPDX-License-Identifier: Apache-2.0 | |
name: Lint and Test Charts | |
on: pull_request | |
jobs: | |
lint-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Helm | |
uses: azure/[email protected] | |
with: | |
version: v3.15.4 | |
- name: Add Helm repositories and update | |
run: | | |
helm repo add nats https://nats-io.github.io/k8s/helm/charts/ | |
helm repo add jaegertracing https://jaegertracing.github.io/helm-charts | |
helm repo add bitnami https://charts.bitnami.com/bitnami | |
helm repo add hashicorp https://helm.releases.hashicorp.com | |
helm repo update | |
- name: Update Helm dependencies | |
run: | | |
helm dependency update charts/magistrala | |
# Python is required because `ct lint` runs Yamale (https://github.com/23andMe/Yamale) and | |
# yamllint (https://github.com/adrienverge/yamllint) which require Python | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: "3.x" | |
check-latest: true | |
- name: Set up chart-testing | |
uses: helm/[email protected] | |
- name: Run chart-testing (list-changed) | |
id: list-changed | |
run: | | |
changed=$(ct list-changed --target-branch ${{ github.event.repository.default_branch }}) | |
if [[ -n "$changed" ]]; then | |
echo "changed=true" >> "$GITHUB_OUTPUT" | |
fi | |
- name: Run chart-testing (lint) | |
if: steps.list-changed.outputs.changed == 'true' | |
run: | | |
ct lint --chart-dirs charts --target-branch ${{ github.event.repository.default_branch }} | |
- name: Create kind cluster | |
if: steps.list-changed.outputs.changed == 'true' | |
uses: helm/[email protected] | |
with: | |
config: | | |
kind: Cluster | |
apiVersion: kind.x-k8s.io/v1alpha4 | |
nodes: | |
- role: control-plane | |
extraPortMappings: | |
- containerPort: 80 | |
hostPort: 80 | |
kubeadmConfigPatches: | |
- | | |
kind: InitConfiguration | |
nodeRegistration: | |
kubeletExtraArgs: | |
cpu-manager-policy: static | |
cpu-manager-reconcile-period: 5s | |
kube-reserved: cpu=200m | |
system-reserved: cpu=200m | |
- role: worker | |
kubeadmConfigPatches: | |
- | | |
kind: InitConfiguration | |
nodeRegistration: | |
kubeletExtraArgs: | |
cpu-manager-policy: static | |
cpu-manager-reconcile-period: 5s | |
kube-reserved: cpu=200m | |
system-reserved: cpu=200m | |
- name: Debug - Print pod status every 10 seconds | |
if: steps.list-changed.outputs.changed == 'true' | |
run: | | |
while true; do | |
echo "Printing all pods and their status:" | |
kubectl get pods --all-namespaces | |
sleep 10 | |
done & | |
- name: Run chart-testing (install) | |
if: steps.list-changed.outputs.changed == 'true' | |
run: | | |
ct install --chart-dirs charts --target-branch ${{ github.event.repository.default_branch }} --debug --helm-extra-args '--timeout 600s' |