Skip to content

Commit 6089b08

Browse files
authored
SREP-4403: Add rosa-e2e nightly jobs to testgrid allow-list (#77976)
* SREP-4403: Add rosa-e2e nightly jobs to testgrid allow-list Add rosa-e2e nightly and daily-status jobs so they get indexed into BigQuery via testgrid, enabling Sippy to ingest test results for the rosa-stage dashboard. Jira: TRT-2588, SREP-4403 * SREP-4403: Use ci-status-report.sh for daily status job Replace inline Sippy-only query with the ci-status-report.sh script that checks Prow GCS directly and includes Sippy data when available. Jira: SREP-4403, TRT-2588 * SREP-4403: Update daily status to use script and enrich reporter template Call ci-status-report.sh instead of inline Sippy query. The script checks all tracked ROSA jobs via Prow GCS and adds Sippy data when available. Enrich the slack_reporter_config template with links to Sippy and the ROSA Prow jobs dashboard. Jira: SREP-4403, TRT-2588 * Fix STS account-roles fallback to use published policy versions The fallback was querying rosa list versions (installable cluster versions) which is different from versions with published IAM policies. Change to query rosa list account-roles instead, picking the latest version that has existing policies in the AWS account. Also add || true to prevent pipefail from crashing the script before the fallback check runs. Fixes Classic STS conformance failures on 4.19, 4.20, and 4.22 where nightly-channel policies aren't published in staging. Jira: SREP-4403 * Fix testgrid allow-list: use 'informing' release_type rosa-e2e is not a valid release_type. Valid values are: informing, broken, generic-informing, osde2e, olm. * Fix version sort to use sort -V for semantic ordering jq's sort is lexicographic (4.9 > 4.10). Use sort -Vu for proper version ordering when selecting the fallback version from existing account roles.
1 parent 2f11fbd commit 6089b08

4 files changed

Lines changed: 18 additions & 32 deletions

File tree

ci-operator/config/openshift-online/rosa-e2e/openshift-online-rosa-e2e-main.yaml

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -41,29 +41,7 @@ tests:
4141
container:
4242
from: src
4343
- as: rosa-ci-daily-status
44-
commands: |
45-
#!/bin/bash
46-
set -euo pipefail
47-
SIPPY_API="https://sippy.dptools.openshift.org/api/jobs"
48-
RELEASE="rosa-stage"
49-
echo "Querying Sippy for ${RELEASE} job results..."
50-
response=$(curl -sf "${SIPPY_API}?release=${RELEASE}&limit=100" 2>/dev/null) || {
51-
echo "Warning: Failed to fetch data from Sippy API"
52-
response="[]"
53-
}
54-
total=$(echo "${response}" | jq 'length')
55-
if [[ "${total}" == "0" ]]; then
56-
echo "No jobs found in Sippy for ${RELEASE}"
57-
exit 1
58-
fi
59-
passing=$(echo "${response}" | jq '[.[] | select(.current_pass_percentage >= 80)] | length')
60-
failing=$((total - passing))
61-
echo "ROSA CI Status: ${passing}/${total} jobs healthy, ${failing} failing"
62-
echo "${response}" | jq -r '.[] | "\(.name): \(.current_pass_percentage)%"' | sort
63-
if [[ "${failing}" -gt 0 ]]; then
64-
echo "Some jobs are below threshold"
65-
exit 1
66-
fi
44+
commands: scripts/ci-status-report.sh
6745
container:
6846
from: src
6947
cron: 0 14 * * *

ci-operator/jobs/openshift-online/rosa-e2e/openshift-online-rosa-e2e-main-periodics.yaml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -343,9 +343,12 @@ periodics:
343343
- failure
344344
- error
345345
report_template: '{{if eq .Status.State "success"}} :white_check_mark: ROSA
346-
CI Daily Status: all jobs healthy. <{{.Status.URL}}|View logs> | <https://sippy.dptools.openshift.org/sippy-ng/release/rosa-stage|Sippy>
347-
{{else}} :x: ROSA CI Daily Status: some jobs failing. <{{.Status.URL}}|View
348-
logs> | <https://sippy.dptools.openshift.org/sippy-ng/release/rosa-stage|Sippy>
346+
CI Daily Status: all tracked jobs healthy. <{{.Status.URL}}|Full report> |
347+
<https://sippy.dptools.openshift.org/sippy-ng/release/rosa-stage|Sippy> |
348+
<https://prow.ci.openshift.org/?type=periodic&job=*rosa*|All ROSA jobs> {{else}}
349+
:x: ROSA CI Daily Status: some jobs failing. <{{.Status.URL}}|Full report>
350+
| <https://sippy.dptools.openshift.org/sippy-ng/release/rosa-stage|Sippy>
351+
| <https://prow.ci.openshift.org/?type=periodic&job=*rosa*|All ROSA jobs>
349352
{{end}}'
350353
spec:
351354
containers:

ci-operator/step-registry/rosa/sts/account-roles/create/rosa-sts-account-roles-create-commands.sh

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -79,14 +79,15 @@ if [[ "$CHANNEL_GROUP" != "stable" ]]; then
7979
fi
8080

8181
# Verify the version has published policies. If not, fall back to the latest
82-
# available version. This handles cases where nightly builds for unreleased
83-
# versions (e.g., 4.23, 5.0) don't have IAM policies published yet.
82+
# version that has existing account-role policies in the AWS account.
8483
if ! rosa list account-roles --output json 2>/dev/null | jq -e --arg v "${OPENSHIFT_VERSION}" '.[] | select(.Version // "" | startswith($v))' > /dev/null 2>&1; then
85-
echo "Version ${OPENSHIFT_VERSION} may not have published policies, checking available versions..."
86-
available_version=$(rosa list versions --channel-group ${CHANNEL_GROUP} ${CLUSTER_SWITCH} -o json 2>/dev/null | jq -r '.[].raw_id' | cut -d'.' -f1,2 | sort -Vu | tail -1)
87-
if [[ -n "${available_version}" ]]; then
88-
echo "Falling back from ${OPENSHIFT_VERSION} to ${available_version}"
84+
echo "Version ${OPENSHIFT_VERSION} may not have published policies, checking account roles for available versions..."
85+
available_version=$(rosa list account-roles --output json 2>/dev/null | jq -r '.[].Version // empty' 2>/dev/null | cut -d'.' -f1,2 | sort -Vu | tail -1 || true)
86+
if [[ -n "${available_version}" && "${available_version}" != "${OPENSHIFT_VERSION}" ]]; then
87+
echo "Falling back from ${OPENSHIFT_VERSION} to ${available_version} (latest with published policies)"
8988
OPENSHIFT_VERSION="${available_version}"
89+
else
90+
echo "WARNING: No fallback version found in account roles, continuing with ${OPENSHIFT_VERSION}"
9091
fi
9192
fi
9293

core-services/testgrid-config-generator/_allow-list.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@ periodic-ci-openshift-osde2e-main-osd-aws-upgrade-latest-default-y-minus-1-to-la
3838
periodic-ci-openshift-osde2e-main-osd-aws-upgrade-latest-default-z-minus-1-to-latest-default-z: osde2e
3939
periodic-ci-openshift-osde2e-main-osd-aws-upgrade-latest-default-y-to-latest-y-plus-1: osde2e
4040
periodic-ci-openshift-osde2e-main-osd-aws-upgrade-latest-default-y-plus-1-to-latest-y: osde2e
41+
periodic-ci-openshift-online-rosa-e2e-main-periodics-rosa-hcp-e2e-nightly-4-20: informing
42+
periodic-ci-openshift-online-rosa-e2e-main-periodics-rosa-hcp-e2e-nightly-4-21: informing
43+
periodic-ci-openshift-online-rosa-e2e-main-periodics-rosa-hcp-e2e-nightly-4-22: informing
44+
periodic-ci-openshift-online-rosa-e2e-main-rosa-ci-daily-status: informing
4145
periodic-ci-redhat-chaos-krkn-hub-main-krkn-hub-tests: generic-informing
4246
periodic-ci-openshift-operator-framework-olm-master-periodics-e2e-gcp-console-olm: olm
4347
periodic-ci-openshift-operator-framework-olm-master-periodics-e2e-gcp-olm: olm

0 commit comments

Comments
 (0)