Resolve payload pull spec#3
Merged
hongkailiu merged 4 commits intopetr-muller:mainfrom Mar 6, 2026
Merged
Conversation
Collaborator
Author
|
a cluster bot cluster is usually with version like Hmm. The change from this pull is not that useful. |
Collaborator
Author
|
/hold |
Collaborator
Author
|
Collaborator
Author
|
No Prow. But still ... /hold cancel |
For channel risks-always, the nodeB in the graph will get the real pull spec for the payload. I _think_ I need only it for the test and thus do not extend it to all nodes. When we do, we might want some cache to avoid the workload for quay.io.
There was a problem hiding this comment.
Pull request overview
This PR updates fauxinnati’s risks-always channel behavior so that the “nodeB” payload can use a real quay.io pull spec (when resolvable), enabling more realistic payload testing for conditional-risk scenarios.
Changes:
- Refactored node construction to allow injecting a specific payload pull spec plus optional extra metadata.
- Added a pull-spec resolution path for
risks-alwaysnodeB that queries quay.io and falls back to an approximate prerelease tag. - Introduced logrus logging and a retryable HTTP client for outbound quay.io requests.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| pkg/fauxinnati/types.go | Adds NewNodeWithPullSpec to support constructing nodes with a specified payload and metadata. |
| pkg/fauxinnati/server.go | Wires in a resolver + HTTP client; uses resolved pull spec for risks-always nodeB; adds request/start logging. |
| pkg/fauxinnati/release.go | Implements quay.io HEAD-based pull spec resolution by digest for version/arch tags. |
| cmd/fauxinnati/main.go | Enables logrus (currently forcing Debug level). |
| go.mod / go.sum | Adds dependencies for retryable HTTP and logrus. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
hongkailiu
commented
Mar 4, 2026
Collaborator
Author
$ git --no-pager log --pretty=oneline -1
c92472ac68a626b39b6e114ade4f60afbe827eb7 (HEAD -> real-image, hongkailiu/real-image) Use the latest version to patch
$ curl -s "http://localhost:8080/api/upgrades_info/graph?channel=risks-always&version=4.22.0-0-2026-03-03-000541-test-ci-ln-1phllqb-latest&arch=amd64" | jq '.nodes[1]'
{
"version": "4.22.0-ec.3",
"payload": "quay.io/openshift-release-dev/ocp-release@sha256:58b98da1492b3f4af6129c4684b8e8cde4f2dc197e4b483bb6025971d59f92a5",
"metadata": {
"io.openshift.upgrades.graph.release.channels": "risks-always",
"io.openshift.upgrades.graph.release.manifestref": "sha256:00000000000000000000000000000000000000000000000000000000003d5ef0",
"url": "https://access.redhat.com/errata/RHSA-2024:06200"
}
}
$ curl -s "http://localhost:8080/api/upgrades_info/graph?channel=risks-always&version=4.21.0-0-2026-03-03-000541-test-ci-ln-1phllqb-latest&arch=amd64" | jq '.nodes[1]'
{
"version": "4.21.1",
"payload": "quay.io/openshift-release-dev/ocp-release@sha256:7ca8870aa5e505f969aa26161594a3f99b65baf7d29bab8adaca0cade51b0bb6",
"metadata": {
"io.openshift.upgrades.graph.release.channels": "risks-always",
"io.openshift.upgrades.graph.release.manifestref": "sha256:00000000000000000000000000000000000000000000000000000000003d5b09",
"url": "https://access.redhat.com/errata/RHSA-2024:06101"
}
}
$ curl -s "http://localhost:8080/api/upgrades_info/graph?channel=risks-always&version=4.22.3&arch=amd64" | jq '.nodes[1]'
{
"version": "4.22.4",
"payload": "quay.io/openshift-release-dev/ocp-release@sha256:00000000000000000000000000000000000000000000000000000000003d5ef4",
"metadata": {
"io.openshift.upgrades.graph.release.channels": "risks-always",
"io.openshift.upgrades.graph.release.manifestref": "sha256:00000000000000000000000000000000000000000000000000000000003d5ef4",
"url": "https://access.redhat.com/errata/RHSA-2024:06204"
}
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For channel risks-always, the nodeB in the graph will get the real pull spec for the payload.
I think I need only it for the test and thus do not extend it to all nodes.
When we do, we might want some cache to avoid the workload for quay.io.