From 7dd32cf698c14441e0ee1313d7aa29af11cecccd Mon Sep 17 00:00:00 2001 From: M Essam Hamed Date: Tue, 25 Nov 2025 20:46:41 +0200 Subject: [PATCH] Add netbird-operator-config chart test workflow --- .../test-chart-netbird-operator-config.yaml | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 .github/workflows/test-chart-netbird-operator-config.yaml diff --git a/.github/workflows/test-chart-netbird-operator-config.yaml b/.github/workflows/test-chart-netbird-operator-config.yaml new file mode 100644 index 0000000..71f3ea2 --- /dev/null +++ b/.github/workflows/test-chart-netbird-operator-config.yaml @@ -0,0 +1,64 @@ +name: Test netbird-operator-config Chart + +on: + push: + pull_request: + +jobs: + test-e2e: + name: Run on Ubuntu + runs-on: ubuntu-latest + steps: + - name: Clone the code + uses: actions/checkout@v4 + + - name: Install the latest version of kind + run: | + curl -Lo ./kind https://kind.sigs.k8s.io/dl/latest/kind-linux-amd64 + chmod +x ./kind + sudo mv ./kind /usr/local/bin/kind + + - name: Verify kind installation + run: kind version + + - name: Create kind cluster + run: kind create cluster + + - name: Install Helm + run: | + curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash + + - name: Verify Helm installation + run: helm version + + - name: Lint Helm Chart + run: | + helm lint ./charts/kubernetes-operator + + - name: Install cert-manager via Helm + run: | + helm repo add jetstack https://charts.jetstack.io + helm repo update + helm install cert-manager jetstack/cert-manager --namespace cert-manager --create-namespace --set installCRDs=true + + - name: Wait for cert-manager to be ready + run: | + kubectl wait --namespace cert-manager --for=condition=available --timeout=300s deployment/cert-manager + kubectl wait --namespace cert-manager --for=condition=available --timeout=300s deployment/cert-manager-cainjector + kubectl wait --namespace cert-manager --for=condition=available --timeout=300s deployment/cert-manager-webhook + + - name: Install Helm chart for project + run: | + helm install test-chart --create-namespace --namespace netbird --set 'operator.image.tag=debug' ./charts/kubernetes-operator + + - name: Check Helm release status + run: | + helm status test-chart --namespace netbird + + - name: Install config chart for project + run: | + helm install test-chart-config --create-namespace --namespace netbird ./charts/netbird-operator-config + + - name: Check config release status + run: | + helm status test-chart-config --namespace netbird