diff --git a/ci-operator/config/openshift/metallb/openshift-metallb-release-5.0__dualstack-periodics.yaml b/ci-operator/config/openshift/metallb/openshift-metallb-release-5.0__dualstack-periodics.yaml new file mode 100644 index 0000000000000..bd5c1b53af610 --- /dev/null +++ b/ci-operator/config/openshift/metallb/openshift-metallb-release-5.0__dualstack-periodics.yaml @@ -0,0 +1,53 @@ +base_images: + dev-scripts: + name: test + namespace: ocp-kni + tag: dev-scripts +build_root: + image_stream_tag: + name: release + namespace: openshift + tag: rhel-8-release-golang-1.16-openshift-4.9 +releases: + latest: + integration: + include_built_images: true + name: "5.0" + namespace: ocp +resources: + '*': + limits: + memory: 4Gi + requests: + cpu: 100m + memory: 200Mi +tests: +- as: metallb-e2e-metal-dualstack-periodic + capabilities: + - intranet + interval: 72h + reporter_config: + channel: '#team-metallb-ci-periodic' + job_states_to_report: + - success + - failure + - error + report_template: '{{if eq .Status.State "success"}} :slack-green: Job *{{.Spec.Job}}* + ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{else}} :failed: + job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> + {{end}}' + steps: + cluster_profile: equinix-ocp-metal + env: + DEVSCRIPTS_CONFIG: | + IP_STACK=v4v6 + NETWORK_TYPE=OVNKubernetes + E2E_TESTS_CONFIG: | + IP_STACK=v4v6 + BGP_TYPE=frr-k8s-cno + workflow: baremetalds-metallb-e2e +zz_generated_metadata: + branch: release-5.0 + org: openshift + repo: metallb + variant: dualstack-periodics diff --git a/ci-operator/jobs/openshift/metallb/openshift-metallb-release-5.0-periodics.yaml b/ci-operator/jobs/openshift/metallb/openshift-metallb-release-5.0-periodics.yaml new file mode 100644 index 0000000000000..cad6cabb37175 --- /dev/null +++ b/ci-operator/jobs/openshift/metallb/openshift-metallb-release-5.0-periodics.yaml @@ -0,0 +1,95 @@ +periodics: +- agent: kubernetes + cluster: build09 + decorate: true + decoration_config: + skip_cloning: true + extra_refs: + - base_ref: release-5.0 + org: openshift + repo: metallb + interval: 72h + labels: + capability/intranet: intranet + ci-operator.openshift.io/cloud: equinix-ocp-metal + ci-operator.openshift.io/cloud-cluster-profile: equinix-ocp-metal + ci-operator.openshift.io/variant: dualstack-periodics + ci.openshift.io/generator: prowgen + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: periodic-ci-openshift-metallb-release-5.0-dualstack-periodics-metallb-e2e-metal-dualstack-periodic + reporter_config: + slack: + channel: '#team-metallb-ci-periodic' + job_states_to_report: + - success + - failure + - error + report_template: '{{if eq .Status.State "success"}} :slack-green: Job *{{.Spec.Job}}* + ended with *{{.Status.State}}*. <{{.Status.URL}}|View logs> {{else}} :failed: + job *{{.Spec.Job}}* ended with *{{.Status.State}}*. <{{.Status.URL}}|View + logs> {{end}}' + 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=metallb-e2e-metal-dualstack-periodic + - --variant=dualstack-periodics + command: + - ci-operator + env: + - name: HTTP_SERVER_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + ports: + - containerPort: 8080 + name: http + 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 diff --git a/ci-operator/step-registry/baremetalds/metallb-e2e/test/baremetalds-metallb-e2e-test-commands.sh b/ci-operator/step-registry/baremetalds/metallb-e2e/test/baremetalds-metallb-e2e-test-commands.sh index 204ad2b4d4e14..8a22d45466803 100644 --- a/ci-operator/step-registry/baremetalds/metallb-e2e/test/baremetalds-metallb-e2e-test-commands.sh +++ b/ci-operator/step-registry/baremetalds/metallb-e2e/test/baremetalds-metallb-e2e-test-commands.sh @@ -80,8 +80,9 @@ echo "### running metallb E2E tests" # setting +e so we won't exit in case of test failure and the artifacts are going to be copied set +e ssh "${SSHOPTS[@]}" "root@${IP}" "cd /root/dev-scripts/metallb/openshift-ci/ && ${vars} ./run_e2e.sh" -if [ $? -ne 0 ]; then - scp "${SSHOPTS[@]}" -r "root@${IP}:/logs/artifacts" "${ARTIFACT_DIR}" +TEST_EXIT_CODE=$? +scp "${SSHOPTS[@]}" -r "root@${IP}:/logs/artifacts" "${ARTIFACT_DIR}" +set -e +if [ "${TEST_EXIT_CODE}" -ne 0 ]; then exit 1 fi -set -e