diff --git a/ci-operator/config/openshift/verification-tests/openshift-verification-tests-master__installer-rehearse-4.19.yaml b/ci-operator/config/openshift/verification-tests/openshift-verification-tests-master__installer-rehearse-4.19.yaml index 61df17d98377..839caa3d7c90 100644 --- a/ci-operator/config/openshift/verification-tests/openshift-verification-tests-master__installer-rehearse-4.19.yaml +++ b/ci-operator/config/openshift/verification-tests/openshift-verification-tests-master__installer-rehearse-4.19.yaml @@ -60,15 +60,27 @@ tests: steps: cluster_profile: ibmcloud-qe env: + CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: registry.build05.ci.openshift.org/ci-ln-hzgicdb/release:latest FEATURE_GATES: '["ClusterAPIInstall=true"]' FEATURE_SET: CustomNoUpgrade SLEEP_DURATION: 1m post: - ref: cucushift-installer-wait - - chain: cucushift-installer-rehearse-ibmcloud-ipi-customer-vpc-deprovision + - chain: cucushift-installer-rehearse-ibmcloud-ipi-private-byo-kms-deprovision test: - chain: cucushift-installer-check-cluster-health - workflow: cucushift-installer-rehearse-ibmcloud-ipi-customer-vpc + workflow: cucushift-installer-rehearse-ibmcloud-ipi-private-byo-kms +- as: installer-rehearse-ibmcloud-capi + cron: '@yearly' + steps: + cluster_profile: ibmcloud-qe + env: + CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: registry.build05.ci.openshift.org/ci-ln-hzgicdb/release:latest + FEATURE_GATES: '["ClusterAPIInstall=true"]' + FEATURE_SET: CustomNoUpgrade + test: + - chain: cucushift-installer-check-cluster-health + workflow: cucushift-installer-rehearse-ibmcloud-ipi zz_generated_metadata: branch: master org: openshift diff --git a/ci-operator/jobs/openshift/verification-tests/openshift-verification-tests-master-periodics.yaml b/ci-operator/jobs/openshift/verification-tests/openshift-verification-tests-master-periodics.yaml index ce8250ce76d6..331a9f89100e 100644 --- a/ci-operator/jobs/openshift/verification-tests/openshift-verification-tests-master-periodics.yaml +++ b/ci-operator/jobs/openshift/verification-tests/openshift-verification-tests-master-periodics.yaml @@ -25738,6 +25738,81 @@ periodics: - name: result-aggregator secret: secretName: result-aggregator +- agent: kubernetes + cluster: build01 + cron: '@yearly' + decorate: true + decoration_config: + skip_cloning: true + extra_refs: + - base_ref: master + org: openshift + repo: verification-tests + labels: + ci-operator.openshift.io/cloud: ibmcloud + ci-operator.openshift.io/cloud-cluster-profile: ibmcloud-qe + ci-operator.openshift.io/variant: installer-rehearse-4.19 + ci.openshift.io/generator: prowgen + job-release: "4.19" + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: periodic-ci-openshift-verification-tests-master-installer-rehearse-4.19-installer-rehearse-ibmcloud-capi + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --lease-server-credentials-file=/etc/boskos/credentials + - --report-credentials-file=/etc/report/credentials + - --secret-dir=/secrets/ci-pull-credentials + - --target=installer-rehearse-ibmcloud-capi + - --variant=installer-rehearse-4.19 + command: + - ci-operator + image: ci-operator:latest + imagePullPolicy: Always + name: "" + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /etc/boskos + name: boskos + readOnly: true + - mountPath: /secrets/ci-pull-credentials + name: ci-pull-credentials + readOnly: true + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: boskos + secret: + items: + - key: credentials + path: credentials + secretName: boskos-credentials + - name: ci-pull-credentials + secret: + secretName: ci-pull-credentials + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator - agent: kubernetes cluster: build01 cron: '@yearly' diff --git a/ci-operator/step-registry/ipi/install/install/ipi-install-install-commands.sh b/ci-operator/step-registry/ipi/install/install/ipi-install-install-commands.sh index 062219d44d67..0a84ce778c94 100755 --- a/ci-operator/step-registry/ipi/install/install/ipi-install-install-commands.sh +++ b/ci-operator/step-registry/ipi/install/install/ipi-install-install-commands.sh @@ -199,7 +199,7 @@ function copy_kubeconfig_minimal() { echo 'api available' echo 'waiting for bootstrap to complete' - openshift-install --dir="${dir}" wait-for bootstrap-complete & + install --dir="${dir}" wait-for bootstrap-complete & wait "$!" ret=$? if [ $ret -eq 0 ]; then @@ -463,6 +463,13 @@ EOF done } +function install() { + if [[ -f ${newInstall} ]]; then + echo "${newInstall}" + else + echo "openshift-install" + fi +} # inject_spot_instance_config is an AWS specific option that enables the # use of AWS spot instances. # PARAMS: @@ -487,7 +494,7 @@ function inject_spot_instance_config() { if [[ -d ${dir}/cluster-api/machines ]]; then echo "Spot masters supported via CAPA" manifests="${dir}/cluster-api/machines/10_inframachine_*.yaml $manifests" - elif openshift-install list-hidden-features 2>/dev/null | grep -q terraform-spot-masters; then + elif install list-hidden-features 2>/dev/null | grep -q terraform-spot-masters; then echo "Spot masters supported via terraform" else echo "Spot masters are not supported in this configuration!" @@ -564,7 +571,15 @@ fi if [[ -n "${CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE:-}" ]]; then echo "Overwrite OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE to ${CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE} for cluster installation" export OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE=${CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE} -fi + set -x + set +oe + PULL_SECRET_PATH=${CLUSTER_PROFILE_DIR}/pull-secret + tmpDir=$(mktemp -d) + oc adm release extract -a "$PULL_SECRET_PATH" "${CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE}" --command=openshift-install --to=${/tmpDir} + ${tmpDir}/openshift-install version + newInstall=${tmpDir}/openshift-install + echo "extract the openshift-install from ${CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE} Done" +fi echo "Installing from release ${OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE}" export SSH_PRIV_KEY_PATH=${CLUSTER_PROFILE_DIR}/ssh-privatekey @@ -674,7 +689,9 @@ cp "${SSH_PRIV_KEY_PATH}" ~/.ssh/ echo "$(date +%s)" > "${SHARED_DIR}/TEST_TIME_INSTALL_START" set +o errexit -openshift-install --dir="${dir}" create manifests & +echo "**** The version of openshift-install: ********************************" +install version +install --dir="${dir}" create manifests & wait "$!" ret="$?" if test "${ret}" -ne 0 ; then @@ -739,7 +756,7 @@ esac if [ ! -z "${OPENSHIFT_INSTALL_PROMTAIL_ON_BOOTSTRAP:-}" ]; then set +o errexit # Inject promtail in bootstrap.ign - openshift-install --dir="${dir}" create ignition-configs & + install --dir="${dir}" create ignition-configs & wait "$!" ret="$?" if test "${ret}" -ne 0 ; then @@ -786,13 +803,15 @@ tries=1 set +o errexit backup=/tmp/install-orig cp -rfpv "$dir" "$backup" +install version +which install while [ $ret -eq 4 ] && [ $tries -le $max ] do echo "Install attempt $tries of $max" if [ $tries -gt 1 ]; then write_install_status populate_artifact_dir - openshift-install --dir="${dir}" destroy cluster 2>&1 | grep --line-buffered -v 'password\|X-Auth-Token\|UserData:' & + install --dir="${dir}" destroy cluster 2>&1 | grep --line-buffered -v 'password\|X-Auth-Token\|UserData:' & wait "$!" ret="$?" if test "${ret}" -ne 0 ; then @@ -813,7 +832,7 @@ do copy_kubeconfig_minimal "${dir}" & copy_kubeconfig_pid=$! - openshift-install --dir="${dir}" create cluster 2>&1 | grep --line-buffered -v 'password\|X-Auth-Token\|UserData:' & + install --dir="${dir}" create cluster 2>&1 | grep --line-buffered -v 'password\|X-Auth-Token\|UserData:' & wait "$!" ret="$?" echo "Installer exit with code $ret" @@ -831,4 +850,5 @@ if test "${ret}" -eq 0 ; then echo "https://$(env KUBECONFIG=${dir}/auth/kubeconfig oc -n openshift-console get routes console -o=jsonpath='{.spec.host}')" > "${SHARED_DIR}/console.url" fi +sleep 2h exit "$ret"