From a0dff4bad6da41bd1224d616fb5eeb002657008b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbyn=C4=9Bk=20Dr=C3=A1pela?= <61500440+zdrapela@users.noreply.github.com> Date: Mon, 6 Jan 2025 20:40:22 +0100 Subject: [PATCH] chore(ci): use ephemeral AKS cluster with fallback (#2145) * chore(ci): AKS use ephemeral cluster with fallback * Better log messages --- .ibm/pipelines/jobs/aks.sh | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/.ibm/pipelines/jobs/aks.sh b/.ibm/pipelines/jobs/aks.sh index bbf7e3a06a..261c63ca80 100644 --- a/.ibm/pipelines/jobs/aks.sh +++ b/.ibm/pipelines/jobs/aks.sh @@ -4,25 +4,30 @@ handle_aks() { echo "Starting AKS deployment" for file in ${DIR}/cluster/aks/*.sh; do source $file; done - export K8S_CLUSTER_TOKEN=$(cat /tmp/secrets/AKS_CLUSTER_TOKEN) - export K8S_CLUSTER_TOKEN_ENCODED=$(printf "%s" $K8S_CLUSTER_TOKEN | base64 | tr -d '\n') - export K8S_SERVICE_ACCOUNT_TOKEN=$K8S_CLUSTER_TOKEN_ENCODED - export OCM_CLUSTER_TOKEN=$K8S_CLUSTER_TOKEN_ENCODED - export K8S_CLUSTER_ROUTER_BASE=$AKS_INSTANCE_DOMAIN_NAME export NAME_SPACE_K8S="showcase-k8s-ci-nightly" export NAME_SPACE_RBAC_K8S="showcase-rbac-k8s-ci-nightly" url="https://${K8S_CLUSTER_ROUTER_BASE}" - az_login - az_aks_start "${AKS_NIGHTLY_CLUSTER_NAME}" "${AKS_NIGHTLY_CLUSTER_RESOURCEGROUP}" - az_aks_approuting_enable "${AKS_NIGHTLY_CLUSTER_NAME}" "${AKS_NIGHTLY_CLUSTER_RESOURCEGROUP}" - az_aks_get_credentials "${AKS_NIGHTLY_CLUSTER_NAME}" "${AKS_NIGHTLY_CLUSTER_RESOURCEGROUP}" - - export K8S_CLUSTER_URL=$(oc whoami --show-server) - export K8S_CLUSTER_API_SERVER_URL=$(printf "%s" "$K8S_CLUSTER_URL" | base64 | tr -d '\n') - export OCM_CLUSTER_URL=$(printf "%s" "$K8S_CLUSTER_URL" | base64 | tr -d '\n') + if kubectl auth whoami > /dev/null 2>&1; then + echo "Using an ephemeral AKS cluster." + else + echo "Falling back to a long-running AKS cluster." + export K8S_CLUSTER_TOKEN=$(cat /tmp/secrets/AKS_CLUSTER_TOKEN) + export K8S_CLUSTER_TOKEN_ENCODED=$(printf "%s" $K8S_CLUSTER_TOKEN | base64 | tr -d '\n') + export K8S_SERVICE_ACCOUNT_TOKEN=$K8S_CLUSTER_TOKEN_ENCODED + export OCM_CLUSTER_TOKEN=$K8S_CLUSTER_TOKEN_ENCODED + + az_login + az_aks_start "${AKS_NIGHTLY_CLUSTER_NAME}" "${AKS_NIGHTLY_CLUSTER_RESOURCEGROUP}" + az_aks_approuting_enable "${AKS_NIGHTLY_CLUSTER_NAME}" "${AKS_NIGHTLY_CLUSTER_RESOURCEGROUP}" + az_aks_get_credentials "${AKS_NIGHTLY_CLUSTER_NAME}" "${AKS_NIGHTLY_CLUSTER_RESOURCEGROUP}" + + export K8S_CLUSTER_URL=$(oc whoami --show-server) + export K8S_CLUSTER_API_SERVER_URL=$(printf "%s" "$K8S_CLUSTER_URL" | base64 | tr -d '\n') + export OCM_CLUSTER_URL=$(printf "%s" "$K8S_CLUSTER_URL" | base64 | tr -d '\n') + fi initiate_aks_deployment check_and_test "${RELEASE_NAME}" "${NAME_SPACE_K8S}" "${url}" @@ -32,5 +37,3 @@ handle_aks() { check_and_test "${RELEASE_NAME_RBAC}" "${NAME_SPACE_RBAC_K8S}" "${rbac_rhdh_base_url}" delete_namespace "${NAME_SPACE_RBAC_K8S}" } - -