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
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@ machine-config 41m7s - Working towards 4.20.0-0.nightly-2025-08-19-18
Control Plane Nodes
NAME ASSESSMENT PHASE VERSION EST MESSAGE
ci-op-pw3ghqzh-bb5c4-pdhfc-master-1 Degraded Updating 4.20.0-0.nightly-2025-08-12-153542 ? failed to run command nice (6 tries): [timed out waiting for the condition, running nice -- ionice -c 3 podman pull -q --authfile /var/lib/kubelet/config.json quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0 failed: time="2025-08-19T22:13:54Z" level=warning msg="Failed, retrying in 1s ... (1/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:40349->168.63.129.16:53: i/o timeout"
time="2025-08-19T22:14:05Z" level=warning msg="Failed, retrying in 1s ... (2/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:36467->168.63.129.16:53: i/o timeout"
time="2025-08-19T22:14:16Z" level=warning msg="Failed, retrying in 1s ... (3/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:44244->168.63.129.16:53: i/o timeout"
Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get "https://quay.io/v2/": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:48400->168.63.129.16:53: i/o timeout
: exit status 125]
ci-op-pw3ghqzh-bb5c4-pdhfc-master-0 Outdated Pending 4.20.0-0.nightly-2025-08-12-153542 ?
ci-op-pw3ghqzh-bb5c4-pdhfc-master-2 Completed Updated 4.20.0-0.nightly-2025-08-19-180353 -
time="2025-08-19T22:14:05Z" level=warning msg="Failed, retrying in 1s ... (2/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:36467->168.63.129.16:53: i/o timeout"
time="2025-08-19T22:14:16Z" level=warning msg="Failed, retrying in 1s ... (3/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:44244->168.63.129.16:53: i/o timeout"
Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get "https://quay.io/v2/": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:48400->168.63.129.16:53: i/o timeout
: exit status 125]
ci-op-pw3ghqzh-bb5c4-pdhfc-master-0 Outdated Pending 4.20.0-0.nightly-2025-08-12-153542 ?
ci-op-pw3ghqzh-bb5c4-pdhfc-master-2 Completed Updated 4.20.0-0.nightly-2025-08-19-180353 -

= Worker Upgrade =

Expand Down
12 changes: 6 additions & 6 deletions pkg/cli/admin/upgrade/status/examples/ocpbugs-60768.output
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ Operator Health: 31 Healthy, 3 Available but degraded
Control Plane Nodes
NAME ASSESSMENT PHASE VERSION EST MESSAGE
ci-op-pw3ghqzh-bb5c4-pdhfc-master-1 Degraded Updating 4.20.0-0.nightly-2025-08-12-153542 ? failed to run command nice (6 tries): [timed out waiting for the condition, running nice -- ionice -c 3 podman pull -q --authfile /var/lib/kubelet/config.json quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0 failed: time="2025-08-19T22:13:54Z" level=warning msg="Failed, retrying in 1s ... (1/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:40349->168.63.129.16:53: i/o timeout"
time="2025-08-19T22:14:05Z" level=warning msg="Failed, retrying in 1s ... (2/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:36467->168.63.129.16:53: i/o timeout"
time="2025-08-19T22:14:16Z" level=warning msg="Failed, retrying in 1s ... (3/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:44244->168.63.129.16:53: i/o timeout"
Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get "https://quay.io/v2/": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:48400->168.63.129.16:53: i/o timeout
: exit status 125]
ci-op-pw3ghqzh-bb5c4-pdhfc-master-0 Outdated Pending 4.20.0-0.nightly-2025-08-12-153542 ?
ci-op-pw3ghqzh-bb5c4-pdhfc-master-2 Completed Updated 4.20.0-0.nightly-2025-08-19-180353 -
time="2025-08-19T22:14:05Z" level=warning msg="Failed, retrying in 1s ... (2/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:36467->168.63.129.16:53: i/o timeout"
time="2025-08-19T22:14:16Z" level=warning msg="Failed, retrying in 1s ... (3/3). Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get \"https://quay.io/v2/\": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:44244->168.63.129.16:53: i/o timeout"
Error: initializing source docker://quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:56bab0cd6a692bb7021640889ca69a11d6fc6df1af210c4e24d4feef81c6d7b0: pinging container registry quay.io: Get "https://quay.io/v2/": dial tcp: lookup quay.io on 168.63.129.16:53: read udp 10.0.0.6:48400->168.63.129.16:53: i/o timeout
: exit status 125]
ci-op-pw3ghqzh-bb5c4-pdhfc-master-0 Outdated Pending 4.20.0-0.nightly-2025-08-12-153542 ?
ci-op-pw3ghqzh-bb5c4-pdhfc-master-2 Completed Updated 4.20.0-0.nightly-2025-08-19-180353 -

= Worker Upgrade =

Expand Down
9 changes: 8 additions & 1 deletion pkg/cli/admin/upgrade/status/workerpool.go
Original file line number Diff line number Diff line change
Expand Up @@ -557,7 +557,14 @@ func (pool *poolDisplayData) WriteNodes(w io.Writer, detailed bool) {
_, _ = tabw.Write([]byte(node.Phase.String() + "\t"))
_, _ = tabw.Write([]byte(version + "\t"))
_, _ = tabw.Write([]byte(node.Estimate + "\t"))
_, _ = tabw.Write([]byte(node.Message + "\n"))
lines := strings.Split(node.Message, "\n")
for i, line := range lines {
if i == 0 {
_, _ = tabw.Write([]byte(line + "\n"))
} else {
_, _ = tabw.Write([]byte("\t\t\t\t\t" + line + "\n"))
}
}
Comment on lines +560 to +567

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🩺 Stability & Availability | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail
rg -n -C 3 '\bWriteNodes\s*\(' pkg/cli/admin/upgrade/status

Repository: openshift/oc

Length of output: 1828


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== workerpool WriteNodes area =="
sed -n '488,572p' pkg/cli/admin/upgrade/status/workerpool.go

echo
echo "== status WriteNodes call sites area =="
sed -n '346,372p' pkg/cli/admin/upgrade/status/status.go

echo
echo "== poolDisplayData WriteNodes definition/uses in workerpool =="
rg -n -C 2 'func \(pool \*poolDisplayData\) WriteNodes|WriteNodes\s*\(' pkg/cli/admin/upgrade/status/workerpool.go pkg/cli/admin/upgrade/status/status.go

Repository: openshift/oc

Length of output: 5320


Return WriteNodes output errors to callers.

WriteNodes ignores errors from fmt.Fprintf, tabwriter.Write, and tabwriter.Flush, so an io.Writer failure can leave the status output incomplete and be hidden at the two call sites in pkg/cli/admin/upgrade/status/status.go. Make WriteNodes return an error and propagate the failure up the command path.

🤖 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 `@pkg/cli/admin/upgrade/status/workerpool.go` around lines 560 - 567, Update
WriteNodes to return an error and check/propagate failures from fmt.Fprintf,
tabwriter.Write, and tabwriter.Flush, including errors while writing node
messages. Update both WriteNodes call sites in status.go to handle and return
the propagated error through the command path.

Source: Path instructions

}
tabw.Flush()
if total > 0 {
Expand Down