From c55c0dff69d8b4a8d8f18bcb4916bfde936f6613 Mon Sep 17 00:00:00 2001 From: tusuii Date: Sat, 28 Feb 2026 00:45:41 +0530 Subject: [PATCH] =?UTF-8?q?fix:=20remove=20MetalLB=20setup=20stage=20?= =?UTF-8?q?=E2=80=94=20rely=20on=20pre-installed=20MetalLB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MetalLB is already installed and configured on the cluster. The pipeline no longer needs to apply IPAddressPool or L2Advertisement resources. Removed the 'Setup MetalLB' stage and deleted the metallb overlay files. The frontend Service type: LoadBalancer is already set, so MetalLB will automatically assign an external IP on deployment. Co-Authored-By: Claude Sonnet 4.6 --- Jenkinsfile | 29 ------------------- .../on-premise/metallb/ipaddresspool.yaml | 8 ----- .../on-premise/metallb/l2advertisement.yaml | 8 ----- 3 files changed, 45 deletions(-) delete mode 100644 k8s/overlays/on-premise/metallb/ipaddresspool.yaml delete mode 100644 k8s/overlays/on-premise/metallb/l2advertisement.yaml diff --git a/Jenkinsfile b/Jenkinsfile index 0dcf68f..fa3d5fd 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -110,35 +110,6 @@ pipeline { } } - stage('Setup MetalLB') { - steps { - withKubeConfig([credentialsId: "${K8S_CRED_ID}"]) { - sh """ - # MetalLB is already installed on this cluster. - # Wait for the controller to be ready — the webhook runs inside it. - kubectl rollout status deployment/controller -n metallb-system --timeout=120s - - # If the webhook service has no ready endpoints (e.g. stale ClusterIP - # from a previously applied metallb-native.yaml whose pods were removed), - # delete the broken ValidatingWebhookConfiguration so the apply can - # proceed without being blocked by an unreachable webhook. - READY_ADDRS=\$(kubectl get endpoints metallb-webhook-service \\ - -n metallb-system \\ - -o jsonpath='{.subsets[*].addresses[*].ip}' 2>/dev/null || echo "") - if [ -z "\$READY_ADDRS" ]; then - echo "WARNING: metallb-webhook-service has no ready endpoints — removing stale webhook config." - kubectl delete validatingwebhookconfiguration metallb-webhook-configuration 2>/dev/null || true - fi - - kubectl apply -f k8s/overlays/on-premise/metallb/ - - echo "MetalLB pod state:" - kubectl get pods -n metallb-system -o wide - """ - } - } - } - stage('Deploy to K8s') { steps { withKubeConfig([credentialsId: "${K8S_CRED_ID}"]) { diff --git a/k8s/overlays/on-premise/metallb/ipaddresspool.yaml b/k8s/overlays/on-premise/metallb/ipaddresspool.yaml deleted file mode 100644 index 2a72eea..0000000 --- a/k8s/overlays/on-premise/metallb/ipaddresspool.yaml +++ /dev/null @@ -1,8 +0,0 @@ -apiVersion: metallb.io/v1beta1 -kind: IPAddressPool -metadata: - name: scrum-manager-pool - namespace: metallb-system -spec: - addresses: - - 192.168.108.213/32 diff --git a/k8s/overlays/on-premise/metallb/l2advertisement.yaml b/k8s/overlays/on-premise/metallb/l2advertisement.yaml deleted file mode 100644 index 22bc469..0000000 --- a/k8s/overlays/on-premise/metallb/l2advertisement.yaml +++ /dev/null @@ -1,8 +0,0 @@ -apiVersion: metallb.io/v1beta1 -kind: L2Advertisement -metadata: - name: scrum-manager-l2 - namespace: metallb-system -spec: - ipAddressPools: - - scrum-manager-pool