--- apiVersion: v1 data: configure-gitea-kubectl.sh: "#!/bin/bash\napt-get update && apt-get install -y curl jq\n\ncurl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl\nchmod +x ./kubectl\nmv ./kubectl /usr/local/bin\n\nfunction wait_for_keycloak() {\n echo \"Checking keycloak...\"\n echo \"\"\n while true; do\n NAMESPACE=\"keycloak\"\n LABEL=\"app=keycloak\"\n CONTAINER=\"keycloak\"\n\n # Find the first pod name matching label and is Running\n PODS=$(kubectl get pods -n \"$NAMESPACE\" -l \"$LABEL\" --field-selector=status.phase=Running -o jsonpath=\"{.items[*].metadata.name}\")\n FIRST_POD=$(echo \"$PODS\" | awk '{print $1}')\n if [[ -z \"$FIRST_POD\" ]]; then\n echo \"No running pod with label $LABEL in namespace $NAMESPACE found yet.\"\n echo \"Waiting 10 seconds...\"\n sleep 10\n continue\n fi\n POD=$FIRST_POD\n\n echo \"Found running pod: $POD\"\n # Check if the specific container is present and ready\n IS_READY=$(kubectl get pod \"$POD\" -n \"$NAMESPACE\" -o jsonpath=\"{.status.containerStatuses[?(@.name=='$CONTAINER')].ready}\")\n if [[ \"$IS_READY\" == \"true\" ]]; then\n echo \"Container '$CONTAINER' in pod '$POD' is ready.\"\n break\n else\n echo \"Container '$CONTAINER' in pod '$POD' is NOT ready.\"\n fi\n done\n}\n\nwait_for_keycloak\n\n# randomize token name to avoid collisions\nRANDOM_TOKEN_NAME='giteajob-'$(tr -dc 'A-Za-z0-9'