Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions _releases/ocp-4.23-test-jobs-amd64.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{
"nightly": [
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-aws-ipi-f999"
},
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-azure-ipi-fips-f999"
},
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-gcp-ipi-f999"
},
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-aws-ipi-disruptive-f999"
},
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-nightly-4.23-upgrade-from-stable-4.22-gcp-ipi-f999",
"upgrade": true
},
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-nightly-4.23-upgrade-from-stable-4.23-aws-ipi-f999",
"upgrade": true
}
],
"stable": [
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-stable-4.23-upgrade-from-stable-4.22-aws-ipi-f999",
"upgrade": true
},
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-stable-4.23-upgrade-from-stable-4.23-azure-ipi-fips-f999",
"upgrade": true
},
{
"prowJob": "periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-stable-4.23-upgrade-from-stable-4.23-gcp-ipi-f999",
"upgrade": true
}
]
}
Comment on lines +1 to +38

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Critical: PR title mentions 4.22, but this file adds 4.23 configuration.

The PR title states "Add 4.22 test job" but the filename is ocp-4.23-test-jobs-amd64.json and all job definitions reference version 4.23. This discrepancy between the PR title and the actual changes could cause significant confusion during code review and release tracking.

Please update the PR title to accurately reflect that this adds 4.23 configuration, not 4.22.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@_releases/ocp-4.23-test-jobs-amd64.json` around lines 1 - 38, The PR title
indicates this adds 4.22 configuration but the actual changes in the file and
all prowJob definitions reference 4.23 (as seen in job names like
"periodic-ci-openshift-openshift-tests-private-release-4.23-automated-release-aws-ipi-f999"
and other 4.23 references throughout the nightly and stable sections). Update
the PR title to accurately reflect that this adds 4.23 test job configuration,
not 4.22, to align with the actual changes being made.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Check if other 4.23 version support updates exist in the repository

echo "=== Checking Jira notificator for 4.23 references ==="
rg -n "4\.23|4.23" oar/notificator/jira_notificator.py || echo "No 4.23 references found in Jira notificator"

echo -e "\n=== Checking ConfigStore for 4.23 references ==="
rg -n "4\.23|4.23" oar/core/configstore.py config_store.json 2>/dev/null || echo "No 4.23 references found in ConfigStore"

echo -e "\n=== Checking for 4.23 stage-testing pipeline configs ==="
fd -e yaml -e yml . --exec sh -c 'if rg -q "4\.23.*stage" {}; then echo "Found in: {}" && rg -n "4\.23.*stage" {}; fi'

Repository: openshift/release-tests

Length of output: 314


🏁 Script executed:

#!/bin/bash
# Check how existing versions are referenced in Jira notificator

echo "=== Finding version references in Jira notificator ==="
rg -n "4\.(1[0-9]|2[0-3])" oar/notificator/jira_notificator.py | head -20

echo -e "\n=== Checking if Jira queries are dynamic or version-specific ==="
rg -B5 -A5 "supported.*version|version.*support|OCPBUGS" oar/notificator/jira_notificator.py | head -40

echo -e "\n=== Looking for 4.22 and 4.21 in test report templates ==="
rg -l "4\.22|4\.21" . --type yaml --type json 2>/dev/null | grep -E "(template|report|worksheet)" || echo "No version-specific templates found"

echo -e "\n=== Checking ConfigStore for how versions are registered ==="
head -100 oar/core/configstore.py | grep -A30 "class ConfigStore"

echo -e "\n=== Looking for Jenkins ci-profile definitions for stage-testing ==="
fd -type f -name "*.py" . --exec grep -l "stage.*ci.*profile\|ci.*profile.*stage" {} \; 2>/dev/null | head -5

Repository: openshift/release-tests

Length of output: 2090


🏁 Script executed:

#!/bin/bash
# More targeted search for missing version support items

echo "=== Searching for test report templates and version configuration ==="
fd -type f \( -name "*template*" -o -name "*worksheet*" \) . --exec grep -l "4\.(1[0-9]|2[0-3])" {} \; 2>/dev/null | head -10

echo -e "\n=== Looking for stage-testing Jenkins job definition ==="
rg -n "stage.*testing\|stage.*pipeline\|stage-testing" oar/core/jenkins.py -A 5

echo -e "\n=== Checking Prow config for image-consistency-check version handling ==="
fd -type f -name "*.py" . --exec grep -l "image.*consistency.*check\|image-consistency" {} \; 2>/dev/null | xargs grep -l "4\.2" 2>/dev/null | head -3

echo -e "\n=== Searching for ConfigStore entries that reference specific versions ==="
rg -n "4\.22|4\.21|4\.20" oar/core/configstore.py

echo -e "\n=== Looking for config_store.json structure for version-specific mappings ==="
cat config_store.json 2>/dev/null | head -50

Repository: openshift/release-tests

Length of output: 425


🏁 Script executed:

#!/bin/bash
# Check more carefully for what needs to be updated

echo "=== Exact check: Is 4.23.z in Jira notificator's supported versions? ==="
rg "4\.23\.z|4.23.z" oar/notificator/jira_notificator.py && echo "FOUND: 4.23.z is included" || echo "NOT FOUND: 4.23.z is missing"

echo -e "\n=== Show the exact line from Jira notificator ==="
rg -n "Target Version" oar/notificator/jira_notificator.py

echo -e "\n=== Check if there are test report template files in the repo ==="
find . -type f -name "*template*" -o -name "*test*report*" 2>/dev/null | grep -v ".git" | head -20

echo -e "\n=== List all files matching job registry pattern ==="
find . -name "*test-jobs*" -type f 2>/dev/null

echo -e "\n=== Check how job registry files are discovered/used in code ==="
rg -n "test-jobs.*\.json\|test-jobs" oar/ prow/ --type py | head -20

Repository: openshift/release-tests

Length of output: 1221


🏁 Script executed:

#!/bin/bash
# Check if version support is static or dynamic

echo "=== Verify if 4.23.z needs to be added to Jira notificator ==="
cat oar/notificator/jira_notificator.py | sed -n '735,750p'

echo -e "\n=== Check create_test_report.py to see if it handles versions dynamically ==="
cat oar/cli/cmd_create_test_report.py | head -100

echo -e "\n=== Look for any documentation about version support ==="
rg -l "4\.23|Version.*Support\|when adding.*version" . --type md 2>/dev/null

echo -e "\n=== Check AGENTS.md for version support statements ==="
rg -B2 -A2 "4\.23|when adding support" AGENTS.md 2>/dev/null || echo "Not found"

echo -e "\n=== Check if version is dynamically validated anywhere ==="
rg -n "validate.*version|supported.*version" oar/core/util.py

Repository: openshift/release-tests

Length of output: 4269


🏁 Script executed:

#!/bin/bash
# Final verification of remaining items

echo "=== Item 3: Check test report templates - are they version-specific? ==="
rg -n "worksheet\|WorksheetManager\|template" oar/cli/cmd_create_test_report.py | head -15

echo -e "\n=== Item 4: Jenkins stage-testing job parameters ==="
rg -n "stage_job\|call_stage_job\|ci.profile" oar/core/jenkins.py -A 5 | head -30

echo -e "\n=== Item 5: Prow image-consistency-check configuration ==="
fd -type f -name "*.py" prow/ . --exec grep -l "image.*consistency" {} \; 2>/dev/null | head -3

echo -e "\n=== Item 6: ConfigStore version registration ==="
rg -n "4\.22|4\.21|release.*version\|version.*config" oar/core/configstore.py | grep -E "4\.|version" | head -20

echo -e "\n=== Check if ConfigStore loads version-specific data ==="
rg -B3 -A3 "def __init__" oar/core/configstore.py | head -30

echo -e "\n=== Grep for any hardcoded version lists in the codebase ==="
rg -n "4\.12.*4\.13.*4\.14|supported.*version.*4\." oar/ --type py

Repository: openshift/release-tests

Length of output: 867


Add 4.23.z to Jira notificator's supported versions list

While the job registry configuration for 4.23 is included, the Jira notificator hardcodes a list of supported versions at oar/notificator/jira_notificator.py:741 that currently includes versions 4.12.z through 4.22.z. The version 4.23.z must be added to this list:

"AND status = ON_QA AND 'Target Version' in (4.12.z, 4.13.z, 4.14.z, 4.15.z, 4.16.z, 4.17.z, 4.18.z, 4.19.z, 4.20.z, 4.21.z, 4.22.z, 4.23.z)"

The other items from the coding guidelines (test report templates, Jenkins ci-profiles, Prow image-consistency-check, ConfigStore) appear to use dynamic version handling and do not require explicit updates for each new version.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@_releases/ocp-4.23-test-jobs-amd64.json` around lines 1 - 38, Update the Jira
notificator to include version 4.23.z in its supported versions list. Locate the
hardcoded JQL query string in oar/notificator/jira_notificator.py (around line
741) that contains the 'Target Version' condition with versions 4.12.z through
4.22.z, and add 4.23.z to the end of this comma-separated list to enable Jira
notifications for the new release version.

Source: Coding guidelines

2 changes: 1 addition & 1 deletion tools/auto_release_test_dashboard.py
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ def load_test_results(release='4.12'):
with cola:
release = st.selectbox(
'Choose minor release',
("4.12", "4.13", "4.14", "4.15", "4.16", "4.17", "4.18", "4.19", "4.20", "4.21", "4.22", "5.0")
("4.12", "4.13", "4.14", "4.15", "4.16", "4.17", "4.18", "4.19", "4.20", "4.21", "4.22", "4.23", "5.0")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

PR title mentions 4.22, but this adds 4.23 to the dashboard.

Consistent with the job registry file, this line adds support for release "4.23" to the dashboard selector, not "4.22" as stated in the PR title. The PR title should be corrected to match the actual version being added.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@tools/auto_release_test_dashboard.py` at line 123, The PR title incorrectly
states that version 4.22 is being added to the dashboard, but the actual code
change in the version tuple (containing versions like 4.12 through 4.23) shows
that version 4.23 is being added instead. Update the PR title to accurately
reflect that 4.23 is the version being added to the
auto_release_test_dashboard.py selector, ensuring consistency with the actual
code changes and the job registry file.

)
# clear cache manually if you want to get latest results
with colb:
Expand Down