Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Use multiarch Golang builder #650

Open
wants to merge 1 commit into
base: release-v1.12-bak
Choose a base branch
from

Conversation

mgencur
Copy link

@mgencur mgencur commented Mar 7, 2024

What this PR does / why we need it:

Support ARM and be able to build Serving images in on a heterogenous cluster in CI.

Link to Slack thread where this new image was mentioned.

Note: The new image is available only in CI. If somebody wants to use those Dockerfiles and built images locally they need to have an authfile in json format (it's possible to download it from a running CI job).

Image metadata:

skopeo inspect --raw --authfile=dockerconfig.json docker://registry.ci.openshift.org/ocp/builder:rhel-9-golang-1.21-builder-multi-openshift-4.16
{
    "manifests": [
        {
            "digest": "sha256:8c44fc7f6f3fcdd844f94f7aeba3e3fabb723943ce04dfce449960bf9c71a815",
            "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
            "platform": {
                "architecture": "amd64",
                "os": "linux"
            },
            "size": 922
        },
        {
            "digest": "sha256:41a80f39d422fedb68d3462db6050ec0e19b2351f956cd6f97f624f7947684fb",
            "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
            "platform": {
                "architecture": "arm64",
                "os": "linux"
            },
            "size": 922
        },
        {
            "digest": "sha256:7d6f9f7dd670f9ccb87d369ea52081937faa1e18b66a3187e16ef2f2ef3fd336",
            "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
            "platform": {
                "architecture": "ppc64le",
                "os": "linux"
            },
            "size": 922
        },
        {
            "digest": "sha256:21957552890abebfdc42eee30982c690aa16e0c7d5032e3c063201a29ec055e7",
            "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
            "platform": {
                "architecture": "s390x",
                "os": "linux"
            },
            "size": 922
        }
    ],
    "mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
    "schemaVersion": 2
}

Which issue(s) this PR fixes:

JIRA: https://issues.redhat.com/browse/SRVKS-1024

Does this PR needs for other branches:

release-v1.13, main

/cherry-pick release-v1.13
/cherry-pick main

Does this PR (patch) needs to update/drop in the future?:

NONE

Copy link

openshift-ci bot commented Mar 7, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mgencur

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved label Mar 7, 2024
@mgencur
Copy link
Author

mgencur commented Mar 7, 2024

I'm not sure if the new images are used in tests running on this PR. Maybe we also need to update the CI config:https://github.com/openshift/release/blob/master/ci-operator/config/openshift-knative/serving/openshift-knative-serving-release-v1.12__414.yaml#L2
EDIT: The new images are used. They affected the results in the lates run.

@mgencur
Copy link
Author

mgencur commented Mar 7, 2024

Note to self. Other repositories like Eventing, EKB use the following to generate the dockerfiles:

GO111MODULE=off go get -u github.com/openshift-knative/hack/cmd/generate

$(go env GOPATH)/bin/generate \
  --root-dir "${repo_root_dir}" \
  --generators dockerfile \
  --dockerfile-image-builder-fmt "registry.ci.openshift.org/openshift/release:rhel-8-release-golang-%s-openshift-4.16"

So, the image needs to be updated there and the generate command needs to be re-run via github action "Run Makefile target" on openshift-knative/hack

@mgencur mgencur force-pushed the multiarch_golang_builder_v1.12 branch from 802e61d to 0f9ca28 Compare March 8, 2024 07:59
@skonto
Copy link

skonto commented Mar 8, 2024

We might skip 1.12 branch correct?

@mgencur
Copy link
Author

mgencur commented Mar 8, 2024

We might skip 1.12 branch correct?

What do you mean by that? Do you mea skipping release-v1.12 branch or OCP 4.12 ?

@mgencur
Copy link
Author

mgencur commented Mar 8, 2024

/retest-required

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants