Skip to content

Conversation

@aemperador
Copy link

Description of the change:
Add PPC64LE to published OPM binaries

Motivation for the change:
We want to use OPM as a pre-built binary for PPC64LE enabled operators to remove the complexity of building the binary from our build processes.

Reviewer Checklist

  • Implementation matches the proposed design, or proposal is updated to match implementation
  • Sufficient unit test coverage
  • Sufficient end-to-end test coverage
  • Docs updated or added to /docs
  • Commit messages sensible and descriptive

@openshift-ci-robot
Copy link

Hi @aemperador. Thanks for your PR.

I'm waiting for a operator-framework member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions 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/test-infra repository.

@openshift-ci-robot openshift-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Apr 12, 2021
@openshift-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: aemperador
To complete the pull request process, please assign njhale after the PR has been reviewed.
You can assign the PR to them by writing /assign @njhale in a comment when ready.

The full list of commands accepted by this bot can be found 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

@aemperador aemperador force-pushed the aemperador/add-ppc64le-opm-binary branch 2 times, most recently from 3a2cd3e to 58c4d77 Compare April 12, 2021 19:13
@codecov
Copy link

codecov bot commented Apr 12, 2021

Codecov Report

Merging #631 (65a8808) into master (384af6b) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #631   +/-   ##
=======================================
  Coverage   52.07%   52.07%           
=======================================
  Files         103      103           
  Lines        9092     9092           
=======================================
  Hits         4735     4735           
  Misses       3449     3449           
  Partials      908      908           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 384af6b...65a8808. Read the comment docs.

@aemperador aemperador force-pushed the aemperador/add-ppc64le-opm-binary branch from 58c4d77 to 830ea1a Compare April 14, 2021 14:17
Signed-off-by: aemperador <alexis.emperador@ibm.com>
@aemperador aemperador force-pushed the aemperador/add-ppc64le-opm-binary branch from 830ea1a to b3aea3f Compare April 14, 2021 14:22
@openshift-ci-robot
Copy link

@aemperador: Cannot trigger testing until a trusted user reviews the PR and leaves an /ok-to-test message.

In response to this:

/test

Instructions 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/test-infra repository.

@openshift-ci-robot
Copy link

@aemperador: Cannot trigger testing until a trusted user reviews the PR and leaves an /ok-to-test message.

In response to this:

/ok-to-test

Instructions 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/test-infra repository.

@aemperador
Copy link
Author

@estroz @timflannagan unsure how to re-run tests, but it looks like the podman install failed

@ankitathomas
Copy link
Contributor

/ok-to-test

@openshift-ci openshift-ci bot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Dec 10, 2021
@ankitathomas
Copy link
Contributor

/retest

@ankitathomas
Copy link
Contributor

/test e2e-minikube

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Dec 10, 2021

@ankitathomas: No presubmit jobs available for operator-framework/operator-registry@master

In response to this:

/test e2e-minikube

Instructions 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/test-infra repository.

@mayurwaghmode
Copy link

mayurwaghmode commented Dec 24, 2021

/test e2e-minikube

@mayurwaghmode
Copy link

/retest

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 4, 2022

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: aemperador
To complete the pull request process, please assign kevinrizza after the PR has been reviewed.
You can assign the PR to them by writing /assign @kevinrizza in a comment when ready.

The full list of commands accepted by this bot can be found 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

@aemperador
Copy link
Author

/retest

@aemperador
Copy link
Author

/test e2e-minikube

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 4, 2022

@aemperador: No presubmit jobs available for operator-framework/operator-registry@master

In response to this:

/test e2e-minikube

Instructions 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/test-infra repository.

@timflannagan
Copy link
Member

You may need to either rebase this PR to pick up any changes made to the CI environment or open/close the PR to recycle the checks.

@aemperador
Copy link
Author

will re-open

@aemperador aemperador closed this Jan 4, 2022
@aemperador aemperador reopened this Jan 4, 2022
@aemperador
Copy link
Author

You may need to either rebase this PR to pick up any changes made to the CI environment or open/close the PR to recycle the checks.

@timflannagan I pulled in master earlier today. do I need to do anything else?

@timflannagan
Copy link
Member

timflannagan commented Jan 5, 2022

I haven't poked around the PR contents (my brain is fried for the day) but it looks like there are a couple of merge commits here, and we typically don't utilize merge commits. By default, our automatic merging tool squashes PR commit(s) into a single commit, so the merge commits amended to that squashed commit is the only thing I can think of outside of the DCO check, which appears to be passing so we're good there.

@aemperador
Copy link
Author

@timflannagan all appears to be passing. Could it be reviewed now?

@aemperador
Copy link
Author

@timflannagan please let me know who can review. we need this to unblock @mayurwaghmode

@timflannagan
Copy link
Member

Apologies - what's the use case here? You want to be able to build opm during CI environments? I was under the impression that since this repository had integrated goreleaser, we were producing multi-arch (including ppc) binaries and those binaries are attached to specific minor version releases.

@timflannagan
Copy link
Member

Hmm, interesting it looks like we don't produce individual multi-arch binaries as we don't use goreleaser during the release workflow, which is triggered when new tags are created. We do however produce multi-arch opm container images, but I don't think that's as useful here. @joelanford Any idea on why we don't use goreleaser to also build and attach multi-arch binaries to the releases?

@joelanford
Copy link
Member

We didn't switch over to GoReleaser for the GitHub Actions release builds because we currently use a macOS github actions build host.

In my original GoReleaser PR, it actually did use GoReleaser for the release binaries, but we had to revert that piece of the PR because it depended on an unlicensed macOS cross-compiler running on a Linux host (Apple typically doesn't permit using XCode and related libraries to cross-compile from non-mac to mac).

We could consider using GoReleaser for all Linux and Windows builds and stick with the separate macOS runner for mac builds. We could have the GoReleaser job publish a draft release, and then have the mac job upload the additional binary to that release.

In the meantime, the workaround would be to use (or extract the binary from) the quay.io/operator-framework/opm container image, which has a ppc64le variant.

@aemperador
Copy link
Author

@mayurwaghmode please see above. will that solve your dependency issue?

@joelanford when do you think the change could be made to GoReleaser to also publish the ppc64le binary?

@joelanford
Copy link
Member

@aemperador this is not a priority for any of the core maintainers at this time, so there's no estimate on when these changes will happen.

If this is a high priority for you and your team, we would accept (and be very appreciative of) contributions and could help guide the implementation and provide review.

The original PR is here #710. The first commit has goreleaser publishing the binaries. The second commit is where we reverted that due to Apple's licensing restrictions. We've since made further refinements, but it should help anyone wanting to work on this.

@aemperador
Copy link
Author

@joelanford thank you for your help. I will defer to @mayurwaghmode to see if the quay image satisfies his requirement, if not I'll prioritize GoReleaseer.

@aemperador
Copy link
Author

will update GoReleaser instead. Closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ok-to-test Indicates a non-member PR verified by an org member that is safe to test.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants