Disable EOL version openshift-tests-private jobs - #82703
Conversation
Update cron schedules for openshift-tests-private periodic jobs to run only on Feb 29 (08:08 on day 29 of month 2), effectively disabling jobs for unsupported OpenShift versions 4.13, 4.15, and 4.17. Affects jobs across multiple architectures and configurations: - release-4.13: amd64-nightly, amd64-stable, arm64-nightly - release-4.15: amd64/arm64/multi nightly and stable variants - release-4.17: amd64/arm64/multi/ppc64le nightly and stable variants This prevents resource consumption on jobs testing end-of-life releases while preserving job definitions for historical reference.
WalkthroughAll listed OpenShift private test jobs across releases 4.13, 4.15, and 4.17 now use the common cron schedule ChangesRelease 4.13 schedule normalization
Release 4.15 schedule normalization
Release 4.17 schedule normalization
Estimated code review effort: 3 (Moderate) | ~30 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 15✅ Passed checks (15 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[REHEARSALNOTIFIER]
A total of 1457 jobs have been affected by this change. The above listing is non-exhaustive and limited to 25 jobs. A full list of affected jobs can be found here Interacting with pj-rehearseComment: Once you are satisfied with the results of the rehearsals, comment: |
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Prompt for all review comments with 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.
Inline comments:
In
`@ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml`:
- Line 53: Replace the disabled-job cron expression 8 8 29 2 * with a truly
impossible expression in all listed source configs:
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml:53-53,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly.yaml:87-87,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-stable.yaml:81-81,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__arm64-nightly.yaml:91-91,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yaml:41-41,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yaml:53-53,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yaml:82-82,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yaml:63-63,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yaml:44-44,
and
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable.yaml:44-44;
then regenerate the corresponding Prow jobs with make update.
In
`@ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly.yaml`:
- Line 110: Replace every affected cron value with the established
impossible-date parking pattern so these jobs never run. Update the cron entries
in all ten listed files: the 4.15 amd64 nightly, amd64 stable upgrade, amd64
stable, arm64 nightly upgrade, and arm64 nightly configurations; the 4.17 amd64
nightly upgrade-from-4.16, nightly upgrade-from-4.17, nightly, rollback-nightly,
and rollback-stable configurations.
In
`@ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable-4.15-upgrade-from-stable-4.14.yaml`:
- Line 77: Replace the valid leap-day cron schedule in each affected file with
an actually impossible parking date so these jobs remain disabled in all years.
Update the cron entries at the specified ranges in all nine listed files,
preserving the surrounding job configuration.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Central YAML (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 922d2ecc-da9e-415f-87c9-e81a2deeede0
⛔ Files ignored due to path filters (3)
ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13-periodics.yamlis excluded by!ci-operator/jobs/**ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15-periodics.yamlis excluded by!ci-operator/jobs/**ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17-periodics.yamlis excluded by!ci-operator/jobs/**
📒 Files selected for processing (39)
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__arm64-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-stable-4.15-upgrade-from-stable-4.14.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-nightly-4.15-upgrade-from-stable-4.14.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable-4.15-upgrade-from-stable-4.14.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-nightly-4.15-upgrade-from-stable-4.14.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-nightly-4.15-upgrade-from-stable-4.15.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly-4.17-upgrade-from-stable-4.16.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly-4.17-upgrade-from-stable-4.17.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-rollback-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-rollback-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-stable-4.17-upgrade-from-stable-4.16.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly-4.17-upgrade-from-stable-4.16.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly-4.17-upgrade-from-stable-4.17.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-stable-4.17-upgrade-from-stable-4.16.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly-4.17-upgrade-from-stable-4.16.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly-4.17-upgrade-from-stable-4.17.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable-4.17-upgrade-from-stable-4.16.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable-openshift-logging-6.3.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable.yamlci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__ppc64le-nightly.yaml
| tests: | ||
| - as: aro-f60 | ||
| cron: 35 2 14 1,3,5,7,9,11 * | ||
| cron: 8 8 29 2 * |
There was a problem hiding this comment.
🩺 Stability & Availability | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -eu
files=(
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-stable.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__arm64-nightly.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable.yaml
)
printf '%s\n' '--- exact cron occurrences ---'
rg -n -C 3 'cron: 8 8 29 2 \*|prerelease:|architecture: multi' "${files[@]}"
printf '%s\n' '--- concise file status/diff summary ---'
git status --short
git diff --stat -- "${files[@]}"
printf '%s\n' '--- nearby top-level job metadata ---'
for f in "${files[@]}"; do
echo "### $f"
sed -n '1,110p' "$f"
done
printf '%s\n' '--- related config/source files ---'
git ls-files ci-operator/config/openshift/openshift-tests-private | rg '(^|/)(openshift-openshift-tests-private|zz_generated_metadata|.*\.yaml$)' | head -200Repository: openshift/release
Length of output: 50374
🏁 Script executed:
#!/bin/bash
set -eu
files=(
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-stable.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__arm64-nightly.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yaml
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable.yaml
)
printf '%s\n' '--- exact cron occurrences ---'
rg -n -C 3 'cron: 8 8 29 2 \*|prerelease:|architecture: multi' "${files[@]}"
printf '%s\n' '--- concise file status/diff summary ---'
git status --short
git diff --stat -- "${files[@]}"
printf '%s\n' '--- related config/source files ---'
git ls-files ci-operator/config/openshift/openshift-tests-private | rg '(^|/)(openshift-openshift-tests-private|zz_generated_metadata|.*\.yaml$)' | head -200Repository: openshift/release
Length of output: 50374
🏁 Script executed:
#!/bin/bash
set -eu
base=ci-operator/config/openshift/openshift-tests-private
files=(
"$base/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml"
"$base/openshift-openshift-tests-private-release-4.13__amd64-nightly.yaml"
"$base/openshift-openshift-tests-private-release-4.13__amd64-stable.yaml"
"$base/openshift-openshift-tests-private-release-4.13__arm64-nightly.yaml"
"$base/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yaml"
"$base/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yaml"
"$base/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yaml"
"$base/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yaml"
"$base/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yaml"
"$base/openshift-openshift-tests-private-release-4.15__multi-stable.yaml"
)
echo '--- working tree ---'
git status --short
git diff --name-status -- "$base" ci-operator/jobs/openshift/openshift-tests-private | head -200
echo '--- counts in the ten cited files ---'
for f in "${files[@]}"; do
printf '%s: old_cron=%s prerelease=%s multi_arch=%s total_cron=%s\n' \
"$(basename "$f")" \
"$(grep -cF 'cron: 8 8 29 2 *' "$f" || true)" \
"$(grep -cE '^[[:space:]]+prerelease:' "$f" || true)" \
"$(grep -cF 'architecture: multi' "$f" || true)" \
"$(grep -cE '^[[:space:]]+cron:' "$f" || true)"
done
echo '--- all occurrences of the cited cron under the source directory, summarized by file ---'
rg -l -F 'cron: 8 8 29 2 *' "$base" | while read -r f; do
printf '%s: %s\n' "$f" "$(grep -cF 'cron: 8 8 29 2 *' "$f")"
done | sort
echo '--- examples of disabled cron conventions ---'
rg -n -F 'cron:' ci-operator/config/openshift/openshift-tests-private | rg '29 2|31 2|32|99|0 0' | head -100 || true
echo '--- cited lines with immediately preceding job names ---'
for f in "${files[@]}"; do
echo "### $f"
awk '
/cron: 8 8 29 2 \*/ {
for (i=NR-1; i>=1 && i>NR-4; i--) {
if (line[i] ~ /^[[:space:]]*- as:/) { print line[i] " -> " NR ":" $0; break }
}
}
{ line[NR]=$0 }
' "$f" | head -20
doneRepository: openshift/release
Length of output: 50373
🏁 Script executed:
#!/bin/bash
set -eu
base=ci-operator/config/openshift/openshift-tests-private
echo '--- working tree and cited-file summaries ---'
git status --short
for f in "$base"/*.yaml; do
n=$(grep -cF 'cron: 8 8 29 2 *' "$f" || true)
[ "$n" -gt 0 ] && printf '%s: %s\n' "$(basename "$f")" "$n"
done | sort
echo '--- disabled schedule conventions ---'
rg -n -F 'cron:' "$base" | rg '29 2|31 2|32|99|0 0' | head -100 || true
echo '--- generated job counterparts ---'
find ci-operator/jobs/openshift/openshift-tests-private -type f -maxdepth 1 -print 2>/dev/null | head -20 || trueRepository: openshift/release
Length of output: 32300
🏁 Script executed:
#!/bin/bash
set -eu
echo '--- cron behavior probe ---'
python3 - <<'PY'
import calendar
for year in (2027, 2028, 2029, 2032):
print(year, calendar.isleap(year), calendar.monthrange(year, 2)[1] >= 29)
PY
echo '--- repository documentation/comments for the leap-day convention ---'
rg -n -i -C 3 'leap.?day|disabled.*cron|cron.*disabled|29 2 \*|park.*job|periodic.*disabled' \
README.md CONTRIBUTING.md docs config ci-operator 2>/dev/null | head -250 || true
echo '--- generated Prow jobs for cited names ---'
rg -n -F -e 'aro-f60' -e 'aws-c2s-ipi-disc-priv-fips-f60' -e 'azure-ipi-disc-fullyprivate-f60' \
ci-operator/jobs 2>/dev/null | head -100 || true
echo '--- source/config and generated-file relationships ---'
rg -n -F -e 'zz_generated_metadata' -e 'make update' -e 'ci-operator/config' CONTRIBUTING.md README.md docs Makefile 2>/dev/null | head -200 || true
echo '--- all cited files and their tracked state ---'
for f in \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-stable.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__arm64-nightly.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yaml \
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable.yaml
do
printf '%s tracked=%s\n' "$f" "$(git ls-files --error-unmatch "$f" >/dev/null 2>&1 && echo yes || echo no)"
doneRepository: openshift/release
Length of output: 50373
🏁 Script executed:
#!/bin/bash
set -eu
python3 - <<'PY'
import calendar
for year in (2027, 2028, 2029, 2032):
print(f"{year}: February 29 exists = {calendar.isleap(year)}")
PY
echo '--- relevant repository guidance ---'
rg -n -i -C 3 'leap.?day|disabled.*cron|cron.*disabled|29 2 \*|make update' \
README.md CONTRIBUTING.md docs Makefile ci-operator 2>/dev/null | head -250 || true
echo '--- cited job names in generated Prow files ---'
rg -n -F -e 'aro-f60' -e 'aws-c2s-ipi-disc-priv-fips-f60' \
-e 'azure-ipi-disc-fullyprivate-f60' ci-operator/jobs 2>/dev/null | head -100 || trueRepository: openshift/release
Length of output: 49592
🏁 Script executed:
#!/bin/bash
set -eu
for f in \
ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13-periodics.yaml \
ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15-periodics.yaml
do
echo "### $f"
awk '
/name: periodic-ci-openshift-openshift-tests-private-release-(4.13|4.15).*-(aro-f60|aws-c2s-ipi-disc-priv-fips-f60)/ {
print NR ":" $0
for (i=1; i<=20; i++) {
if (getline > 0) {
print NR ":" $0
if ($0 ~ /^ cron:/) break
}
}
}
' "$f" | head -80
done
echo '--- generated leap-day schedule counts ---'
rg -l -F 'cron: 8 8 29 2 *' ci-operator/jobs/openshift/openshift-tests-private | sort | while read -r f; do
n=$(grep -cF 'cron: 8 8 29 2 *' "$f")
printf '%s: %s\n' "$f" "$n"
done | rg '4\.13|4\.15' || trueRepository: openshift/release
Length of output: 7949
Use a truly impossible cron expression for disabled jobs. 8 8 29 2 * runs on February 29 in leap years, including 2028. Replace all matching entries in the affected source configs and regenerate the corresponding Prow jobs with make update.
📍 Affects 10 files
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml#L53-L53(this comment)ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly.yaml#L87-L87ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-stable.yaml#L81-L81ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__arm64-nightly.yaml#L91-L91ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yaml#L41-L41ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yaml#L53-L53ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yaml#L82-L82ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yaml#L63-L63ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yaml#L44-L44ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable.yaml#L44-L44
🤖 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
`@ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml`
at line 53, Replace the disabled-job cron expression 8 8 29 2 * with a truly
impossible expression in all listed source configs:
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly-4.13-upgrade-from-aro-4.13.yaml:53-53,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-nightly.yaml:87-87,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__amd64-stable.yaml:81-81,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.13__arm64-nightly.yaml:91-91,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.14.yaml:41-41,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-aro-4.15.yaml:53-53,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.14.yaml:82-82,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly-4.15-upgrade-from-stable-4.15.yaml:63-63,
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable-4.15-upgrade-from-stable-4.14.yaml:44-44,
and
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-stable.yaml:44-44;
then regenerate the corresponding Prow jobs with make update.
Source: Learnings
| tests: | ||
| - as: aws-c2s-ipi-disc-priv-fips-f60 | ||
| cron: 31 3 10 2,4,6,8,10,12 * | ||
| cron: 8 8 29 2 * |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
Use an actually impossible parking date.
8 8 29 2 * runs at 08:08 on February 29 in leap years—the next run is February 29, 2028—so these jobs are not disabled. Replace every affected value with the established impossible-date pattern, such as 8 8 31 2 *.
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly.yaml#L110-L110: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-stable-4.15-upgrade-from-stable-4.14.yaml#L67-L67: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-stable.yaml#L89-L89: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-nightly-4.15-upgrade-from-stable-4.14.yaml#L79-L79: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-nightly.yaml#L93-L93: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly-4.17-upgrade-from-stable-4.16.yaml#L80-L80: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly-4.17-upgrade-from-stable-4.17.yaml#L80-L80: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly.yaml#L124-L124: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-rollback-nightly.yaml#L66-L66: replace all affected cron values.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-rollback-stable.yaml#L41-L41: replace the cron value.
📍 Affects 10 files
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly.yaml#L110-L110(this comment)ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-stable-4.15-upgrade-from-stable-4.14.yaml#L67-L67ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-stable.yaml#L89-L89ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-nightly-4.15-upgrade-from-stable-4.14.yaml#L79-L79ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-nightly.yaml#L93-L93ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly-4.17-upgrade-from-stable-4.16.yaml#L80-L80ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly-4.17-upgrade-from-stable-4.17.yaml#L80-L80ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-nightly.yaml#L124-L124ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-rollback-nightly.yaml#L66-L66ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-rollback-stable.yaml#L41-L41
🤖 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
`@ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__amd64-nightly.yaml`
at line 110, Replace every affected cron value with the established
impossible-date parking pattern so these jobs never run. Update the cron entries
in all ten listed files: the 4.15 amd64 nightly, amd64 stable upgrade, amd64
stable, arm64 nightly upgrade, and arm64 nightly configurations; the 4.17 amd64
nightly upgrade-from-4.16, nightly upgrade-from-4.17, nightly, rollback-nightly,
and rollback-stable configurations.
| tests: | ||
| - as: aws-ipi-disc-priv-sts-ep-f60 | ||
| cron: 44 16 16 1,3,5,7,9,11 * | ||
| cron: 8 8 29 2 * |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
Shared cron disablement defect. All affected jobs use the valid leap-year schedule 8 8 29 2 *, so they still run on February 29, 2028 and subsequent leap years.
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable-4.15-upgrade-from-stable-4.14.yaml#L77-L77: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable.yaml#L86-L86: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-nightly-4.15-upgrade-from-stable-4.14.yaml#L66-L66: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-nightly-4.15-upgrade-from-stable-4.15.yaml#L59-L59: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-stable-4.17-upgrade-from-stable-4.16.yaml#L63-L63: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-stable.yaml#L89-L89: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly-4.17-upgrade-from-stable-4.16.yaml#L75-L75: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly-4.17-upgrade-from-stable-4.17.yaml#L75-L75: replace the schedule with an actually impossible parking date.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly.yaml#L99-L99: replace the schedule with an actually impossible parking date.
📍 Affects 9 files
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable-4.15-upgrade-from-stable-4.14.yaml#L77-L77(this comment)ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable.yaml#L86-L86ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-nightly-4.15-upgrade-from-stable-4.14.yaml#L66-L66ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__multi-nightly-4.15-upgrade-from-stable-4.15.yaml#L59-L59ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-stable-4.17-upgrade-from-stable-4.16.yaml#L63-L63ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__amd64-stable.yaml#L89-L89ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly-4.17-upgrade-from-stable-4.16.yaml#L75-L75ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly-4.17-upgrade-from-stable-4.17.yaml#L75-L75ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-nightly.yaml#L99-L99
🤖 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
`@ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.15__arm64-stable-4.15-upgrade-from-stable-4.14.yaml`
at line 77, Replace the valid leap-day cron schedule in each affected file with
an actually impossible parking date so these jobs remain disabled in all years.
Update the cron entries at the specified ranges in all nine listed files,
preserving the surrounding job configuration.
Source: Learnings
| tests: | ||
| - as: aws-ipi-disc-priv-sts-ep-f28 | ||
| cron: 32 15 22 * * | ||
| cron: 8 8 29 2 * |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
Regenerate the periodic Prow-job configuration.
Cron changes alter CI job scheduling, but no generated job updates are included. Run make update and commit the generated output.
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-stable-4.17-upgrade-from-stable-4.16.yaml#L69-L69: regenerate after the schedule change.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-stable.yaml#L86-L86: regenerate after the schedule changes.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly-4.17-upgrade-from-stable-4.16.yaml#L64-L64: regenerate after the schedule changes.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly-4.17-upgrade-from-stable-4.17.yaml#L64-L64: regenerate after the schedule changes.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly.yaml#L69-L69: regenerate after the schedule changes.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable-4.17-upgrade-from-stable-4.16.yaml#L59-L59: regenerate after the schedule changes.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable-openshift-logging-6.3.yaml#L78-L78: regenerate after the schedule change.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable.yaml#L44-L44: regenerate after the schedule changes.ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__ppc64le-nightly.yaml#L84-L84: regenerate after the schedule changes.
As per coding guidelines, CI job modifications must run make update to regenerate Prow jobs and metadata.
📍 Affects 9 files
ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-stable-4.17-upgrade-from-stable-4.16.yaml#L69-L69(this comment)ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__arm64-stable.yaml#L86-L86ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly-4.17-upgrade-from-stable-4.16.yaml#L64-L64ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly-4.17-upgrade-from-stable-4.17.yaml#L64-L64ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-nightly.yaml#L69-L69ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable-4.17-upgrade-from-stable-4.16.yaml#L59-L59ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable-openshift-logging-6.3.yaml#L78-L78ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__multi-stable.yaml#L44-L44ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-4.17__ppc64le-nightly.yaml#L84-L84
Source: Coding guidelines
|
@jogeo: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jogeo, tomasdavidorg The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/pj-rehearse ack |
|
@jogeo: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel. |
Update cron schedules for openshift-tests-private periodic jobs to run
only on Feb 29, effectively disabling jobs
for unsupported OpenShift versions 4.13, 4.15, and 4.17.
Affects jobs across multiple architectures and configurations:
This prevents resource consumption on jobs testing end-of-life releases
while preserving job definitions for historical reference.
Summary by CodeRabbit
openshift-tests-privatejobs for unsupported OpenShift 4.13, 4.15, and 4.17 releases by changing their schedules to8 8 29 2 *(08:08 UTC on February 29).