-
Notifications
You must be signed in to change notification settings - Fork 156
Issue #2835 - Fix Tekton task "func-buildpacks" prepare/results steps use non-multi-arch bash:5.1.4 image, causing exec format errors on ARM64 #2842
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
Conversation
|
Welcome @luciantin! It looks like this is your first PR to knative/func 🎉 |
Hi @luciantin. Thanks for your PR. I'm waiting for a knative member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the 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-sigs/prow repository. |
Some more info to help reproduce the errors. When using buildpack to build Go on an ARM64 host, the Tekton "prepare" and "results" steps fail with:
Running the image in docker :
Solution was to untag the following images :func/pkg/pipelines/tekton/tasks.go Line 87 in a062cd2
func/pkg/pipelines/tekton/tasks.go Line 193 in a062cd2
FyiRunning the 'TarImage' and 'FuncUtilImage' from main branch, i.e. "ghcr.io/knative/func-utils:v2" Such as :
Or the specific arm64 :
Both return :
The image that is used is : I confirmed that k8s deployed the specific image, also tried on an ARM64 instance with Docker :
The working one I am using is from branch 'release-1.17' -> 'ghcr.io/knative/func-utils:latest' As far as the volume-uploader image is concerned, my conclusion is that the ARM64 image does not work on ARM64 Havent looked further, might be tied to kubernetes-sigs/metrics-server#882 Not included in pull, prob should be fixed on the image building side, havent looked yet, but func wont deploy functions on ARM64 with the latest v2 version. Also, the main branch deploys functions correctly, on ARM64 through buildpack, after the following images are reverted (including the changes in the PR), no other changes were necessary. func/pkg/pipelines/tekton/tasks.go Line 8 in a062cd2
func/pkg/k8s/persistent_volumes.go Line 75 in a062cd2
I can look it up if you'd like, and add it to the PR (if its in the same repo, idk...) |
ghcr.io/knative/func-utils:v2 is definitely mullti-arch. |
But for whatever reason it contains amd64 binary, weird. |
Also note that Lines 189 to 202 in 8e0b752
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2842 +/- ##
==========================================
+ Coverage 62.66% 63.49% +0.82%
==========================================
Files 127 127
Lines 15545 15545
==========================================
+ Hits 9742 9870 +128
+ Misses 4892 4736 -156
- Partials 911 939 +28
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
OK I know where the problem is 🤦♂️ . |
@luciantin The failing test is not your fault. Please just rebase to include fix for it. |
/ok-to-test @lkingland @dsimansk please override the failing test if possible. |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: luciantin, matejvasek 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 |
…eps use non-multi-arch bash:5.1.4 image, causing exec format errors on ARM64
/lgtm |
Changes
/kind bug
Fixes #2835