~/src/github.com/openstack-k8s-operators/install_yamls ~/ci-framework-data/artifacts error: the server doesn't have a resource type "openstackversion" bash scripts/validate-marketplace.sh + '[' -z 500s ']' + OPERATOR_NAMESPACE=openshift-marketplace ++ oc get pods --no-headers -n openshift-marketplace ++ grep -viE 'running|completed' + not_running_pods= + '[' -z '' ']' + echo 'All openshift-marketplace pods seems to me fine' All openshift-marketplace pods seems to me fine + OPERATORS='openshift-cert-manager-operator kubernetes-nmstate-operator metallb-operator' + for operator in $OPERATORS + n=0 + retries=20 + true + oc get packagemanifests -n openshift-marketplace + grep openshift-cert-manager-operator openshift-cert-manager-operator Red Hat Operators 276d + '[' 0 -eq 0 ']' + break + for operator in $OPERATORS + n=0 + retries=20 + true + oc get packagemanifests -n openshift-marketplace + grep kubernetes-nmstate-operator kubernetes-nmstate-operator Red Hat Operators 276d + '[' 0 -eq 0 ']' + break + for operator in $OPERATORS + n=0 + retries=20 + true + oc get packagemanifests -n openshift-marketplace + grep metallb-operator metallb-operator Red Hat Operators 276d + '[' 0 -eq 0 ']' + break bash scripts/gen-namespace.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests ']' + '[' -z metallb-system ']' + OUT_DIR=/home/zuul/ci-framework-data/artifacts/manifests/metallb-system + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/metallb-system ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/metallb-system + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/metallb-system/namespace.yaml namespace/metallb-system created timeout 500s bash -c "while ! (oc get project.v1.project.openshift.io metallb-system); do sleep 1; done" NAME DISPLAY NAME STATUS metallb-system Active bash scripts/gen-olm-metallb.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/metallb/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/metallb/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/metallb/op + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/metallb-system/metallb/cr ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/metallb-system/metallb/cr ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/metallb-system/metallb/cr + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/metallb/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/metallb/op + echo DEPLOY_DIR /home/zuul/ci-framework-data/artifacts/manifests/metallb-system/metallb/cr DEPLOY_DIR /home/zuul/ci-framework-data/artifacts/manifests/metallb-system/metallb/cr + echo INTERFACE INTERFACE + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/metallb/op operatorgroup.operators.coreos.com/metallb-operator created subscription.operators.coreos.com/metallb-operator-sub created timeout 500s bash -c "while ! (oc get pod --no-headers=true -l control-plane=controller-manager -n metallb-system| grep metallb-operator-controller); do sleep 10; done" No resources found in metallb-system namespace. No resources found in metallb-system namespace. No resources found in metallb-system namespace. metallb-operator-controller-manager-6d556748c5-l2bl4 0/1 ContainerCreating 0 5s oc wait pod -n metallb-system --for condition=Ready -l control-plane=controller-manager --timeout=500s pod/metallb-operator-controller-manager-6d556748c5-l2bl4 condition met timeout 500s bash -c "while ! (oc get pod --no-headers=true -l component=webhook-server -n metallb-system| grep metallb-operator-webhook); do sleep 10; done" metallb-operator-webhook-server-7bcbfbd867-h25xk 1/1 Running 0 41s oc wait pod -n metallb-system --for condition=Ready -l component=webhook-server --timeout=500s pod/metallb-operator-webhook-server-7bcbfbd867-h25xk condition met oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/metallb-system/metallb/cr/deploy_operator.yaml metallb.metallb.io/metallb created timeout 500s bash -c "while ! (oc get pod --no-headers=true -l component=speaker -n metallb-system | grep speaker); do sleep 10; done" No resources found in metallb-system namespace. speaker-768ll 0/2 ContainerCreating 0 10s oc wait pod -n metallb-system -l component=speaker --for condition=Ready --timeout=500s pod/speaker-768ll condition met bash scripts/gen-namespace.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests ']' + '[' -z glance-kuttl-tests ']' + OUT_DIR=/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/namespace.yaml namespace/glance-kuttl-tests created timeout 500s bash -c "while ! (oc get project.v1.project.openshift.io glance-kuttl-tests); do sleep 1; done" NAME DISPLAY NAME STATUS glance-kuttl-tests Active oc project glance-kuttl-tests Now using project "glance-kuttl-tests" on server "https://api.crc.testing:6443". bash scripts/gen-input-kustomize.sh + OUT=/home/zuul/ci-framework-data/artifacts/manifests + '[' -z glance-kuttl-tests ']' + '[' -z osp-secret ']' + '[' -z 12345678 ']' + '[' -z 1234567842 ']' + '[' -z 767c3ed056cbaa3b9dfedb8c6f825bf0 ']' + '[' -z sEFmdFjDUqRM2VemYslV5yGNWjokioJXsg8Nrlc3drU= ']' + '[' -z COX8bmlKAWn56XCGMrKQJj7dgHNAOl6f ']' + '[' -z openstack ']' + '[' -z libvirt-secret ']' + DIR=/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/input + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/input ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/input + pushd /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/input ~/ci-framework-data/artifacts/manifests/glance-kuttl-tests/input ~/src/github.com/openstack-k8s-operators/install_yamls + cat oc get secret/osp-secret || oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/input | oc apply -f - Error from server (NotFound): secrets "osp-secret" not found secret/libvirt-secret created secret/octavia-ca-passphrase created secret/osp-secret created oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/manila/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/manila/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/manila: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/manila-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/manila/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists manila;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/heat/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/heat/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/heat: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/heat-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/heat/cr oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/horizon/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/horizon/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/horizon: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/horizon-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/horizon/cr oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/nova/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/nova/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/nova: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/nova-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/nova/cr oc rsh openstack-galera-0 mysql -u root --password=12**********78 -ss -e "show databases like 'nova_%';" | xargs -I '{}' oc rsh openstack-galera-0 mysql -u root --password=12**********78 -ss -e "flush tables; drop database if exists {};" Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra-redis/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra-redis/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra-redis: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/infra-operator-redis /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra-redis/cr oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/octavia/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/octavia/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/octavia: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/octavia-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/octavia/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists octavia;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/designate/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/designate/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/designate: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/designate-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/designate/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists designate;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/neutron/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/neutron/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/neutron: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/neutron-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/neutron/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists neutron;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ovn/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ovn/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ovn: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/ovn-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ovn/cr oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ironic/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ironic/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ironic: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/ironic-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/ironic/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists ironic;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists ironic_inspector;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/cinder/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/cinder/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/cinder: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/cinder-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/cinder/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists cinder;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/glance-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists glance;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/placement/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/placement/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/placement: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/placement-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/placement/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists placement;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift: no such file or directory No resources found rm -Rf -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/swift-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/barbican/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/barbican/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/barbican: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/barbican-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/barbican/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists barbican;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/keystone-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists keystone;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/mariadb-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/telemetry/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/telemetry/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/telemetry: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/telemetry-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/telemetry/cr rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/ceilometer-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/telemetry/cr oc rsh -t openstack-galera-0 mysql -u root --password=12**********78 -e "flush tables; drop database if exists aodh;" || true Error from server (NotFound): pods "openstack-galera-0" not found oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr | oc delete --ignore-not-found=true -f - error: must build at directory: not a valid directory: evalsymlink failure on '/home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr' : lstat /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra: no such file or directory No resources found rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/infra-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr if oc get RabbitmqCluster; then oc delete --ignore-not-found=true RabbitmqCluster --all; fi error: the server doesn't have a resource type "RabbitmqCluster" rm -Rf /home/zuul/ci-framework-data/artifacts/manifests/operator/rabbitmq-operator /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr bash scripts/gen-namespace.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests ']' + '[' -z openstack-operators ']' + OUT_DIR=/home/zuul/ci-framework-data/artifacts/manifests/openstack-operators + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators ']' + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/namespace.yaml Warning: resource namespaces/openstack-operators is missing the kubectl.kubernetes.io/last-applied-configuration annotation which is required by oc apply. oc apply should only be used on resources created declaratively by either oc create --save-config or oc apply. The missing annotation will be patched automatically. namespace/openstack-operators configured timeout 500s bash -c "while ! (oc get project.v1.project.openshift.io openstack-operators); do sleep 1; done" NAME DISPLAY NAME STATUS openstack-operators Active oc project openstack-operators Now using project "openstack-operators" on server "https://api.crc.testing:6443". bash scripts/gen-olm.sh + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' -z quay.io/openstack-k8s-operators/mariadb-operator-index:latest ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/mariadb/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/mariadb/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/mariadb/op + OPERATOR_CHANNEL=alpha + OPERATOR_SOURCE=mariadb-operator-index + OPERATOR_SOURCE_NAMESPACE=openstack-operators + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/mariadb/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/mariadb/op + echo OPERATOR_CHANNEL alpha OPERATOR_CHANNEL alpha + echo OPERATOR_SOURCE mariadb-operator-index OPERATOR_SOURCE mariadb-operator-index + echo OPERATOR_SOURCE_NAMESPACE openstack-operators OPERATOR_SOURCE_NAMESPACE openstack-operators + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/mariadb/op catalogsource.operators.coreos.com/mariadb-operator-index created operatorgroup.operators.coreos.com/openstack created subscription.operators.coreos.com/mariadb-operator created mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/operator /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/mariadb/op /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr bash scripts/clone-operator-repo.sh Cloning repo: git clone -b main https://github.com/openstack-k8s-operators/openstack-operator.git openstack-operator Cloning into 'openstack-operator'... Cloning repo: git clone -b main https://github.com/openstack-k8s-operators/mariadb-operator.git mariadb-operator Cloning into 'mariadb-operator'... Running checkout: git checkout f08eaf841dd9 Note: switching to 'f08eaf841dd9'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at f08eaf8 Merge pull request #384 from stuggi/operator_sdk_1.41.1 cp /home/zuul/ci-framework-data/artifacts/manifests/operator/mariadb-operator/config/samples/mariadb_v1beta1_galera.yaml /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr bash scripts/gen-service-kustomize.sh +++ dirname scripts/gen-service-kustomize.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + . /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts/common.sh --source-only ++ set -e + '[' -z glance-kuttl-tests ']' + '[' -z Galera ']' + '[' -z osp-secret ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr ']' + '[' -n '' ']' + REPLACEMENTS= + IMAGE=unused + IMAGE_PATH=containerImage + STORAGE_REQUEST=10G + INTERFACE_MTU=1500 + VLAN_START=20 + VLAN_STEP=1 + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr ']' + pushd /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr ~/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr ~/src/github.com/openstack-k8s-operators/install_yamls + cat + [[ Galera == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + IFS=, + read -ra IMAGES + IFS=, + read -ra IMAGE_PATHS + '[' 1 '!=' 1 ']' + (( i=0 )) + (( i < 1 )) + SPEC_PATH=containerImage + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 1 )) + '[' -n '' ']' + '[' Galera == OpenStackControlPlane ']' + '[' Galera == Galera ']' + cat + '[' Galera == NetConfig ']' + '[' -n '' ']' + [[ Galera == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + [[ Galera == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + '[' -n '' ']' + kustomization_add_resources + echo merge config dir merge config dir ++ grep -v kustomization ++ find . -type f -name '*.yaml' + yamls=./mariadb_v1beta1_galera.yaml + for y in ${yamls[@]} + kustomize edit add resource ./mariadb_v1beta1_galera.yaml + popd ~/src/github.com/openstack-k8s-operators/install_yamls make wait make[1]: Entering directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' error: the server doesn't have a resource type "openstackversion" bash scripts/operator-wait.sh + TIMEOUT=500s +++ dirname scripts/operator-wait.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq ']' + pushd /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls + timeout 500s bash -c 'until [ "$(bash ./get-operator-status.sh)" == "Succeeded" ]; do sleep 5; done' + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "mariadb-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "mariadb-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "mariadb-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "mariadb-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "mariadb-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z mariadb ']' + '[' mariadb = rabbitmq-cluster ']' + DEPL_NAME=mariadb-operator-controller-manager ++ oc get -n openstack-operators deployment mariadb-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=1 + '[' 1 '!=' 1 ']' + echo Succeeded + exit 0 + rc=0 + popd ~/src/github.com/openstack-k8s-operators/install_yamls + exit 0 make[1]: Leaving directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' bash scripts/operator-deploy-resources.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr ']' + NEXT_WAIT_TIME=0 + '[' 0 -eq 15 ']' + oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/mariadb/cr + oc apply -f - galera.mariadb.openstack.org/openstack created + '[' 0 -lt 15 ']' bash scripts/gen-olm.sh + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' -z quay.io/openstack-k8s-operators/infra-operator-index:latest ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/infra/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/infra/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/infra/op + OPERATOR_CHANNEL=alpha + OPERATOR_SOURCE=infra-operator-index + OPERATOR_SOURCE_NAMESPACE=openstack-operators + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/infra/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/infra/op + echo OPERATOR_CHANNEL alpha OPERATOR_CHANNEL alpha + echo OPERATOR_SOURCE infra-operator-index OPERATOR_SOURCE infra-operator-index + echo OPERATOR_SOURCE_NAMESPACE openstack-operators OPERATOR_SOURCE_NAMESPACE openstack-operators + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/infra/op catalogsource.operators.coreos.com/infra-operator-index created operatorgroup.operators.coreos.com/openstack unchanged subscription.operators.coreos.com/infra-operator created mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/operator /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/infra/op /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr bash scripts/clone-operator-repo.sh Cloning repo: git clone -b main https://github.com/openstack-k8s-operators/infra-operator.git infra-operator Cloning into 'infra-operator'... Running checkout: git checkout 1ff40691b66d Note: switching to '1ff40691b66d'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 1ff4069 Merge pull request #505 from lmiccini/quorum_webhook_fix cp /home/zuul/ci-framework-data/artifacts/manifests/operator/infra-operator/config/samples/memcached_v1beta1_memcached.yaml /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr bash scripts/gen-service-kustomize.sh +++ dirname scripts/gen-service-kustomize.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + . /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts/common.sh --source-only ++ set -e + '[' -z glance-kuttl-tests ']' + '[' -z Memcached ']' + '[' -z osp-secret ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr ']' + '[' -n '' ']' + REPLACEMENTS= + IMAGE=unused + IMAGE_PATH=containerImage + STORAGE_REQUEST=10G + INTERFACE_MTU=1500 + VLAN_START=20 + VLAN_STEP=1 + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr ']' + pushd /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr ~/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr ~/src/github.com/openstack-k8s-operators/install_yamls + cat + [[ Memcached == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + IFS=, + read -ra IMAGES + IFS=, + read -ra IMAGE_PATHS + '[' 1 '!=' 1 ']' + (( i=0 )) + (( i < 1 )) + SPEC_PATH=containerImage + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 1 )) + '[' -n memcached ']' + cat + '[' Memcached == OpenStackControlPlane ']' + '[' Memcached == Galera ']' + '[' Memcached == NetConfig ']' + '[' -n '' ']' + [[ Memcached == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + [[ Memcached == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + '[' -n '' ']' + kustomization_add_resources + echo merge config dir merge config dir ++ find . -type f -name '*.yaml' ++ grep -v kustomization + yamls=./memcached_v1beta1_memcached.yaml + for y in ${yamls[@]} + kustomize edit add resource ./memcached_v1beta1_memcached.yaml + popd ~/src/github.com/openstack-k8s-operators/install_yamls make wait make[1]: Entering directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' error: the server doesn't have a resource type "openstackversion" bash scripts/operator-wait.sh + TIMEOUT=500s +++ dirname scripts/operator-wait.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq ']' + pushd /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls + timeout 500s bash -c 'until [ "$(bash ./get-operator-status.sh)" == "Succeeded" ]; do sleep 5; done' + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "infra-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "infra-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "infra-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "infra-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "infra-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ jq -e .status.availableReplicas ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z infra ']' + '[' infra = rabbitmq-cluster ']' + DEPL_NAME=infra-operator-controller-manager ++ oc get -n openstack-operators deployment infra-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=1 + '[' 1 '!=' 1 ']' + echo Succeeded + exit 0 + rc=0 + popd ~/src/github.com/openstack-k8s-operators/install_yamls + exit 0 make[1]: Leaving directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' bash scripts/operator-deploy-resources.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr ']' + NEXT_WAIT_TIME=0 + '[' 0 -eq 15 ']' + oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/infra/cr + oc apply -f - memcached.memcached.openstack.org/memcached created + '[' 0 -lt 15 ']' bash scripts/gen-olm.sh + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' -z quay.io/openstack-k8s-operators/rabbitmq-cluster-operator-index:latest ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/rabbitmq-cluster/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/rabbitmq-cluster/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/rabbitmq-cluster/op + OPERATOR_CHANNEL=alpha + OPERATOR_SOURCE=rabbitmq-cluster-operator-index + OPERATOR_SOURCE_NAMESPACE=openstack-operators + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/rabbitmq-cluster/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/rabbitmq-cluster/op + echo OPERATOR_CHANNEL alpha OPERATOR_CHANNEL alpha + echo OPERATOR_SOURCE rabbitmq-cluster-operator-index OPERATOR_SOURCE rabbitmq-cluster-operator-index + echo OPERATOR_SOURCE_NAMESPACE openstack-operators OPERATOR_SOURCE_NAMESPACE openstack-operators + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/rabbitmq-cluster/op catalogsource.operators.coreos.com/rabbitmq-cluster-operator-index created operatorgroup.operators.coreos.com/openstack unchanged subscription.operators.coreos.com/rabbitmq-cluster-operator created mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/operator /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/rabbitmq/op /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr bash -c "CHECKOUT_FROM_OPENSTACK_REF=false scripts/clone-operator-repo.sh" Cloning repo: git clone -b patches https://github.com/openstack-k8s-operators/rabbitmq-cluster-operator.git rabbitmq-operator Cloning into 'rabbitmq-operator'... cp /home/zuul/ci-framework-data/artifacts/manifests/operator/rabbitmq-operator/docs/examples/default-security-context/rabbitmq.yaml /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr bash scripts/gen-service-kustomize.sh +++ dirname scripts/gen-service-kustomize.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + . /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts/common.sh --source-only ++ set -e + '[' -z glance-kuttl-tests ']' + '[' -z RabbitmqCluster ']' + '[' -z osp-secret ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr ']' + '[' -n '' ']' + REPLACEMENTS= + IMAGE=unused + IMAGE_PATH=image + STORAGE_REQUEST=10G + INTERFACE_MTU=1500 + VLAN_START=20 + VLAN_STEP=1 + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr ']' + pushd /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr ~/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr ~/src/github.com/openstack-k8s-operators/install_yamls + cat + [[ RabbitmqCluster == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + IFS=, + read -ra IMAGES + IFS=, + read -ra IMAGE_PATHS + '[' 1 '!=' 1 ']' + (( i=0 )) + (( i < 1 )) + SPEC_PATH=image + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 1 )) + '[' -n rabbitmq ']' + cat + '[' RabbitmqCluster == OpenStackControlPlane ']' + '[' RabbitmqCluster == Galera ']' + '[' RabbitmqCluster == NetConfig ']' + '[' -n '' ']' + [[ RabbitmqCluster == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + [[ RabbitmqCluster == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + '[' -n '' ']' + kustomization_add_resources + echo merge config dir merge config dir ++ find . -type f -name '*.yaml' ++ grep -v kustomization + yamls=./rabbitmq.yaml + for y in ${yamls[@]} + kustomize edit add resource ./rabbitmq.yaml + popd ~/src/github.com/openstack-k8s-operators/install_yamls make wait make[1]: Entering directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' error: the server doesn't have a resource type "openstackversion" bash scripts/operator-wait.sh + TIMEOUT=500s +++ dirname scripts/operator-wait.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + '[' -z openstack-operators ']' + '[' -z rabbitmq ']' + '[' rabbitmq = rabbitmq ']' + OPERATOR_NAME=rabbitmq-cluster + pushd /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls + timeout 500s bash -c 'until [ "$(bash ./get-operator-status.sh)" == "Succeeded" ]; do sleep 5; done' + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ jq -e .status.availableReplicas ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "rabbitmq-cluster-operator" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z rabbitmq-cluster ']' + '[' rabbitmq-cluster = rabbitmq-cluster ']' + DEPL_NAME=rabbitmq-cluster-operator ++ oc get -n openstack-operators deployment rabbitmq-cluster-operator -o json ++ jq -e .status.availableReplicas + REPLICAS=1 + '[' 1 '!=' 1 ']' + echo Succeeded + exit 0 + rc=0 + popd ~/src/github.com/openstack-k8s-operators/install_yamls + exit 0 make[1]: Leaving directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' bash scripts/operator-deploy-resources.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr ']' + NEXT_WAIT_TIME=0 + '[' 0 -eq 15 ']' + oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/rabbitmq/cr + oc apply -f - rabbitmqcluster.rabbitmq.com/rabbitmq created + '[' 0 -lt 15 ']' bash scripts/gen-olm.sh + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' -z quay.io/openstack-k8s-operators/keystone-operator-index:latest ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/keystone/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/keystone/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/keystone/op + OPERATOR_CHANNEL=alpha + OPERATOR_SOURCE=keystone-operator-index + OPERATOR_SOURCE_NAMESPACE=openstack-operators + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/keystone/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/keystone/op + echo OPERATOR_CHANNEL alpha OPERATOR_CHANNEL alpha + echo OPERATOR_SOURCE keystone-operator-index OPERATOR_SOURCE keystone-operator-index + echo OPERATOR_SOURCE_NAMESPACE openstack-operators OPERATOR_SOURCE_NAMESPACE openstack-operators + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/keystone/op catalogsource.operators.coreos.com/keystone-operator-index created operatorgroup.operators.coreos.com/openstack unchanged subscription.operators.coreos.com/keystone-operator created mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/operator /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/keystone/op /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr bash scripts/clone-operator-repo.sh Cloning repo: git clone -b main https://github.com/openstack-k8s-operators/keystone-operator.git keystone-operator Cloning into 'keystone-operator'... Running checkout: git checkout 8677d368dd17 Note: switching to '8677d368dd17'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 8677d36 Merge pull request #646 from dprince/operator_sdk_1.41.1 cp /home/zuul/ci-framework-data/artifacts/manifests/operator/keystone-operator/config/samples/keystone_v1beta1_keystoneapi.yaml /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr bash scripts/gen-service-kustomize.sh +++ dirname scripts/gen-service-kustomize.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + . /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts/common.sh --source-only ++ set -e + '[' -z glance-kuttl-tests ']' + '[' -z KeystoneAPI ']' + '[' -z osp-secret ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr ']' + '[' -n '' ']' + REPLACEMENTS= + IMAGE=unused + IMAGE_PATH=containerImage + STORAGE_REQUEST=10G + INTERFACE_MTU=1500 + VLAN_START=20 + VLAN_STEP=1 + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr ']' + pushd /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr ~/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr ~/src/github.com/openstack-k8s-operators/install_yamls + cat + [[ KeystoneAPI == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + IFS=, + read -ra IMAGES + IFS=, + read -ra IMAGE_PATHS + '[' 1 '!=' 1 ']' + (( i=0 )) + (( i < 1 )) + SPEC_PATH=containerImage + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 1 )) + '[' -n '' ']' + '[' KeystoneAPI == OpenStackControlPlane ']' + '[' KeystoneAPI == Galera ']' + '[' KeystoneAPI == NetConfig ']' + '[' -n '' ']' + [[ KeystoneAPI == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + [[ KeystoneAPI == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + '[' -n '' ']' + kustomization_add_resources + echo merge config dir merge config dir ++ find . -type f -name '*.yaml' ++ grep -v kustomization + yamls=./keystone_v1beta1_keystoneapi.yaml + for y in ${yamls[@]} + kustomize edit add resource ./keystone_v1beta1_keystoneapi.yaml + popd ~/src/github.com/openstack-k8s-operators/install_yamls make wait make[1]: Entering directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' error: the server doesn't have a resource type "openstackversion" bash scripts/operator-wait.sh + TIMEOUT=500s +++ dirname scripts/operator-wait.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq ']' + pushd /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls + timeout 500s bash -c 'until [ "$(bash ./get-operator-status.sh)" == "Succeeded" ]; do sleep 5; done' + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "keystone-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "keystone-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "keystone-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "keystone-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "keystone-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "keystone-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "keystone-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z keystone ']' + '[' keystone = rabbitmq-cluster ']' + DEPL_NAME=keystone-operator-controller-manager ++ jq -e .status.availableReplicas ++ oc get -n openstack-operators deployment keystone-operator-controller-manager -o json + REPLICAS=1 + '[' 1 '!=' 1 ']' + echo Succeeded + exit 0 + rc=0 + popd ~/src/github.com/openstack-k8s-operators/install_yamls + exit 0 make[1]: Leaving directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' bash scripts/operator-deploy-resources.sh + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr ']' + NEXT_WAIT_TIME=0 + '[' 0 -eq 15 ']' + oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/keystone/cr + oc apply -f - keystoneapi.keystone.openstack.org/keystone created + '[' 0 -lt 15 ']' bash scripts/gen-olm.sh + '[' -z openstack-operators ']' + '[' -z horizon ']' + '[' -z quay.io/openstack-k8s-operators/horizon-operator-index:latest ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/horizon/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/horizon/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/horizon/op + OPERATOR_CHANNEL=alpha + OPERATOR_SOURCE=horizon-operator-index + OPERATOR_SOURCE_NAMESPACE=openstack-operators + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/horizon/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/horizon/op + echo OPERATOR_CHANNEL alpha OPERATOR_CHANNEL alpha + echo OPERATOR_SOURCE horizon-operator-index OPERATOR_SOURCE horizon-operator-index + echo OPERATOR_SOURCE_NAMESPACE openstack-operators OPERATOR_SOURCE_NAMESPACE openstack-operators + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/horizon/op catalogsource.operators.coreos.com/horizon-operator-index created operatorgroup.operators.coreos.com/openstack unchanged subscription.operators.coreos.com/horizon-operator created bash scripts/gen-olm.sh + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' -z quay.io/openstack-k8s-operators/swift-operator-index:latest ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/swift/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/swift/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/swift/op + OPERATOR_CHANNEL=alpha + OPERATOR_SOURCE=swift-operator-index + OPERATOR_SOURCE_NAMESPACE=openstack-operators + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/swift/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/swift/op + echo OPERATOR_CHANNEL alpha OPERATOR_CHANNEL alpha + echo OPERATOR_SOURCE swift-operator-index OPERATOR_SOURCE swift-operator-index + echo OPERATOR_SOURCE_NAMESPACE openstack-operators OPERATOR_SOURCE_NAMESPACE openstack-operators + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/swift/op catalogsource.operators.coreos.com/swift-operator-index created operatorgroup.operators.coreos.com/openstack unchanged subscription.operators.coreos.com/swift-operator created mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/operator /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/swift/op /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr bash scripts/clone-operator-repo.sh Cloning repo: git clone -b main https://github.com/openstack-k8s-operators/swift-operator.git swift-operator Cloning into 'swift-operator'... Running checkout: git checkout d8f4061a919b Note: switching to 'd8f4061a919b'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at d8f4061 Merge pull request #415 from stuggi/operator_sdk_1.41.1 cp /home/zuul/ci-framework-data/artifacts/manifests/operator/swift-operator/config/samples/swift_v1beta1_swift.yaml /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr bash scripts/gen-service-kustomize.sh +++ dirname scripts/gen-service-kustomize.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + . /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts/common.sh --source-only ++ set -e + '[' -z glance-kuttl-tests ']' + '[' -z Swift ']' + '[' -z osp-secret ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr ']' + '[' -n '' ']' + REPLACEMENTS= + IMAGE=unused + IMAGE_PATH=containerImage + STORAGE_REQUEST=10G + INTERFACE_MTU=1500 + VLAN_START=20 + VLAN_STEP=1 + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr ']' + pushd /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr ~/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr ~/src/github.com/openstack-k8s-operators/install_yamls + cat + [[ Swift == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + IFS=, + read -ra IMAGES + IFS=, + read -ra IMAGE_PATHS + '[' 1 '!=' 1 ']' + (( i=0 )) + (( i < 1 )) + SPEC_PATH=containerImage + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 1 )) + '[' -n '' ']' + '[' Swift == OpenStackControlPlane ']' + '[' Swift == Galera ']' + '[' Swift == NetConfig ']' + '[' -n '' ']' + [[ Swift == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + [[ Swift == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + '[' -n '' ']' + kustomization_add_resources + echo merge config dir merge config dir ++ find . -type f -name '*.yaml' ++ grep -v kustomization + yamls=./swift_v1beta1_swift.yaml + for y in ${yamls[@]} + kustomize edit add resource ./swift_v1beta1_swift.yaml + popd ~/src/github.com/openstack-k8s-operators/install_yamls make wait make[1]: Entering directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' error: the server doesn't have a resource type "openstackversion" bash scripts/operator-wait.sh + TIMEOUT=500s +++ dirname scripts/operator-wait.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq ']' + pushd /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls + timeout 500s bash -c 'until [ "$(bash ./get-operator-status.sh)" == "Succeeded" ]; do sleep 5; done' + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "swift-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ jq -e .status.availableReplicas ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z swift ']' + '[' swift = rabbitmq-cluster ']' + DEPL_NAME=swift-operator-controller-manager ++ oc get -n openstack-operators deployment swift-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=1 + '[' 1 '!=' 1 ']' + echo Succeeded + exit 0 + rc=0 + popd ~/src/github.com/openstack-k8s-operators/install_yamls + exit 0 make[1]: Leaving directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' oc kustomize /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/swift/cr | oc apply -f - swift.swift.openstack.org/swift created bash scripts/gen-olm.sh + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' -z 38.102.83.128:5001/openstack-k8s-operators/glance-operator-index:598f4c467601f2d4b134a32d470a40c7ff72d22a ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/glance/op ']' + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/glance/op ']' + mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/glance/op + OPERATOR_CHANNEL=alpha + OPERATOR_SOURCE=glance-operator-index + OPERATOR_SOURCE_NAMESPACE=openstack-operators + echo OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/glance/op OPERATOR_DIR /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/glance/op + echo OPERATOR_CHANNEL alpha OPERATOR_CHANNEL alpha + echo OPERATOR_SOURCE glance-operator-index OPERATOR_SOURCE glance-operator-index + echo OPERATOR_SOURCE_NAMESPACE openstack-operators OPERATOR_SOURCE_NAMESPACE openstack-operators + cat + cat + cat oc apply -f /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/glance/op catalogsource.operators.coreos.com/glance-operator-index created operatorgroup.operators.coreos.com/openstack unchanged subscription.operators.coreos.com/glance-operator created mkdir -p /home/zuul/ci-framework-data/artifacts/manifests/operator /home/zuul/ci-framework-data/artifacts/manifests/openstack-operators/glance/op /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr bash scripts/clone-operator-repo.sh Cloning repo: git clone /home/zuul/src/github.com/openstack-k8s-operators/glance-operator glance-operator Cloning into 'glance-operator'... done. cp /home/zuul/ci-framework-data/artifacts/manifests/operator/glance-operator/config/samples/glance_v1beta1_glance.yaml /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr bash scripts/gen-service-kustomize.sh +++ dirname scripts/gen-service-kustomize.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + . /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts/common.sh --source-only ++ set -e + '[' -z glance-kuttl-tests ']' + '[' -z Glance ']' + '[' -z osp-secret ']' + '[' -z /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr ']' + '[' -n '' ']' + REPLACEMENTS= + IMAGE=unused,unused,unused + IMAGE_PATH=containerImage,glanceAPIInternal/containerImage,glanceAPIExternal/containerImage + STORAGE_REQUEST=10G + INTERFACE_MTU=1500 + VLAN_START=20 + VLAN_STEP=1 + '[' '!' -d /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr ']' + pushd /home/zuul/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr ~/ci-framework-data/artifacts/manifests/glance-kuttl-tests/glance/cr ~/src/github.com/openstack-k8s-operators/install_yamls + cat + [[ Glance == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + IFS=, + read -ra IMAGES + IFS=, + read -ra IMAGE_PATHS + '[' 3 '!=' 3 ']' + (( i=0 )) + (( i < 3 )) + SPEC_PATH=containerImage + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 3 )) + SPEC_PATH=glanceAPIInternal/containerImage + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 3 )) + SPEC_PATH=glanceAPIExternal/containerImage + SPEC_VALUE=unused + '[' unused '!=' unused ']' + (( i++ )) + (( i < 3 )) + '[' -n '' ']' + '[' Glance == OpenStackControlPlane ']' + '[' Glance == Galera ']' + '[' Glance == NetConfig ']' + '[' -n '' ']' + [[ Glance == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + [[ Glance == \O\p\e\n\S\t\a\c\k\C\o\n\t\r\o\l\P\l\a\n\e ]] + '[' -n '' ']' + kustomization_add_resources + echo merge config dir merge config dir ++ grep -v kustomization ++ find . -type f -name '*.yaml' + yamls=./glance_v1beta1_glance.yaml + for y in ${yamls[@]} + kustomize edit add resource ./glance_v1beta1_glance.yaml + popd ~/src/github.com/openstack-k8s-operators/install_yamls make wait make[1]: Entering directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' error: the server doesn't have a resource type "openstackversion" bash scripts/operator-wait.sh + TIMEOUT=500s +++ dirname scripts/operator-wait.sh ++ cd scripts ++ pwd -P + SCRIPTPATH=/home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq ']' + pushd /home/zuul/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls/scripts ~/src/github.com/openstack-k8s-operators/install_yamls + timeout 500s bash -c 'until [ "$(bash ./get-operator-status.sh)" == "Succeeded" ]; do sleep 5; done' + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "glance-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "glance-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "glance-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "glance-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "glance-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas Error from server (NotFound): deployments.apps "glance-operator-controller-manager" not found + REPLICAS= + '[' '' '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=null + '[' null '!=' 1 ']' + exit 1 + '[' -z openstack-operators ']' + '[' -z glance ']' + '[' glance = rabbitmq-cluster ']' + DEPL_NAME=glance-operator-controller-manager ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o json ++ jq -e .status.availableReplicas + REPLICAS=1 + '[' 1 '!=' 1 ']' + echo Succeeded + exit 0 + rc=0 + popd ~/src/github.com/openstack-k8s-operators/install_yamls + exit 0 make[1]: Leaving directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' make glance_kuttl_run make[1]: Entering directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' error: the server doesn't have a resource type "openstackversion" GLANCE_KUTTL_DIR=/home/zuul/ci-framework-data/artifacts/manifests/operator/glance-operator/test/kuttl/tests kubectl-kuttl test --config /home/zuul/ci-framework-data/artifacts/manifests/operator/glance-operator/kuttl-test.yaml /home/zuul/ci-framework-data/artifacts/manifests/operator/glance-operator/test/kuttl/tests --namespace glance-kuttl-tests 2025/11/26 17:11:07 kutt-test config testdirs is overridden with args: [ /home/zuul/ci-framework-data/artifacts/manifests/operator/glance-operator/test/kuttl/tests ] === RUN kuttl harness.go:463: starting setup harness.go:255: running tests using configured kubeconfig. harness.go:278: Successful connection to cluster at: https://api.crc.testing:6443 harness.go:363: running tests harness.go:75: going to run test suite with timeout of 240 seconds for each step harness.go:375: testsuite: /home/zuul/ci-framework-data/artifacts/manifests/operator/glance-operator/test/kuttl/tests has 7 tests === RUN kuttl/harness === RUN kuttl/harness/common === PAUSE kuttl/harness/common === RUN kuttl/harness/glance_dist_image_import === PAUSE kuttl/harness/glance_dist_image_import === RUN kuttl/harness/glance_image_cache === PAUSE kuttl/harness/glance_image_cache === RUN kuttl/harness/glance_single === PAUSE kuttl/harness/glance_single === RUN kuttl/harness/glance_single_tls === PAUSE kuttl/harness/glance_single_tls === RUN kuttl/harness/glance_split === PAUSE kuttl/harness/glance_split === RUN kuttl/harness/glance_split_proxypass === PAUSE kuttl/harness/glance_split_proxypass === CONT kuttl/harness/common logger.go:42: 17:11:07 | common | Ignoring cleanup-glance.yaml as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:11:07 | common | Skipping creation of user-supplied namespace: glance-kuttl-tests logger.go:42: 17:11:07 | common | skipping kubernetes event logging === CONT kuttl/harness/glance_single_tls logger.go:42: 17:11:07 | glance_single_tls | Skipping creation of user-supplied namespace: glance-kuttl-tests logger.go:42: 17:11:07 | glance_single_tls/0-tls_ca_bundle | starting test step 0-tls_ca_bundle logger.go:42: 17:11:07 | glance_single_tls/0-tls_ca_bundle | Secret:gl**********le created logger.go:42: 17:11:07 | glance_single_tls/0-tls_ca_bundle | Secret:gl**********vc created logger.go:42: 17:11:07 | glance_single_tls/0-tls_ca_bundle | Secret:gl**********vc created logger.go:42: 17:11:07 | glance_single_tls/0-tls_ca_bundle | test step completed 0-tls_ca_bundle logger.go:42: 17:11:07 | glance_single_tls/1-deploy_glance | starting test step 1-deploy_glance logger.go:42: 17:11:07 | glance_single_tls/1-deploy_glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/single_tls | oc apply -n $NAMESPACE -f - ] logger.go:42: 17:11:07 | glance_single_tls/1-deploy_glance | glance.glance.openstack.org/glance created logger.go:42: 17:11:07 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:08 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:09 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:09 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:10 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:10 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:11 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:11 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:12 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:12 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:13 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:13 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:14 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:14 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:16 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:16 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:17 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:17 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:18 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:18 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:19 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:19 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:20 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:20 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:21 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:21 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:23 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:23 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:24 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:24 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:25 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:25 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:26 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:26 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:27 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:27 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:28 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:29 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:30 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:30 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:31 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:31 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:32 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:32 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:33 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:33 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:34 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:34 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:35 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:36 | glance_single_tls/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:11:37 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:38 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:39 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:40 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:41 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:42 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:44 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:45 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:46 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:47 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:48 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:50 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:51 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:52 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:53 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:54 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:55 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:57 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:58 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:11:59 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:00 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:01 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:02 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:04 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:05 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:06 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:07 | glance_single_tls/1-deploy_glance | running command: [sh -c template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="https:\/\/glance-default-internal.$NAMESPACE.*:https:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:07 | glance_single_tls/1-deploy_glance | test step completed 1-deploy_glance logger.go:42: 17:12:07 | glance_single_tls/2-cleanup-glance | starting test step 2-cleanup-glance logger.go:42: 17:12:07 | glance_single_tls/2-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize ../../../../config/samples/layout/single | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:12:08 | glance_single_tls/2-cleanup-glance | glance.glance.openstack.org "glance" deleted logger.go:42: 17:12:08 | glance_single_tls/2-cleanup-glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:12:08 | glance_single_tls/2-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize --load-restrictor LoadRestrictionsNone ../../../../config/samples/openstackclient | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:12:08 | glance_single_tls/2-cleanup-glance | running command: [sh -c oc -n $NAMESPACE get pvc -l service=glance -o custom-columns=NAME:.metadata.name --no-headers | xargs -n 1 oc -n $NAMESPACE delete pvc; for pv in $(oc -n $NAMESPACE get pv | grep "Released.*glance" | cut -f 1 -d " "); do oc -n $NAMESPACE patch pv $pv -p '{"spec":{"claimRef": null}}'; done ] logger.go:42: 17:12:08 | glance_single_tls/2-cleanup-glance | persistentvolumeclaim "glance-glance-default-single-0" deleted logger.go:42: 17:12:15 | glance_single_tls/2-cleanup-glance | persistentvolume/local-storage04-crc patched logger.go:42: 17:12:15 | glance_single_tls/2-cleanup-glance | test step completed 2-cleanup-glance logger.go:42: 17:12:15 | glance_single_tls | skipping kubernetes event logging === CONT kuttl/harness/glance_split_proxypass logger.go:42: 17:12:15 | glance_split_proxypass | Skipping creation of user-supplied namespace: glance-kuttl-tests logger.go:42: 17:12:15 | glance_split_proxypass/1-deploy_glance | starting test step 1-deploy_glance logger.go:42: 17:12:15 | glance_split_proxypass/1-deploy_glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc apply -n $NAMESPACE -f - oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/metadata/annotations/glance.openstack.org~1wsgi", "value":"false"}]' ] logger.go:42: 17:12:15 | glance_split_proxypass/1-deploy_glance | glance.glance.openstack.org/glance created logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | glance.glance.openstack.org/glance patched logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:16Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"39960","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:16Z]] name:glance namespace:glance-kuttl-tests resourceVersion:39960 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:16 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:16Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"39960","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:16Z]] name:glance namespace:glance-kuttl-tests resourceVersion:39960 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:17 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:16Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"39960","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:16Z]] name:glance namespace:glance-kuttl-tests resourceVersion:39960 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:18 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:16Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"39960","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:16Z]] name:glance namespace:glance-kuttl-tests resourceVersion:39960 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:19 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:20 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:20 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:20 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:20 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:16Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"39960","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:16Z]] name:glance namespace:glance-kuttl-tests resourceVersion:39960 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:21 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:21Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40026","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:21Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:21Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40026 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:21Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:22 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:21Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40026","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:21Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:21Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40026 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:21Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:23 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:21Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40026","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:21Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:21Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40026 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:21Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:24 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:21Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40026","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:21Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:21Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40026 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:21Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:15Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:25 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:26 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:26 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:26 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:26 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:26Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40077","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:26Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40077 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:27 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:26Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40077","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:26Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40077 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:12:28 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40109","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:29Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"f092f1c26cef4b65b00e16c0f8ce6377"}} logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40109 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:29Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:f092f1c26cef4b65b00e16c0f8ce6377]]' logger.go:42: 17:12:29 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40109","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:29Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"f092f1c26cef4b65b00e16c0f8ce6377"}} logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40109 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:29Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:f092f1c26cef4b65b00e16c0f8ce6377]]' logger.go:42: 17:12:30 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40109","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:29Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"f092f1c26cef4b65b00e16c0f8ce6377"}} logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40109 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:29Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:f092f1c26cef4b65b00e16c0f8ce6377]]' logger.go:42: 17:12:31 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | template was: logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | raw data was: logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"false","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:12:15Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:12:15Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{"f:glance.openstack.org/wsgi":{}}}},"manager":"kubectl-patch","operation":"Update","time":"2025-11-26T17:12:16Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:12:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"40109","uid":"7c19bfa1-bec1-4e2f-bd80-478c5c174628"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:12:15Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:12:29Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:12:16Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:12:26Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"f092f1c26cef4b65b00e16c0f8ce6377"}} logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | object given to template engine was: logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:false kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | ] creationTimestamp:2025-11-26T17:12:15Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:12:15Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[f:glance.openstack.org/wsgi:map[]]]] manager:kubectl-patch operation:Update time:2025-11-26T17:12:16Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:12:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:40109 uid:7c19bfa1-bec1-4e2f-bd80-478c5c174628] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | [glance_store] logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | default_backend = default_backend logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | [default_backend] logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:12:15Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:12:15Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:12:29Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:12:16Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:12:16Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:12:26Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:f092f1c26cef4b65b00e16c0f8ce6377]]' logger.go:42: 17:12:32 | glance_split_proxypass/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:34 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:35 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:36 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:36 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:36 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:36 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:36 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:36 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:37 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:38 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:39 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:40 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:41 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:41 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:41 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:41 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:42 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:43 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:44 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:44 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:44 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:44 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:45 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:46 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:47 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:47 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:47 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:47 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:48 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:49 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:51 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + matches= logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + NAME=API logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + case $NAME in logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | + exit 0 logger.go:42: 17:12:52 | glance_split_proxypass/1-deploy_glance | test step completed 1-deploy_glance logger.go:42: 17:12:52 | glance_split_proxypass/2-scale-glanceapis | starting test step 2-scale-glanceapis logger.go:42: 17:12:52 | glance_split_proxypass/2-scale-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":3}]' ] logger.go:42: 17:12:53 | glance_split_proxypass/2-scale-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:13:06 | glance_split_proxypass/2-scale-glanceapis | test step completed 2-scale-glanceapis logger.go:42: 17:13:06 | glance_split_proxypass/3-scale-down-glanceapis | starting test step 3-scale-down-glanceapis logger.go:42: 17:13:06 | glance_split_proxypass/3-scale-down-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":1}]' ] logger.go:42: 17:13:06 | glance_split_proxypass/3-scale-down-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:13:10 | glance_split_proxypass/3-scale-down-glanceapis | test step completed 3-scale-down-glanceapis logger.go:42: 17:13:10 | glance_split_proxypass/4-scale-down-zero-glanceapis | starting test step 4-scale-down-zero-glanceapis logger.go:42: 17:13:10 | glance_split_proxypass/4-scale-down-zero-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":0}]' ] logger.go:42: 17:13:10 | glance_split_proxypass/4-scale-down-zero-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:13:14 | glance_split_proxypass/4-scale-down-zero-glanceapis | test step completed 4-scale-down-zero-glanceapis logger.go:42: 17:13:14 | glance_split_proxypass/5-cleanup-glance | starting test step 5-cleanup-glance logger.go:42: 17:13:14 | glance_split_proxypass/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize ../../../../config/samples/layout/single | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:13:14 | glance_split_proxypass/5-cleanup-glance | glance.glance.openstack.org "glance" deleted logger.go:42: 17:13:14 | glance_split_proxypass/5-cleanup-glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:13:14 | glance_split_proxypass/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize --load-restrictor LoadRestrictionsNone ../../../../config/samples/openstackclient | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:13:15 | glance_split_proxypass/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE get pvc -l service=glance -o custom-columns=NAME:.metadata.name --no-headers | xargs -n 1 oc -n $NAMESPACE delete pvc; for pv in $(oc -n $NAMESPACE get pv | grep "Released.*glance" | cut -f 1 -d " "); do oc -n $NAMESPACE patch pv $pv -p '{"spec":{"claimRef": null}}'; done ] logger.go:42: 17:13:15 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-0" deleted logger.go:42: 17:13:15 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-1" deleted logger.go:42: 17:13:15 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-2" deleted logger.go:42: 17:13:16 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-0" deleted logger.go:42: 17:13:16 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-1" deleted logger.go:42: 17:13:16 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-2" deleted logger.go:42: 17:13:16 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-0" deleted logger.go:42: 17:13:17 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-1" deleted logger.go:42: 17:13:17 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-2" deleted logger.go:42: 17:13:17 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-0" deleted logger.go:42: 17:13:17 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-1" deleted logger.go:42: 17:13:18 | glance_split_proxypass/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-2" deleted logger.go:42: 17:13:18 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage03-crc patched logger.go:42: 17:13:18 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage04-crc patched logger.go:42: 17:13:18 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage06-crc patched logger.go:42: 17:13:18 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage07-crc patched logger.go:42: 17:13:19 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage09-crc patched logger.go:42: 17:13:19 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage13-crc patched logger.go:42: 17:13:19 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage15-crc patched logger.go:42: 17:13:19 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage16-crc patched logger.go:42: 17:13:19 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage17-crc patched logger.go:42: 17:13:19 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage18-crc patched logger.go:42: 17:13:19 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage19-crc patched logger.go:42: 17:13:20 | glance_split_proxypass/5-cleanup-glance | persistentvolume/local-storage20-crc patched logger.go:42: 17:13:20 | glance_split_proxypass/5-cleanup-glance | test step completed 5-cleanup-glance logger.go:42: 17:13:20 | glance_split_proxypass | skipping kubernetes event logging === CONT kuttl/harness/glance_split logger.go:42: 17:13:20 | glance_split | Skipping creation of user-supplied namespace: glance-kuttl-tests logger.go:42: 17:13:20 | glance_split/1-deploy_glance | starting test step 1-deploy_glance logger.go:42: 17:13:20 | glance_split/1-deploy_glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc apply -n $NAMESPACE -f - ] logger.go:42: 17:13:20 | glance_split/1-deploy_glance | glance.glance.openstack.org/glance created logger.go:42: 17:13:20 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:20 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:20 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:20 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:20 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:20 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:20 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:20 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:20 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:20 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:20Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41205","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DB create not started","reason":"Init","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data not checked","reason":"Init","status":"Unknown","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached create not started","reason":"Init","status":"Unknown","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding not created","reason":"Init","status":"Unknown","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role not created","reason":"Init","status":"Unknown","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount not created","reason":"Init","status":"Unknown","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"observedGeneration":1}} logger.go:42: 17:13:20 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:20 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:20 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:20Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41205 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:20 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:20 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:20 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:20 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:20 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:20 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:20 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:20 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:20 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:20 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:20 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DB create not started reason:Init status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data not checked reason:Init status:Unknown type:InputReady] map[lastTransitionTime:2025-11-26T17:13:20Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached create not started reason:Init status:Unknown type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding not created reason:Init status:Unknown type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role not created reason:Init status:Unknown type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount not created reason:Init status:Unknown type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] observedGeneration:1]]' logger.go:42: 17:13:20 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:21 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:21 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:21 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:21 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:21 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:21 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:21 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:21 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:21 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:21 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:20Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41223","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:13:21 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:21 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:21 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:20Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41223 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:21 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:21 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:21 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:21 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:21 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:21 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:21 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:21 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:21 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:21 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:21 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:20Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:13:21 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:22 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:22 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:22 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:22 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:23 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:23 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:23 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:23 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:23 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:23 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:20Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41223","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:13:23 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:23 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:23 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:20Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41223 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:23 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:23 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:23 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:23 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:23 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:23 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:23 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:23 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:23 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:23 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:23 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:20Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:13:23 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:24 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:24 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:24 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:24 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:24 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:24 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:24 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:24 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:24 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:24 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:20Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41223","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:13:24 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:24 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:24 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:20Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41223 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:24 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:24 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:24 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:24 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:24 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:24 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:24 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:24 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:24 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:24 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:24 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:20Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:13:24 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:25 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:25 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:25 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:25 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:25 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:25 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:25 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:25 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:25 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:25 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:20Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41223","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:13:25 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:25 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:25 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:20Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41223 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:25 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:25 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:25 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:25 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:25 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:25 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:25 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:25 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:25 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:25 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:25 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:20Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:13:25 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:26 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:26 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:26 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:26 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:26 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:26 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:26 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:26 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:26 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:26 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:26Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41317","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:13:26 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:26 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:26 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:26Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41317 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:26 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:26 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:26 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:26 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:26 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:26 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:26 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:26 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:26 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:26 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:26 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:13:26 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:27 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:27 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:27 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:27 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:27 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:27 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:27 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:27 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:27 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:27 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:26Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41317","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:13:27 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:27 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:27 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:26Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41317 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:27 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:27 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:27 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:27 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:27 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:27 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:27 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:27 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:27 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:27 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:27 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:13:27 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:28 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:28 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:28 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:28 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:29 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:29 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:29 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:29 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:29 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:29 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:28Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41333","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:27Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"e4fd0c7bf8794c0382184e6627e3ef2c"}} logger.go:42: 17:13:29 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:29 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:29 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:28Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41333 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:29 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:29 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:29 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:29 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:29 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:29 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:29 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:29 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:29 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:29 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:29 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:27Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:e4fd0c7bf8794c0382184e6627e3ef2c]]' logger.go:42: 17:13:29 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:30 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:30 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:30 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:30 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:30 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:30 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:30 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:30 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:30 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:30 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:28Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41333","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:27Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"e4fd0c7bf8794c0382184e6627e3ef2c"}} logger.go:42: 17:13:30 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:30 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:30 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:28Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41333 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:30 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:30 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:30 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:30 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:30 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:30 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:30 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:30 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:30 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:30 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:30 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:27Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:e4fd0c7bf8794c0382184e6627e3ef2c]]' logger.go:42: 17:13:30 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:31 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:31 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:31 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:31 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:31 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:31 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:31 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:31 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:31 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:31 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:28Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41333","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:27Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"e4fd0c7bf8794c0382184e6627e3ef2c"}} logger.go:42: 17:13:31 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:31 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:31 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:28Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41333 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:31 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:31 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:31 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:31 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:31 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:31 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:31 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:31 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:31 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:31 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:31 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:27Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:e4fd0c7bf8794c0382184e6627e3ef2c]]' logger.go:42: 17:13:31 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:32 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:32 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:32 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:32 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:32 | glance_split/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:13:32 | glance_split/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:13:32 | glance_split/1-deploy_glance | template was: logger.go:42: 17:13:32 | glance_split/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:13:32 | glance_split/1-deploy_glance | raw data was: logger.go:42: 17:13:32 | glance_split/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\nenabled_backends = default_backend:swift\\n[glance_store]\\ndefault_backend = default_backend\\n[default_backend]\\nswift_store_create_container_on_put = True\\nswift_store_auth_version = 3\\nswift_store_auth_address = {{ .KeystoneInternalURL }}\\nswift_store_endpoint_type = internalURL\\nswift_store_user = service:glance\\nswift_store_key = {{ .ServicePassword }}\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"replicas\":1}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:13:20Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:13:20Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{},"f:serviceID":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:13:28Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"41333","uid":"5a2d3836-b1d6-46a7-a86c-d8bf901dd80f"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"split"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:13:26Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:13:27Z","message":"Setup complete","reason":"Ready","status":"True","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:13:20Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:13:25Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1,"serviceID":"e4fd0c7bf8794c0382184e6627e3ef2c"}} logger.go:42: 17:13:32 | glance_split/1-deploy_glance | object given to template engine was: logger.go:42: 17:13:32 | glance_split/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\nenabled_backends = default_backend:swift\n[glance_store]\ndefault_backend = default_backend\n[default_backend]\nswift_store_create_container_on_put = True\nswift_store_auth_version = 3\nswift_store_auth_address = {{ .KeystoneInternalURL }}\nswift_store_endpoint_type = internalURL\nswift_store_user = service:glance\nswift_store_key = {{ .ServicePassword }}\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"replicas":1}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:13:32 | glance_split/1-deploy_glance | ] creationTimestamp:2025-11-26T17:13:20Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:13:20Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[] f:serviceID:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:13:28Z]] name:glance namespace:glance-kuttl-tests resourceVersion:41333 uid:5a2d3836-b1d6-46a7-a86c-d8bf901dd80f] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:13:32 | glance_split/1-deploy_glance | enabled_backends = default_backend:swift logger.go:42: 17:13:32 | glance_split/1-deploy_glance | [glance_store] logger.go:42: 17:13:32 | glance_split/1-deploy_glance | default_backend = default_backend logger.go:42: 17:13:32 | glance_split/1-deploy_glance | [default_backend] logger.go:42: 17:13:32 | glance_split/1-deploy_glance | swift_store_create_container_on_put = True logger.go:42: 17:13:32 | glance_split/1-deploy_glance | swift_store_auth_version = 3 logger.go:42: 17:13:32 | glance_split/1-deploy_glance | swift_store_auth_address = {{ .KeystoneInternalURL }} logger.go:42: 17:13:32 | glance_split/1-deploy_glance | swift_store_endpoint_type = internalURL logger.go:42: 17:13:32 | glance_split/1-deploy_glance | swift_store_user = service:glance logger.go:42: 17:13:32 | glance_split/1-deploy_glance | swift_store_key = {{ .ServicePassword }} logger.go:42: 17:13:32 | glance_split/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:split]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:13:20Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:13:26Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:13:27Z message:Setup complete reason:Ready status:True type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:13:20Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:13:20Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:13:25Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1 serviceID:e4fd0c7bf8794c0382184e6627e3ef2c]]' logger.go:42: 17:13:32 | glance_split/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:13:33 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:33 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:33 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:33 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:33 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:33 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:33 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:33 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:33 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:33 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:33 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:33 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:33 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:34 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:34 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:34 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:34 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:34 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:34 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:34 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:34 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:35 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:35 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:35 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:35 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:35 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:36 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:36 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:36 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:36 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:36 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:36 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:36 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:36 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:36 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:36 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:36 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:36 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:36 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:37 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:37 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:37 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:37 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:37 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:37 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:37 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:37 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:38 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:38 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:38 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:38 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:38 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:39 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:39 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:39 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:39 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:39 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:39 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:39 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:39 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:39 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:39 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:39 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:39 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:39 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:40 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:40 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:40 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:40 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:40 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:40 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:40 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:40 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:41 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:41 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:41 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:41 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:41 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:42 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:42 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:42 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:42 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:42 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:42 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:42 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:42 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:42 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:42 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:42 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:42 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:42 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:43 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:43 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:43 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:43 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:43 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:43 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:43 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:43 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:44 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:44 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:44 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:44 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:44 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:45 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:45 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:45 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:45 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:45 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:45 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:45 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:45 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:45 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:45 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:45 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:45 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:45 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:46 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:46 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:46 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:46 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:46 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:46 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:46 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:46 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:47 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:47 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:47 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:47 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:47 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:48 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:48 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:48 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:48 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:49 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:49 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:49 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:49 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:50 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:50 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:50 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:50 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:50 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:51 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:13:51 | glance_split/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:51 | glance_split/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:13:51 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + matches= logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:52 | glance_split/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:52 | glance_split/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + NAME=API logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + case $NAME in logger.go:42: 17:13:52 | glance_split/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:13:52 | glance_split/1-deploy_glance | + exit 0 logger.go:42: 17:13:52 | glance_split/1-deploy_glance | test step completed 1-deploy_glance logger.go:42: 17:13:52 | glance_split/2-scale-glanceapis | starting test step 2-scale-glanceapis logger.go:42: 17:13:52 | glance_split/2-scale-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":3}]' ] logger.go:42: 17:13:52 | glance_split/2-scale-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:14:07 | glance_split/2-scale-glanceapis | test step completed 2-scale-glanceapis logger.go:42: 17:14:07 | glance_split/3-scale-down-glanceapis | starting test step 3-scale-down-glanceapis logger.go:42: 17:14:07 | glance_split/3-scale-down-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":1}]' ] logger.go:42: 17:14:08 | glance_split/3-scale-down-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:14:14 | glance_split/3-scale-down-glanceapis | test step completed 3-scale-down-glanceapis logger.go:42: 17:14:14 | glance_split/4-scale-down-zero-glanceapis | starting test step 4-scale-down-zero-glanceapis logger.go:42: 17:14:14 | glance_split/4-scale-down-zero-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":0}]' ] logger.go:42: 17:14:14 | glance_split/4-scale-down-zero-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:14:20 | glance_split/4-scale-down-zero-glanceapis | test step completed 4-scale-down-zero-glanceapis logger.go:42: 17:14:20 | glance_split/5-cleanup-glance | starting test step 5-cleanup-glance logger.go:42: 17:14:20 | glance_split/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize ../../../../config/samples/layout/single | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:14:20 | glance_split/5-cleanup-glance | glance.glance.openstack.org "glance" deleted logger.go:42: 17:14:20 | glance_split/5-cleanup-glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:14:20 | glance_split/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize --load-restrictor LoadRestrictionsNone ../../../../config/samples/openstackclient | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:14:20 | glance_split/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE get pvc -l service=glance -o custom-columns=NAME:.metadata.name --no-headers | xargs -n 1 oc -n $NAMESPACE delete pvc; for pv in $(oc -n $NAMESPACE get pv | grep "Released.*glance" | cut -f 1 -d " "); do oc -n $NAMESPACE patch pv $pv -p '{"spec":{"claimRef": null}}'; done ] logger.go:42: 17:14:21 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-0" deleted logger.go:42: 17:14:21 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-1" deleted logger.go:42: 17:14:21 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-2" deleted logger.go:42: 17:14:21 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-0" deleted logger.go:42: 17:14:22 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-1" deleted logger.go:42: 17:14:22 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-2" deleted logger.go:42: 17:14:22 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-0" deleted logger.go:42: 17:14:23 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-1" deleted logger.go:42: 17:14:23 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-2" deleted logger.go:42: 17:14:23 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-0" deleted logger.go:42: 17:14:23 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-1" deleted logger.go:42: 17:14:24 | glance_split/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-2" deleted logger.go:42: 17:14:24 | glance_split/5-cleanup-glance | persistentvolume/local-storage03-crc patched logger.go:42: 17:14:24 | glance_split/5-cleanup-glance | persistentvolume/local-storage04-crc patched logger.go:42: 17:14:24 | glance_split/5-cleanup-glance | persistentvolume/local-storage06-crc patched logger.go:42: 17:14:24 | glance_split/5-cleanup-glance | persistentvolume/local-storage07-crc patched logger.go:42: 17:14:25 | glance_split/5-cleanup-glance | persistentvolume/local-storage09-crc patched logger.go:42: 17:14:25 | glance_split/5-cleanup-glance | persistentvolume/local-storage11-crc patched logger.go:42: 17:14:25 | glance_split/5-cleanup-glance | persistentvolume/local-storage12-crc patched logger.go:42: 17:14:25 | glance_split/5-cleanup-glance | persistentvolume/local-storage13-crc patched logger.go:42: 17:14:25 | glance_split/5-cleanup-glance | persistentvolume/local-storage17-crc patched logger.go:42: 17:14:25 | glance_split/5-cleanup-glance | persistentvolume/local-storage18-crc patched logger.go:42: 17:14:25 | glance_split/5-cleanup-glance | persistentvolume/local-storage19-crc patched logger.go:42: 17:14:26 | glance_split/5-cleanup-glance | persistentvolume/local-storage20-crc patched logger.go:42: 17:14:26 | glance_split/5-cleanup-glance | test step completed 5-cleanup-glance logger.go:42: 17:14:26 | glance_split | skipping kubernetes event logging === CONT kuttl/harness/glance_image_cache logger.go:42: 17:14:26 | glance_image_cache | Skipping creation of user-supplied namespace: glance-kuttl-tests logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | starting test step 1-deploy_glance logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc apply -n $NAMESPACE -f - ] logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | glance.glance.openstack.org/glance created logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":2}]' ] logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | glance.glance.openstack.org/glance patched logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | running command: [sh -c oc -n $NAMESPACE kustomize --load-restrictor LoadRestrictionsNone ../../../../config/samples/openstackclient | oc -n $NAMESPACE apply -f - ] logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | configmap/openstack-scripts-9db6gc427h created logger.go:42: 17:14:26 | glance_image_cache/1-deploy_glance | pod/openstackclient created logger.go:42: 17:14:46 | glance_image_cache/1-deploy_glance | test step completed 1-deploy_glance logger.go:42: 17:14:46 | glance_image_cache/2-cache-image | starting test step 2-cache-image logger.go:42: 17:14:46 | glance_image_cache/2-cache-image | running command: [sh -c sleep 20; oc -n $NAMESPACE exec -it openstackclient --stdin=false -- /bin/sh -c "DOMAIN=glance-default-external-api.$NAMESPACE.svc REPLICA=glance-default-external-api- ./scripts/cache_and_delete_image.sh" ] logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + TIME=3 logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + CACHE_TIME=6 logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + DOMAIN=glance-default-external-api.glance-kuttl-tests.svc logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + REPLICA=glance-default-external-api- logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + IMAGE_NAME=myimage logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | ++ awk '/auth_url/ {print $2}' /etc/openstack/clouds.yaml logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + KEYSTONE=http://keystone-public.glance-kuttl-tests.svc:5000 logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + ADMIN_PWD=12345678 logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + ADMIN_USER=admin logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + glance='glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default ' logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + exec logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + echo This is a dodgy image logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + openstack image list -c ID -f value logger.go:42: 17:15:06 | glance_image_cache/2-cache-image | + xargs -n 1 openstack image delete logger.go:42: 17:15:15 | glance_image_cache/2-cache-image | usage: openstack image delete [-h] [ ...] logger.go:42: 17:15:15 | glance_image_cache/2-cache-image | openstack image delete: error: the following arguments are required: logger.go:42: 17:15:16 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-0.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:15:16 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:15:24 | glance_image_cache/2-cache-image | + CACHED_ID= logger.go:42: 17:15:24 | glance_image_cache/2-cache-image | + [[ '' != '' ]] logger.go:42: 17:15:24 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-1.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:15:24 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:15:25 | glance_image_cache/2-cache-image | Creating new image. logger.go:42: 17:15:25 | glance_image_cache/2-cache-image | + CACHED_ID= logger.go:42: 17:15:25 | glance_image_cache/2-cache-image | + [[ '' != '' ]] logger.go:42: 17:15:25 | glance_image_cache/2-cache-image | + echo 'Creating new image.' logger.go:42: 17:15:25 | glance_image_cache/2-cache-image | + glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --verbose image-create --disk-format qcow2 --container-format bare --name myimage --file myimage logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | +------------------+----------------------------------------------------------------------------------+ logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | Property | Value | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | +------------------+----------------------------------------------------------------------------------+ logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | checksum | 69bcebf29946998555945bfd562df6f0 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | container_format | bare | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | created_at | 2025-11-26T17:15:27Z | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | disk_format | qcow2 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | id | e48b445a-887d-4412-8e02-c0fa50a3cc83 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | min_disk | 0 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | min_ram | 0 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | name | myimage | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | os_hash_algo | sha512 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | os_hash_value | 756138eda333dfdd93b80d8bae18b447fbab34462db0cc57df732b81e51015961e815e04c09b42da | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | | 7de16058d0fc34812d6ecc3496bd7519c395202e88705ccc | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | os_hidden | False | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | owner | 4b3e9a8e3dac4255a97e1ad8291eef19 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | protected | False | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | size | 22 | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | status | active | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | stores | default_backend | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | tags | [] | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | updated_at | 2025-11-26T17:15:28Z | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | virtual_size | Not available | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | | visibility | shared | logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | +------------------+----------------------------------------------------------------------------------+ logger.go:42: 17:15:28 | glance_image_cache/2-cache-image | + sleep 3 logger.go:42: 17:15:31 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default image-list logger.go:42: 17:15:31 | glance_image_cache/2-cache-image | ++ awk -v img=myimage '$0 ~ img {print $2}' logger.go:42: 17:15:33 | glance_image_cache/2-cache-image | + ID=e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:33 | glance_image_cache/2-cache-image | + echo 'Image ID: e48b445a-887d-4412-8e02-c0fa50a3cc83' logger.go:42: 17:15:33 | glance_image_cache/2-cache-image | + sleep 3 logger.go:42: 17:15:33 | glance_image_cache/2-cache-image | Image ID: e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:36 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default image-show e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:36 | glance_image_cache/2-cache-image | ++ awk '/status/{print $4}' logger.go:42: 17:15:38 | glance_image_cache/2-cache-image | + STATE=active logger.go:42: 17:15:38 | glance_image_cache/2-cache-image | + echo 'Image Status => active' logger.go:42: 17:15:38 | glance_image_cache/2-cache-image | + [[ active != \a\c\t\i\v\e ]] logger.go:42: 17:15:38 | glance_image_cache/2-cache-image | + echo 'Caching image on replica 0' logger.go:42: 17:15:38 | glance_image_cache/2-cache-image | Image Status => active logger.go:42: 17:15:38 | glance_image_cache/2-cache-image | Caching image on replica 0 logger.go:42: 17:15:38 | glance_image_cache/2-cache-image | + glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-0.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-queue e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:39 | glance_image_cache/2-cache-image | + sleep 6 logger.go:42: 17:15:45 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-0.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:15:45 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | Cached image id on replica 0 => e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | Verifying image is not cached on replica 1 logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | + CACHED_ID=e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | + echo 'Cached image id on replica 0 => e48b445a-887d-4412-8e02-c0fa50a3cc83' logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | + [[ e48b445a-887d-4412-8e02-c0fa50a3cc83 != e48b445a-887d-4412-8e02-c0fa50a3cc83 ]] logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | + echo 'Verifying image is not cached on replica 1' logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-1.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:15:47 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:15:48 | glance_image_cache/2-cache-image | Cached image id on replica 1 => logger.go:42: 17:15:48 | glance_image_cache/2-cache-image | Caching image on replica 1 logger.go:42: 17:15:48 | glance_image_cache/2-cache-image | + CACHED_ID_1= logger.go:42: 17:15:48 | glance_image_cache/2-cache-image | + echo 'Cached image id on replica 1 => ' logger.go:42: 17:15:48 | glance_image_cache/2-cache-image | + [[ '' != '' ]] logger.go:42: 17:15:48 | glance_image_cache/2-cache-image | + echo 'Caching image on replica 1' logger.go:42: 17:15:48 | glance_image_cache/2-cache-image | + glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-1.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-queue e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:50 | glance_image_cache/2-cache-image | + sleep 6 logger.go:42: 17:15:56 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-1.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:15:56 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:15:57 | glance_image_cache/2-cache-image | Cached image id on replica 1 => e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:57 | glance_image_cache/2-cache-image | Deleting cached image from replica 0 logger.go:42: 17:15:57 | glance_image_cache/2-cache-image | + CACHED_ID_2=e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:57 | glance_image_cache/2-cache-image | + echo 'Cached image id on replica 1 => e48b445a-887d-4412-8e02-c0fa50a3cc83' logger.go:42: 17:15:57 | glance_image_cache/2-cache-image | + [[ e48b445a-887d-4412-8e02-c0fa50a3cc83 != e48b445a-887d-4412-8e02-c0fa50a3cc83 ]] logger.go:42: 17:15:57 | glance_image_cache/2-cache-image | + echo 'Deleting cached image from replica 0' logger.go:42: 17:15:57 | glance_image_cache/2-cache-image | + glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-0.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-delete e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:15:59 | glance_image_cache/2-cache-image | + echo 'Verifying image is still cached on replica 1' logger.go:42: 17:15:59 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:15:59 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-1.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:15:59 | glance_image_cache/2-cache-image | Verifying image is still cached on replica 1 logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | Cached image id on replica 1 => e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | Verify Cached image is deleted from replica 0 logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | + CACHED_ID_3=e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | + echo 'Cached image id on replica 1 => e48b445a-887d-4412-8e02-c0fa50a3cc83' logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | + [[ e48b445a-887d-4412-8e02-c0fa50a3cc83 != e48b445a-887d-4412-8e02-c0fa50a3cc83 ]] logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | + echo 'Verify Cached image is deleted from replica 0' logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-0.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:16:00 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:16:02 | glance_image_cache/2-cache-image | Deleting image e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:16:02 | glance_image_cache/2-cache-image | + CACHED_ID_4= logger.go:42: 17:16:02 | glance_image_cache/2-cache-image | + [[ '' != '' ]] logger.go:42: 17:16:02 | glance_image_cache/2-cache-image | + echo 'Deleting image e48b445a-887d-4412-8e02-c0fa50a3cc83' logger.go:42: 17:16:02 | glance_image_cache/2-cache-image | + glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default image-delete e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:16:04 | glance_image_cache/2-cache-image | ++ glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-1.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-list logger.go:42: 17:16:04 | glance_image_cache/2-cache-image | ++ awk -v state=cached '$0 ~ state {print $2}' logger.go:42: 17:16:06 | glance_image_cache/2-cache-image | Deleting cached image from replica 1 logger.go:42: 17:16:06 | glance_image_cache/2-cache-image | + CACHED_ID_5=e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:16:06 | glance_image_cache/2-cache-image | + [[ e48b445a-887d-4412-8e02-c0fa50a3cc83 != '' ]] logger.go:42: 17:16:06 | glance_image_cache/2-cache-image | + echo 'Deleting cached image from replica 1' logger.go:42: 17:16:06 | glance_image_cache/2-cache-image | + glance --os-auth-url http://keystone-public.glance-kuttl-tests.svc:5000 --os-project-name admin --os-username admin --os-password 12345678 --os-user-domain-name default --os-project-domain-name default --os-image-url http://glance-default-external-api-1.glance-default-external-api.glance-kuttl-tests.svc:9292 cache-delete e48b445a-887d-4412-8e02-c0fa50a3cc83 logger.go:42: 17:16:07 | glance_image_cache/2-cache-image | + echo 'Caching tests executed successfully!!!' logger.go:42: 17:16:07 | glance_image_cache/2-cache-image | + exit 0 logger.go:42: 17:16:07 | glance_image_cache/2-cache-image | Caching tests executed successfully!!! logger.go:42: 17:16:07 | glance_image_cache/2-cache-image | test step completed 2-cache-image logger.go:42: 17:16:07 | glance_image_cache/3-scale-down-glanceapis | starting test step 3-scale-down-glanceapis logger.go:42: 17:16:07 | glance_image_cache/3-scale-down-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":1}]' ] logger.go:42: 17:16:07 | glance_image_cache/3-scale-down-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:16:08 | glance_image_cache/3-scale-down-glanceapis | test step completed 3-scale-down-glanceapis logger.go:42: 17:16:08 | glance_image_cache/4-cleanup-glance | starting test step 4-cleanup-glance logger.go:42: 17:16:08 | glance_image_cache/4-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize ../../../../config/samples/layout/single | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:16:09 | glance_image_cache/4-cleanup-glance | glance.glance.openstack.org "glance" deleted logger.go:42: 17:16:09 | glance_image_cache/4-cleanup-glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:16:09 | glance_image_cache/4-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize --load-restrictor LoadRestrictionsNone ../../../../config/samples/openstackclient | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:16:09 | glance_image_cache/4-cleanup-glance | configmap "openstack-scripts-9db6gc427h" deleted logger.go:42: 17:16:09 | glance_image_cache/4-cleanup-glance | pod "openstackclient" deleted logger.go:42: 17:16:11 | glance_image_cache/4-cleanup-glance | running command: [sh -c oc -n $NAMESPACE get pvc -l service=glance -o custom-columns=NAME:.metadata.name --no-headers | xargs -n 1 oc -n $NAMESPACE delete pvc; for pv in $(oc -n $NAMESPACE get pv | grep "Released.*glance" | cut -f 1 -d " "); do oc -n $NAMESPACE patch pv $pv -p '{"spec":{"claimRef": null}}'; done ] logger.go:42: 17:16:11 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-0" deleted logger.go:42: 17:16:13 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-external-api-1" deleted logger.go:42: 17:16:14 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-0" deleted logger.go:42: 17:16:14 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-internal-api-1" deleted logger.go:42: 17:16:14 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-0" deleted logger.go:42: 17:16:14 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-glance-default-external-api-1" deleted logger.go:42: 17:16:15 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-0" deleted logger.go:42: 17:16:15 | glance_image_cache/4-cleanup-glance | persistentvolumeclaim "glance-glance-default-internal-api-1" deleted logger.go:42: 17:16:15 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage03-crc patched logger.go:42: 17:16:15 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage04-crc patched logger.go:42: 17:16:16 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage07-crc patched logger.go:42: 17:16:16 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage09-crc patched logger.go:42: 17:16:16 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage10-crc patched logger.go:42: 17:16:16 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage11-crc patched logger.go:42: 17:16:16 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage13-crc patched logger.go:42: 17:16:16 | glance_image_cache/4-cleanup-glance | persistentvolume/local-storage18-crc patched logger.go:42: 17:16:16 | glance_image_cache/4-cleanup-glance | test step completed 4-cleanup-glance logger.go:42: 17:16:16 | glance_image_cache | skipping kubernetes event logging === CONT kuttl/harness/glance_single logger.go:42: 17:16:16 | glance_single | Skipping creation of user-supplied namespace: glance-kuttl-tests logger.go:42: 17:16:16 | glance_single/1-deploy_glance | starting test step 1-deploy_glance logger.go:42: 17:16:16 | glance_single/1-deploy_glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/single | oc apply -n $NAMESPACE -f - ] logger.go:42: 17:16:17 | glance_single/1-deploy_glance | glance.glance.openstack.org/glance created logger.go:42: 17:16:17 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:17 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:17 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:17 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:17 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:17 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:17 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:17 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:17 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:17 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:17Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43859","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DB create not started","reason":"Init","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data not checked","reason":"Init","status":"Unknown","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached create not started","reason":"Init","status":"Unknown","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding not created","reason":"Init","status":"Unknown","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role not created","reason":"Init","status":"Unknown","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount not created","reason":"Init","status":"Unknown","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"observedGeneration":1}} logger.go:42: 17:16:17 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:17 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:17 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:17Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43859 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:17 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:17 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DB create not started reason:Init status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data not checked reason:Init status:Unknown type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached create not started reason:Init status:Unknown type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding not created reason:Init status:Unknown type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role not created reason:Init status:Unknown type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount not created reason:Init status:Unknown type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] observedGeneration:1]]' logger.go:42: 17:16:17 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:18 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:18 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:18 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:18 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:18 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:18 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:18 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:18 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:18 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:18 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:17Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43874","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"MariaDBAccount is not present: MariaDBAccount.mariadb.openstack.org \"glance\" is invalid: metadata.finalizers: Forbidden: no new finalizers can be added if the object is being deleted, found new finalizers []string{\"openstack.org/glance\"}","reason":"Error","severity":"Warning","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DB create job error occurred MariaDBAccount.mariadb.openstack.org \"glance\" is invalid: metadata.finalizers: Forbidden: no new finalizers can be added if the object is being deleted, found new finalizers []string{\"openstack.org/glance\"}","reason":"Error","severity":"Warning","status":"False","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"MariaDBAccount is not present: MariaDBAccount.mariadb.openstack.org \"glance\" is invalid: metadata.finalizers: Forbidden: no new finalizers can be added if the object is being deleted, found new finalizers []string{\"openstack.org/glance\"}","reason":"Error","severity":"Warning","status":"False","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:18 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:18 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:18 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:17Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43874 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:18 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:18 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:17Z message:MariaDBAccount is not present: MariaDBAccount.mariadb.openstack.org "glance" is invalid: metadata.finalizers: Forbidden: no new finalizers can be added if the object is being deleted, found new finalizers []string{"openstack.org/glance"} reason:Error severity:Warning status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DB create job error occurred MariaDBAccount.mariadb.openstack.org "glance" is invalid: metadata.finalizers: Forbidden: no new finalizers can be added if the object is being deleted, found new finalizers []string{"openstack.org/glance"} reason:Error severity:Warning status:False type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:MariaDBAccount is not present: MariaDBAccount.mariadb.openstack.org "glance" is invalid: metadata.finalizers: Forbidden: no new finalizers can be added if the object is being deleted, found new finalizers []string{"openstack.org/glance"} reason:Error severity:Warning status:False type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:18 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:19 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:19 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:19 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:19 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:19 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:19 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:19 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:19 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:19 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:19 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:19Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43905","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:19 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:19 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:19 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:19Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43905 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:19 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:19 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:19 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:20 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:20 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:20 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:20 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:20 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:20 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:20 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:20 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:20 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:20 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:19Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43905","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:20 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:20 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:20 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:19Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43905 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:20 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:20 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:20 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:21 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:21 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:21 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:21 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:21 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:21 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:21 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:21 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:21 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:21 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:19Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43905","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:21 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:21 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:21 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:19Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43905 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:21 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:21 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:21 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:22 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:22 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:22 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:22 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:23 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:23 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:23 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:23 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:23 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:23 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:19Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43905","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:23 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:23 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:23 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:19Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43905 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:23 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:23 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:23 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:24 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:24 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:24 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:24 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:24 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:24 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:24 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:24 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:24 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:24 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:19Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43905","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:24 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:24 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:24 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:19Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43905 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:24 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:24 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:24 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:25 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:25 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:25 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:25 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:25 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:25 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:25 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:25 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:25 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:25 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:24Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43974","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:24Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:25 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:25 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:25 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:24Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43974 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:25 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:25 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:24Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:25 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:26 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:26 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:26 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:26 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:26 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:26 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:26 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:26 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:26 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:26 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:24Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43974","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:24Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:26 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:26 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:26 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:24Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43974 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:26 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:26 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:24Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:26 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:27 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:27 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:27 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:27 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:27 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:27 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:27 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:27 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:27 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:27 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:24Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43974","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:24Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:27 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:27 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:27 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:24Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43974 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:27 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:27 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:24Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:27 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:28 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:28 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:28 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:28 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:29 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:29 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:29 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:29 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:29 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:29 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:24Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"43974","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:24Z","message":"Setup started","reason":"Init","status":"Unknown","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"DB create job still running","reason":"Requested","status":"Unknown","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"DBsync not started","reason":"Init","status":"Unknown","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Service config create not started","reason":"Init","status":"Unknown","type":"ServiceConfigReady"}],"notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:29 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:29 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:29 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:24Z]] name:glance namespace:glance-kuttl-tests resourceVersion:43974 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:29 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:29 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:24Z message:Setup started reason:Init status:Unknown type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:DB create job still running reason:Requested status:Unknown type:DBReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:DBsync not started reason:Init status:Unknown type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:17Z reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Service config create not started reason:Init status:Unknown type:ServiceConfigReady]] notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:29 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:30 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:30 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:30 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:30 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:30 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:30 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:30 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:30 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:30 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:30 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:30 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:30 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:30 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:30 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:30 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:30 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:31 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:31 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:31 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:31 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:31 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:31 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:31 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:32 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:32 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:32 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:32 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:32 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:32 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:32 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:33 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:33 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:33 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:33 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:33 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:33 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:33 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:34 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:34 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:34 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:34 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:34 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:34 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:34 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:35 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:35 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:35 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:35 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:35 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:35 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:35 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:36 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:36 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:36 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:36 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:37 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:37 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:37 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:38 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:38 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:38 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:38 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:38 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:38 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:38 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:39 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:39 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:39 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:39 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:39 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:39 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:39 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:40 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:40 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:40 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:40 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:40 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:40 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:40 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:41 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:41 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:41 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:41 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:41 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:41 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:41 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:42 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:42 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:42 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:42 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:42 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:42 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:42 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:43 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:43 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:43 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:43 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:43 | glance_single/1-deploy_glance | The connection to the server api.crc.testing:6443 was refused - did you specify the right host or port? logger.go:42: 17:16:43 | glance_single/1-deploy_glance | + apiEndpoints= logger.go:42: 17:16:43 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:50 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:50 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:50 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:50 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:50 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:50 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:50 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:50 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:50 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:50 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:50 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:50 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:50 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:50 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:50 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:50 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:51 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:51 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:51 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:51 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:51 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:51 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:51 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:51 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:51 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:51 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:51 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:51 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:51 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:51 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:51 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:51 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:52 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:52 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:52 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:52 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:53 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:53 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:53 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:53 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:53 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:53 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:53 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:53 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:53 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:53 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:53 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:53 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:54 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:54 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:54 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:54 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:54 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:54 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:54 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:54 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:54 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:54 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:54 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:54 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:54 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:54 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:54 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:54 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:55 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:55 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:55 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:55 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:55 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:55 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:55 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:55 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:55 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:55 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:55 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:55 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:55 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:55 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:55 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:55 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:56 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:56 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:56 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:56 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:56 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:56 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:56 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:56 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:56 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:56 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:56 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:56 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:56 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:56 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:56 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:56 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:57 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:57 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:57 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:57 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:57 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:57 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:57 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:57 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:57 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:57 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:57 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:57 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:57 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:57 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:57 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:57 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:16:58 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:16:58 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:58 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:16:58 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:16:58 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:16:59 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:16:59 | glance_single/1-deploy_glance | template was: logger.go:42: 17:16:59 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:16:59 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:16:59 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:16:59 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:16:59 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:16:59 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:16:59 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:16:59 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:16:59 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:00 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:00 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:00 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:00 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:00 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:00 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:00 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:00 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:00 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:00 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:00 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:00 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:00 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:00 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:00 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:00 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:01 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:01 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:01 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:01 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:01 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:01 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:01 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:01 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:01 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:01 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:01 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:01 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:01 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:01 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:01 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:01 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:02 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:02 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:02 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:02 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:02 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:02 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:02 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:02 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:02 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:02 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:02 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:02 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:02 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:02 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:02 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:02 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:03 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:03 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:03 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:03 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:03 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:03 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:03 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:03 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:03 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:03 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:03 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:03 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:03 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:03 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:03 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:03 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:04 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:04 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:04 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:04 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:04 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:04 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:04 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:04 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:04 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:04 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:04 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:04 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:04 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:04 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:04 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:04 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:05 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:05 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:05 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:05 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:05 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:05 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:05 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:05 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:05 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:05 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:05 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:05 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:05 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:05 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:05 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:05 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:06 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:06 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:06 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:06 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:07 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:07 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:07 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:07 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:07 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:07 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:07 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:07 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:07 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:07 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:07 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:07 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:08 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:08 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:08 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:08 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:08 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:08 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:08 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:08 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:08 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:08 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:08 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:08 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:08 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:08 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:08 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:08 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:09 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:09 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:09 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:09 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:09 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:09 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:09 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:09 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:09 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:09 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:09 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:09 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:09 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:09 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:09 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:09 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:10 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:10 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:10 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:10 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:10 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:10 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:10 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:10 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:10 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:10 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:10 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:10 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:10 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:10 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:10 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:10 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:11 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:11 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:11 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:11 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:11 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:11 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:11 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:11 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:11 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:11 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:11 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:11 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:11 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:11 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:11 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:11 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:12 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:12 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:12 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:12 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:13 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:13 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:13 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:13 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:13 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:13 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:13 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:13 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:13 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:13 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:13 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:13 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:14 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:14 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:14 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:14 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:14 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:14 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:14 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:14 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:14 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:14 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:14 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:14 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:14 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:14 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:14 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:14 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:15 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:15 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:15 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:15 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:15 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:15 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:15 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:15 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:15 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:15 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:15 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:15 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:15 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:15 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:15 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:15 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:16 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:16 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:16 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:16 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:16 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:16 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:16 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:16 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:16 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:16 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:16 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:16 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:16 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:16 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:16 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:16 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:17 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:17 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:17 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:17 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:17 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:17 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:17 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:17 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:17 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:17 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:17 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:17 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:17 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:17 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:17 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:17 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:18 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:18 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:18 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:18 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:18 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:18 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:18 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:18 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:18 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:18 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:18 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:18 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:18 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:18 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:18 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:18 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:19 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:19 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:19 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:19 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:20 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:20 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:20 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:20 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:20 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:20 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:20 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:20 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:20 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:20 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:20 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:20 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:21 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:21 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:21 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:21 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:21 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:21 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:21 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:21 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:21 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:21 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:21 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:21 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:21 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:21 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:21 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:21 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:22 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:22 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:22 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:22 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:22 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:22 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:22 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:22 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:22 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:22 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:22 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:22 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:22 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:22 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:22 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:22 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:23 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:23 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:23 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:23 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:23 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:23 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:23 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:23 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:23 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:23 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:23 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:23 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:23 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:23 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:23 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:23 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:24 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:24 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:24 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:24 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:24 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:24 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:24 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:24 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:24 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:24 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:24 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:24 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:24 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:24 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:24 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:24 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:25 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:25 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:25 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:25 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:25 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:25 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:25 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:25 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:25 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:25 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:25 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:25 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:25 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:25 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:25 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:25 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:26 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:26 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:26 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:26 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:27 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:27 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:27 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:27 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:27 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:27 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:27 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:27 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:27 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:27 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:27 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:27 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:28 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:28 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:28 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:28 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:28 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:28 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:28 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:28 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:28 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:28 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:28 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:28 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:28 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:28 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:28 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:28 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:29 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:29 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:29 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:29 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:29 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:29 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:29 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:29 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:29 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:29 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:29 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:29 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:29 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:29 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:29 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:29 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:30 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:30 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:30 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:30 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:30 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:30 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:30 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:30 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:30 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:30 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:30 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:30 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:30 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:30 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:30 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:30 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:31 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:31 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:31 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:31 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:31 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:31 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:31 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:31 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:31 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:31 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:31 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:31 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:31 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:31 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:31 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:31 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:32 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:32 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:32 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:32 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:32 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:32 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:32 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:32 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:32 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:32 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:32 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:32 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:32 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:32 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:32 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:32 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:33 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:33 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:33 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:33 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:34 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:34 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:34 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:34 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:34 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:34 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:34 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:34 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:34 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:34 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:34 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:34 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:35 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:35 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:35 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:35 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:35 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:35 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:35 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:35 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:35 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:35 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:35 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:35 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:35 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:35 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:35 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:35 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:36 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:36 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:36 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:36 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:36 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:36 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:36 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:36 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:36 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:36 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:36 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:36 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:36 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:36 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:36 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:36 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:37 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:37 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:37 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:37 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:37 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:37 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:37 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:37 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:37 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:37 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:37 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:37 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:37 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:37 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:37 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:37 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:38 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:38 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:38 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:38 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:38 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:38 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:38 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:38 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:38 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:38 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:38 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:38 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:38 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:38 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:38 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:38 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:39 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:39 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:39 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:39 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:39 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:39 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:39 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:39 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:39 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:39 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:39 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:39 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:39 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:39 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:39 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:39 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:40 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:40 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:40 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:40 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:41 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:41 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:41 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:41 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:41 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:41 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:41 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:41 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:41 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:41 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:41 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:41 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:42 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:42 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:42 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:42 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:42 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:42 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:42 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:42 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:42 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:42 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:42 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:42 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:42 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:42 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:42 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:42 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:43 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:43 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:43 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:43 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:43 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:43 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:43 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:43 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:43 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:43 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:43 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:43 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:43 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:43 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:43 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:43 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:44 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:44 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:44 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:44 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:44 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:44 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:44 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:44 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:44 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:44 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:44 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:44 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:44 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:44 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:44 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:44 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:45 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:45 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:45 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:45 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:45 | glance_single/1-deploy_glance | error: error executing template "{{ index .status.apiEndpoint \"default-internal\" }}{{ \":\" }}{{ index .status.apiEndpoint \"default-public\" }}": template: output:1:3: executing "output" at : error calling index: index of untyped nil logger.go:42: 17:17:45 | glance_single/1-deploy_glance | + apiEndpoints='Error executing template: template: output:1:3: executing "output" at : error calling index: index of untyped nil. Printing more information for debugging the template: logger.go:42: 17:17:45 | glance_single/1-deploy_glance | template was: logger.go:42: 17:17:45 | glance_single/1-deploy_glance | {{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }} logger.go:42: 17:17:45 | glance_single/1-deploy_glance | raw data was: logger.go:42: 17:17:45 | glance_single/1-deploy_glance | {"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true","kubectl.kubernetes.io/last-applied-configuration":"{\"apiVersion\":\"glance.openstack.org/v1beta1\",\"kind\":\"Glance\",\"metadata\":{\"annotations\":{\"glance.openstack.org/wsgi\":\"true\"},\"name\":\"glance\",\"namespace\":\"glance-kuttl-tests\"},\"spec\":{\"customServiceConfig\":\"[DEFAULT]\\ndebug = true\\n\",\"databaseAccount\":\"glance\",\"databaseInstance\":\"openstack\",\"glanceAPIs\":{\"default\":{\"imageCache\":{\"size\":\"2G\"},\"preserveJobs\":false,\"replicas\":1,\"type\":\"single\"}},\"keystoneEndpoint\":\"default\",\"notificationBusInstance\":\"rabbitmq\",\"secret\":\"osp-secret\",\"serviceUser\":\"glance\",\"storage\":{\"storageClass\":\"local-storage\",\"storageRequest\":\"10G\"}}}\n"},"creationTimestamp":"2025-11-26T17:16:17Z","finalizers":["openstack.org/glance"],"generation":1,"managedFields":[{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:annotations":{".":{},"f:glance.openstack.org/wsgi":{},"f:kubectl.kubernetes.io/last-applied-configuration":{}}},"f:spec":{".":{},"f:apiTimeout":{},"f:customServiceConfig":{},"f:databaseAccount":{},"f:databaseInstance":{},"f:glanceAPIs":{".":{},"f:default":{".":{},"f:imageCache":{".":{},"f:cleanerScheduler":{},"f:prunerScheduler":{},"f:size":{}},"f:replicas":{},"f:type":{}}},"f:keystoneEndpoint":{},"f:memcachedInstance":{},"f:notificationBusInstance":{},"f:passwordSelectors":{".":{},"f:service":{}},"f:preserveJobs":{},"f:secret":{},"f:serviceUser":{},"f:storage":{".":{},"f:storageClass":{},"f:storageRequest":{}}}},"manager":"kubectl-client-side-apply","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:metadata":{"f:finalizers":{".":{},"v:\"openstack.org/glance\"":{}}}},"manager":"manager","operation":"Update","time":"2025-11-26T17:16:17Z"},{"apiVersion":"glance.openstack.org/v1beta1","fieldsType":"FieldsV1","fieldsV1":{"f:status":{".":{},"f:conditions":{},"f:databaseHostname":{},"f:notificationBusSecret":{},"f:observedGeneration":{}}},"manager":"manager","operation":"Update","subresource":"status","time":"2025-11-26T17:16:29Z"}],"name":"glance","namespace":"glance-kuttl-tests","resourceVersion":"44032","uid":"5c4b5e39-2741-45d2-aed7-e49868ce09f5"},"spec":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","dbPurge":{"age":30,"schedule":"1 0 * * *"},"glanceAPIs":{"default":{"apiTimeout":60,"containerImage":"quay.io/podified-antelope-centos9/openstack-glance-api:current-podified","imageCache":{"cleanerScheduler":"*/30 * * * *","prunerScheduler":"1 0 * * *","size":"2G"},"override":{},"replicas":1,"resources":{},"storage":{},"tls":{"api":{"internal":{},"public":{}}},"type":"single"}},"imageCache":{"cleanerScheduler":"","prunerScheduler":"","size":""},"keystoneEndpoint":"default","memcachedInstance":"memcached","notificationBusInstance":"rabbitmq","passwordSelectors":{"service":"GlancePassword"},"preserveJobs":false,"quotas":{"imageCountTotal":0,"imageCountUpload":0,"imageSizeTotal":0,"imageStageTotal":0},"secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}},"status":{"conditions":[{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"Ready"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"CronJob not started","reason":"Init","status":"Unknown","type":"CronJobReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DB create completed","reason":"Ready","status":"True","type":"DBReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"DBsync job still running","reason":"Requested","severity":"Info","status":"False","type":"DBSyncReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"GlanceAPI not started","reason":"Init","status":"Unknown","type":"GlanceAPIReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Input data complete","reason":"Ready","status":"True","type":"InputReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Keystone Service user registration not started","reason":"Init","status":"Unknown","type":"KeystoneServiceReady"},{"lastTransitionTime":"2025-11-26T17:16:19Z","message":"MariaDBAccount creation complete","reason":"Ready","status":"True","type":"MariaDBAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":" Memcached instance has been provisioned","reason":"Ready","status":"True","type":"MemcachedReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"NotificationBusInstance successfully created","reason":"Ready","status":"True","type":"NotificationBusInstanceReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"RoleBinding created","reason":"Ready","status":"True","type":"RoleBindingReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"Role created","reason":"Ready","status":"True","type":"RoleReady"},{"lastTransitionTime":"2025-11-26T17:16:17Z","message":"ServiceAccount created","reason":"Ready","status":"True","type":"ServiceAccountReady"},{"lastTransitionTime":"2025-11-26T17:16:29Z","message":"Service config create completed","reason":"Ready","status":"True","type":"ServiceConfigReady"}],"databaseHostname":"openstack.glance-kuttl-tests.svc","notificationBusSecret":"rabbitmq-transport-url-glance-glance-transport","observedGeneration":1}} logger.go:42: 17:17:45 | glance_single/1-deploy_glance | object given to template engine was: logger.go:42: 17:17:45 | glance_single/1-deploy_glance | map[apiVersion:glance.openstack.org/v1beta1 kind:Glance metadata:map[annotations:map[glance.openstack.org/wsgi:true kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"glance.openstack.org/v1beta1","kind":"Glance","metadata":{"annotations":{"glance.openstack.org/wsgi":"true"},"name":"glance","namespace":"glance-kuttl-tests"},"spec":{"customServiceConfig":"[DEFAULT]\ndebug = true\n","databaseAccount":"glance","databaseInstance":"openstack","glanceAPIs":{"default":{"imageCache":{"size":"2G"},"preserveJobs":false,"replicas":1,"type":"single"}},"keystoneEndpoint":"default","notificationBusInstance":"rabbitmq","secret":"os**********et","serviceUser":"glance","storage":{"storageClass":"local-storage","storageRequest":"10G"}}} logger.go:42: 17:17:45 | glance_single/1-deploy_glance | ] creationTimestamp:2025-11-26T17:16:17Z finalizers:[openstack.org/glance] generation:1 managedFields:[map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:annotations:map[.:map[] f:glance.openstack.org/wsgi:map[] f:kubectl.kubernetes.io/last-applied-configuration:map[]]] f:spec:map[.:map[] f:apiTimeout:map[] f:customServiceConfig:map[] f:databaseAccount:map[] f:databaseInstance:map[] f:glanceAPIs:map[.:map[] f:default:map[.:map[] f:imageCache:map[.:map[] f:cleanerScheduler:map[] f:prunerScheduler:map[] f:size:map[]] f:replicas:map[] f:type:map[]]] f:keystoneEndpoint:map[] f:memcachedInstance:map[] f:notificationBusInstance:map[] f:passwordSelectors:map[.:map[] f:service:map[]] f:preserveJobs:map[] f:secret:ma**********[] f:serviceUser:map[] f:storage:map[.:map[] f:storageClass:map[] f:storageRequest:map[]]]] manager:kubectl-client-side-apply operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:metadata:map[f:finalizers:map[.:map[] v:"openstack.org/glance":map[]]]] manager:manager operation:Update time:2025-11-26T17:16:17Z] map[apiVersion:glance.openstack.org/v1beta1 fieldsType:FieldsV1 fieldsV1:map[f:status:map[.:map[] f:conditions:map[] f:databaseHostname:map[] f:notificationBusSecret:map[] f:observedGeneration:map[]]] manager:manager operation:Update subresource:status time:2025-11-26T17:16:29Z]] name:glance namespace:glance-kuttl-tests resourceVersion:44032 uid:5c4b5e39-2741-45d2-aed7-e49868ce09f5] spec:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified customServiceConfig:[DEFAULT] logger.go:42: 17:17:45 | glance_single/1-deploy_glance | debug = true logger.go:42: 17:17:45 | glance_single/1-deploy_glance | databaseAccount:glance databaseInstance:openstack dbPurge:map[age:30 schedule:1 0 * * *] glanceAPIs:map[default:map[apiTimeout:60 containerImage:quay.io/podified-antelope-centos9/openstack-glance-api:current-podified imageCache:map[cleanerScheduler:*/30 * * * * prunerScheduler:1 0 * * * size:2G] override:map[] replicas:1 resources:map[] storage:map[] tls:map[api:map[internal:map[] public:map[]]] type:single]] imageCache:map[cleanerScheduler: prunerScheduler: size:] keystoneEndpoint:default memcachedInstance:memcached notificationBusInstance:rabbitmq passwordSelectors:map[service:GlancePassword] preserveJobs:false quotas:map[imageCountTotal:0 imageCountUpload:0 imageSizeTotal:0 imageStageTotal:0] secret:os**********et serviceUser:glance storage:map[storageClass:local-storage storageRequest:10G]] status:map[conditions:[map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:Ready] map[lastTransitionTime:2025-11-26T17:16:17Z message:CronJob not started reason:Init status:Unknown type:CronJobReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DB create completed reason:Ready status:True type:DBReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:DBsync job still running reason:Requested severity:Info status:False type:DBSyncReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:GlanceAPI not started reason:Init status:Unknown type:GlanceAPIReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Input data complete reason:Ready status:True type:InputReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Keystone Service user registration not started reason:Init status:Unknown type:KeystoneServiceReady] map[lastTransitionTime:2025-11-26T17:16:19Z message:MariaDBAccount creation complete reason:Ready status:True type:MariaDBAccountReady] map[lastTransitionTime:2025-11-26T17:16:17Z message: Memcached instance has been provisioned reason:Ready status:True type:MemcachedReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:NotificationBusInstance successfully created reason:Ready status:True type:NotificationBusInstanceReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:RoleBinding created reason:Ready status:True type:RoleBindingReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:Role created reason:Ready status:True type:RoleReady] map[lastTransitionTime:2025-11-26T17:16:17Z message:ServiceAccount created reason:Ready status:True type:ServiceAccountReady] map[lastTransitionTime:2025-11-26T17:16:29Z message:Service config create completed reason:Ready status:True type:ServiceConfigReady]] databaseHostname:openstack.glance-kuttl-tests.svc notificationBusSecret:rabbitmq-transport-url-glance-glance-transport observedGeneration:1]]' logger.go:42: 17:17:45 | glance_single/1-deploy_glance | command failure, skipping 1 additional commands logger.go:42: 17:17:46 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:46 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:46 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:46 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:46 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:46 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:46 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:46 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:46 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:46 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:46 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:46 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:46 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:47 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:47 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:47 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:47 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:47 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:47 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:47 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:47 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:48 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:48 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:48 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:48 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:48 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:49 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:49 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:49 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:49 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:50 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:50 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:50 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:50 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:51 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:51 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:51 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:51 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:51 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:52 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:52 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:52 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:52 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:53 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:53 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:53 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:53 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:54 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:54 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:54 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:54 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:54 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:55 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:55 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:55 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:55 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:56 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:56 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:56 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:56 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:57 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:57 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:57 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:57 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:57 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:58 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:17:58 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:58 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:17:58 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:17:58 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:58 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:17:58 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:17:58 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:17:58 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:17:58 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:17:58 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:17:58 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:58 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:59 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:17:59 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:59 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:59 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:17:59 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:59 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:17:59 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:17:59 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:18:00 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:18:00 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:00 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:18:00 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:18:00 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:18:01 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:18:01 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:18:01 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:18:01 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:18:01 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:18:01 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:18:01 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:18:01 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:18:01 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:18:01 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:18:01 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:18:01 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:18:01 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:02 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:18:02 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:18:02 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:02 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:18:02 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:02 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:18:02 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:18:02 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:18:03 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' regex="http:\/\/glance-default-internal.$NAMESPACE.*:http:\/\/glance-default-public.$NAMESPACE.*" apiEndpoints=$(oc get -n $NAMESPACE Glance glance -o go-template="$template") matches=$(echo "$apiEndpoints" | sed -e "s?$regex??") if [ -z "$matches" ]; then exit 0 else exit 1 fi ] logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + template='{{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + regex='http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests Glance glance -o 'go-template={{ index .status.apiEndpoint "default-internal" }}{{ ":" }}{{ index .status.apiEndpoint "default-public" }}' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + apiEndpoints=http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ echo http://glance-default-internal.glance-kuttl-tests.svc:9292:http://glance-default-public.glance-kuttl-tests.svc:9292 logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ sed -e 's?http:\/\/glance-default-internal.glance-kuttl-tests.*:http:\/\/glance-default-public.glance-kuttl-tests.*??' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + matches= logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + '[' -z '' ']' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:18:03 | glance_single/1-deploy_glance | running command: [sh -c set -euxo pipefail tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' imageTuples=$(oc get -n openstack-operators deployment glance-operator-controller-manager -o go-template="$tupleTemplate") for ITEM in $(echo $imageTuples); do # it is an image if echo $ITEM | grep 'RELATED_IMAGE' &> /dev/null; then NAME=$(echo $ITEM | sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|') IMG_FROM_ENV=$(echo $ITEM | sed -e 's|^.*#\(.*\)|\1|') template='{{.spec.containerImage}}' case $NAME in API) SERVICE_IMAGE=$(oc get -n $NAMESPACE glance glance -o go-template="$template") ;; esac if [ "$SERVICE_IMAGE" != "$IMG_FROM_ENV" ]; then echo "$NAME image does not equal $VALUE" exit 1 fi fi done exit 0 ] logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + tupleTemplate='{{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ oc get -n openstack-operators deployment glance-operator-controller-manager -o 'go-template={{ range (index .spec.template.spec.containers 0).env }}{{ .name }}{{ "#" }}{{ .value}}{{"\n"}}{{ end }}' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + imageTuples='RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:03 | glance_single/1-deploy_glance | OPERATOR_CONDITION_NAME#glance-operator.v0.0.1' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ sed -e 's|^RELATED_IMAGE_GLANCE_\([^_]*\)_.*|\1|' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + NAME=API logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ echo RELATED_IMAGE_GLANCE_API_IMAGE_URL_DEFAULT#quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ sed -e 's|^.*#\(.*\)|\1|' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + IMG_FROM_ENV=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + template='{{.spec.containerImage}}' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + case $NAME in logger.go:42: 17:18:03 | glance_single/1-deploy_glance | ++ oc get -n glance-kuttl-tests glance glance -o 'go-template={{.spec.containerImage}}' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + SERVICE_IMAGE=quay.io/podified-antelope-centos9/openstack-glance-api:current-podified logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + '[' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified '!=' quay.io/podified-antelope-centos9/openstack-glance-api:current-podified ']' logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + for ITEM in $(echo $imageTuples) logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + echo OPERATOR_CONDITION_NAME#glance-operator.v0.0.1 logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + grep RELATED_IMAGE logger.go:42: 17:18:03 | glance_single/1-deploy_glance | + exit 0 logger.go:42: 17:18:03 | glance_single/1-deploy_glance | test step completed 1-deploy_glance logger.go:42: 17:18:03 | glance_single/2-scale-glanceapis | starting test step 2-scale-glanceapis logger.go:42: 17:18:03 | glance_single/2-scale-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":3}]' ] logger.go:42: 17:18:03 | glance_single/2-scale-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:18:19 | glance_single/2-scale-glanceapis | test step completed 2-scale-glanceapis logger.go:42: 17:18:19 | glance_single/3-scale-down-glanceapis | starting test step 3-scale-down-glanceapis logger.go:42: 17:18:19 | glance_single/3-scale-down-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":1}]' ] logger.go:42: 17:18:19 | glance_single/3-scale-down-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:18:25 | glance_single/3-scale-down-glanceapis | test step completed 3-scale-down-glanceapis logger.go:42: 17:18:25 | glance_single/4-scale-down-zero-glanceapis | starting test step 4-scale-down-zero-glanceapis logger.go:42: 17:18:25 | glance_single/4-scale-down-zero-glanceapis | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":0}]' ] logger.go:42: 17:18:25 | glance_single/4-scale-down-zero-glanceapis | glance.glance.openstack.org/glance patched logger.go:42: 17:18:30 | glance_single/4-scale-down-zero-glanceapis | test step completed 4-scale-down-zero-glanceapis logger.go:42: 17:18:30 | glance_single/5-cleanup-glance | starting test step 5-cleanup-glance logger.go:42: 17:18:30 | glance_single/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize ../../../../config/samples/layout/single | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:18:31 | glance_single/5-cleanup-glance | glance.glance.openstack.org "glance" deleted logger.go:42: 17:18:31 | glance_single/5-cleanup-glance | running command: [sh -c oc kustomize ../../../../config/samples/layout/split | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:18:31 | glance_single/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE kustomize --load-restrictor LoadRestrictionsNone ../../../../config/samples/openstackclient | oc -n $NAMESPACE delete --ignore-not-found -f - ] logger.go:42: 17:18:31 | glance_single/5-cleanup-glance | running command: [sh -c oc -n $NAMESPACE get pvc -l service=glance -o custom-columns=NAME:.metadata.name --no-headers | xargs -n 1 oc -n $NAMESPACE delete pvc; for pv in $(oc -n $NAMESPACE get pv | grep "Released.*glance" | cut -f 1 -d " "); do oc -n $NAMESPACE patch pv $pv -p '{"spec":{"claimRef": null}}'; done ] logger.go:42: 17:18:31 | glance_single/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-single-0" deleted logger.go:42: 17:18:32 | glance_single/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-single-1" deleted logger.go:42: 17:18:32 | glance_single/5-cleanup-glance | persistentvolumeclaim "glance-cache-glance-default-single-2" deleted logger.go:42: 17:18:32 | glance_single/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-single-0" deleted logger.go:42: 17:18:33 | glance_single/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-single-1" deleted logger.go:42: 17:18:33 | glance_single/5-cleanup-glance | persistentvolumeclaim "glance-glance-default-single-2" deleted logger.go:42: 17:18:33 | glance_single/5-cleanup-glance | persistentvolume/local-storage04-crc patched logger.go:42: 17:18:33 | glance_single/5-cleanup-glance | persistentvolume/local-storage06-crc patched logger.go:42: 17:18:34 | glance_single/5-cleanup-glance | persistentvolume/local-storage07-crc patched logger.go:42: 17:18:34 | glance_single/5-cleanup-glance | persistentvolume/local-storage13-crc patched logger.go:42: 17:18:34 | glance_single/5-cleanup-glance | persistentvolume/local-storage18-crc patched logger.go:42: 17:18:34 | glance_single/5-cleanup-glance | persistentvolume/local-storage19-crc patched logger.go:42: 17:18:34 | glance_single/5-cleanup-glance | test step completed 5-cleanup-glance logger.go:42: 17:18:34 | glance_single | skipping kubernetes event logging === CONT kuttl/harness/glance_dist_image_import logger.go:42: 17:18:34 | glance_dist_image_import | Ignoring README.md as it does not match file name regexp: ^(\d+)-(?:[^\.]+)(?:\.yaml)?$ logger.go:42: 17:18:34 | glance_dist_image_import | Skipping creation of user-supplied namespace: glance-kuttl-tests logger.go:42: 17:18:34 | glance_dist_image_import/0-deploy | starting test step 0-deploy logger.go:42: 17:18:34 | glance_dist_image_import/0-deploy | running command: [sh -c oc -n $NAMESPACE kustomize ../../../../config/samples/layout/single | oc -n $NAMESPACE apply -f - ] logger.go:42: 17:18:34 | glance_dist_image_import/0-deploy | glance.glance.openstack.org/glance created logger.go:42: 17:18:34 | glance_dist_image_import/0-deploy | running command: [sh -c oc patch Glance -n $NAMESPACE glance --type='json' -p='[{"op": "replace", "path": "/spec/glanceAPIs/default/replicas", "value":2}]' ] logger.go:42: 17:18:35 | glance_dist_image_import/0-deploy | glance.glance.openstack.org/glance patched logger.go:42: 17:18:35 | glance_dist_image_import/0-deploy | running command: [sh -c oc -n $NAMESPACE kustomize --load-restrictor LoadRestrictionsNone ../../../../config/samples/openstackclient | oc -n $NAMESPACE apply -f - ] logger.go:42: 17:18:35 | glance_dist_image_import/0-deploy | configmap/openstack-scripts-9db6gc427h created logger.go:42: 17:18:35 | glance_dist_image_import/0-deploy | pod/openstackclient created logger.go:42: 17:19:03 | glance_dist_image_import/0-deploy | test step completed 0-deploy logger.go:42: 17:19:03 | glance_dist_image_import/1-import-image | starting test step 1-import-image logger.go:42: 17:19:03 | glance_dist_image_import/1-import-image | running command: [sh -c oc -n $NAMESPACE exec -it openstackclient --stdin=false -- /bin/sh -c "DOMAIN=glance-default-single.$NAMESPACE.svc ./scripts/dist-image-import.sh" ] logger.go:42: 17:19:09 | glance_dist_image_import/1-import-image | usage: openstack image delete [-h] [ ...] logger.go:42: 17:19:09 | glance_dist_image_import/1-import-image | openstack image delete: error: the following arguments are required: logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | +------------------+--------------------------------------+ logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | Property | Value | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | +------------------+--------------------------------------+ logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | checksum | None | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | container_format | bare | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | created_at | 2025-11-26T17:19:12Z | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | disk_format | qcow2 | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | id | a25cbde3-f455-45b6-a099-7cb6cd499435 | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | locations | [] | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | min_disk | 0 | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | min_ram | 0 | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | name | myimage | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | os_hash_algo | None | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | os_hash_value | None | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | os_hidden | False | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | owner | 4b3e9a8e3dac4255a97e1ad8291eef19 | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | protected | False | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | size | None | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | status | queued | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | tags | [] | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | updated_at | 2025-11-26T17:19:12Z | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | virtual_size | Not available | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | | visibility | shared | logger.go:42: 17:19:12 | glance_dist_image_import/1-import-image | +------------------+--------------------------------------+ logger.go:42: 17:19:14 | glance_dist_image_import/1-import-image | Image ID: a25cbde3-f455-45b6-a099-7cb6cd499435 logger.go:42: 17:19:15 | glance_dist_image_import/1-import-image | Image Status => queued logger.go:42: 17:19:19 | glance_dist_image_import/1-import-image | Error finding address for http://glance-default-single-0.glance-default-single.glance-kuttl-tests.svc:9292/versions: Unable to establish connection to http://glance-default-single-0.glance-default-single.glance-kuttl-tests.svc:9292/versions: HTTPConnectionPool(host='glance-default-single-0.glance-default-single.glance-kuttl-tests.svc', port=9292): Max retries exceeded with url: /versions (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known')) logger.go:42: 17:19:21 | glance_dist_image_import/1-import-image | The 'glance-direct' import method can only be applied to an image in status 'uploading' logger.go:42: 17:19:22 | glance_dist_image_import/1-import-image | +--------------------------------------+---------+ logger.go:42: 17:19:22 | glance_dist_image_import/1-import-image | | ID | Name | logger.go:42: 17:19:22 | glance_dist_image_import/1-import-image | +--------------------------------------+---------+ logger.go:42: 17:19:22 | glance_dist_image_import/1-import-image | | a25cbde3-f455-45b6-a099-7cb6cd499435 | myimage | logger.go:42: 17:19:22 | glance_dist_image_import/1-import-image | +--------------------------------------+---------+ logger.go:42: 17:19:25 | glance_dist_image_import/1-import-image | Image Status: queued logger.go:42: 17:19:32 | glance_dist_image_import/1-import-image | command terminated with exit code 1 case.go:396: failed in step 1-import-image case.go:398: command "oc -n $NAMESPACE exec -it openstackclient --stdin=false -- /bin/sh ..." failed, exit status 1 logger.go:42: 17:19:32 | glance_dist_image_import | skipping kubernetes event logging === NAME kuttl harness.go:406: run tests finished harness.go:514: cleaning up harness.go:571: removing temp folder: "" --- FAIL: kuttl (504.83s) --- FAIL: kuttl/harness (0.00s) --- PASS: kuttl/harness/common (0.01s) --- PASS: kuttl/harness/glance_single_tls (68.12s) --- PASS: kuttl/harness/glance_split_proxypass (64.48s) --- PASS: kuttl/harness/glance_split (66.08s) --- PASS: kuttl/harness/glance_image_cache (110.66s) --- PASS: kuttl/harness/glance_single (137.77s) --- FAIL: kuttl/harness/glance_dist_image_import (57.70s) FAIL make[1]: *** [Makefile:2021: glance_kuttl_run] Error 1 make[1]: Leaving directory '/home/zuul/src/github.com/openstack-k8s-operators/install_yamls' make: *** [Makefile:2030: glance_kuttl] Error 2