Skip to content

image: Use cilium-builder instead of golang as operator builder image #35351

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

Merged

Conversation

learnitall
Copy link
Contributor

@learnitall learnitall commented Oct 10, 2024

This commit changes the builder image for cilium-operator to be the cilium-builder image, rather than the golang image. This change will allow for arm64 builds of the cilium-operator to be built with CGO enabled due to the cilium-builder image containing multi-platform C compilers. This build configuration is a stepping stone for other build-time features, such as CGO binaries with race detection enabled.

Please ensure your pull request adheres to the following guidelines:

  • For first time contributors, read Submitting a pull request
  • All code is covered by unit and/or runtime tests where feasible.
  • All commits contain a well written commit description including a title,
    description and a Fixes: #XXX line if the commit addresses a particular
    GitHub issue.
  • If your commit description contains a Fixes: <commit-id> tag, then
    please add the commit author[s] as reviewer[s] to this issue.
  • All commits are signed off. See the section Developer’s Certificate of Origin
  • Provide a title or release-note blurb suitable for the release notes.
  • Are you a user of Cilium? Please add yourself to the Users doc
  • Thanks for contributing!

Fixes: #35324

@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Oct 10, 2024
@learnitall
Copy link
Contributor Author

/test

This commit changes the builder image for cilium-operator to be the
cilium-builder image, rather than the golang image. This change will
allow for arm64 builds of the cilium-operator to be built with CGO
enabled due to the cilium-builder image containing multi-platform C
compilers. This build configuration is a stepping stone for other
build-time features, such as CGO binaries with race detection enabled.

Fixes: 35324

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
@learnitall learnitall force-pushed the pr/learnitall/operator-builder branch from 43a55c0 to bbc62c2 Compare October 16, 2024 18:28
@learnitall learnitall added release-note/misc This PR makes changes that have no direct user impact. area/build Anything to do with the build, more general than area/CI labels Oct 16, 2024
@maintainer-s-little-helper maintainer-s-little-helper bot removed the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Oct 16, 2024
@learnitall learnitall marked this pull request as ready for review October 16, 2024 18:29
@learnitall learnitall requested a review from a team as a code owner October 16, 2024 18:29
@learnitall learnitall requested a review from borkmann October 16, 2024 18:29
@learnitall
Copy link
Contributor Author

/test

@maintainer-s-little-helper maintainer-s-little-helper bot added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Oct 22, 2024
@dylandreimerink dylandreimerink added this pull request to the merge queue Oct 22, 2024
Merged via the queue into cilium:main with commit 8190512 Oct 22, 2024
67 checks passed
@learnitall learnitall added affects/v1.15 This issue affects v1.15 branch needs-backport/1.15 labels Oct 22, 2024
@rastislavs rastislavs mentioned this pull request Oct 28, 2024
6 tasks
@rastislavs rastislavs added backport-pending/1.15 The backport for Cilium 1.15.x for this PR is in progress. and removed needs-backport/1.15 labels Oct 28, 2024
@github-actions github-actions bot added backport-done/1.15 The backport for Cilium 1.15.x for this PR is done. and removed backport-pending/1.15 The backport for Cilium 1.15.x for this PR is in progress. labels Oct 29, 2024
learnitall added a commit to learnitall/cilium that referenced this pull request Nov 1, 2024
The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See cilium#35351 and
cilium#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
@learnitall learnitall added affects/v1.16 This issue affects v1.16 branch needs-backport/1.16 This PR / issue needs backporting to the v1.16 branch labels Nov 1, 2024
@joamaki joamaki mentioned this pull request Nov 5, 2024
23 tasks
@joamaki joamaki added backport-pending/1.16 The backport for Cilium 1.16.x for this PR is in progress. and removed needs-backport/1.16 This PR / issue needs backporting to the v1.16 branch labels Nov 5, 2024
@github-actions github-actions bot added backport-done/1.16 The backport for Cilium 1.16.x for this PR is done. and removed backport-pending/1.16 The backport for Cilium 1.16.x for this PR is in progress. labels Nov 7, 2024
learnitall added a commit to learnitall/cilium that referenced this pull request Nov 20, 2024
The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See cilium#35351 and
cilium#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
learnitall added a commit to learnitall/cilium that referenced this pull request Nov 20, 2024
The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See cilium#35351 and
cilium#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
learnitall added a commit to learnitall/cilium that referenced this pull request Nov 22, 2024
The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See cilium#35351 and
cilium#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
learnitall added a commit to learnitall/cilium that referenced this pull request Dec 2, 2024
The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See cilium#35351 and
cilium#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
github-merge-queue bot pushed a commit that referenced this pull request Dec 3, 2024
The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See #35351 and
#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
jschwinger233 pushed a commit that referenced this pull request Dec 3, 2024
[ upstream commit f0d3f93 ]

The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See #35351 and
#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
Signed-off-by: gray <greyschwinger@gmail.com>
jschwinger233 pushed a commit that referenced this pull request Dec 3, 2024
[ upstream commit f0d3f93 ]

The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See #35351 and
#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
Signed-off-by: gray <greyschwinger@gmail.com>
github-merge-queue bot pushed a commit that referenced this pull request Dec 3, 2024
[ upstream commit f0d3f93 ]

The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See #35351 and
#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
Signed-off-by: gray <greyschwinger@gmail.com>
joestringer pushed a commit that referenced this pull request Dec 3, 2024
[ upstream commit f0d3f93 ]

The hubble image currently uses the golang docker image within the build
stage. This commit modifies the build stage to use the cilium-builder
image instead which contains the necessary tooling to allow for arm64
builds in CI workflows that run on amd64 machines.

See #35351 and
#35324 for more context.

Signed-off-by: Ryan Drew <ryan.drew@isovalent.com>
Signed-off-by: gray <greyschwinger@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
affects/v1.15 This issue affects v1.15 branch affects/v1.16 This issue affects v1.16 branch area/build Anything to do with the build, more general than area/CI backport-done/1.15 The backport for Cilium 1.15.x for this PR is done. backport-done/1.16 The backport for Cilium 1.16.x for this PR is done. ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/misc This PR makes changes that have no direct user impact.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unable to build operator image with CGO on arm64
5 participants