-
Notifications
You must be signed in to change notification settings - Fork 522
How to build specific version of bottlerocket? #2854
-
I tried to switch to the 1.12.x branch and then do the build, but it fails with multiple errors like that:
develop branch builds successfully |
Beta Was this translation helpful? Give feedback.
All reactions
Replies: 2 comments · 10 replies
-
Hi @llacqie. It looks like there was likely a problem earlier in the build that led to the I've had similar build failures once and awhile when switching between versions. My guess is there's maybe some artifact left over in your development environment that is causing the problem. Try The "big hammer" if that does not is to completely clean up everything:
As far as the title question goes, there are a couple of make variables that can be set. The default variant is currently
|
Beta Was this translation helpful? Give feedback.
All reactions
-
I already tried compiling from scratch with Here is full log:
|
Beta Was this translation helpful? Give feedback.
All reactions
-
That is an odd error:
In addition to the steps I mentioned above, you may want to do |
Beta Was this translation helpful? Give feedback.
All reactions
-
I mean I have exactly similar error. Do you build this as root or as non-root user? |
Beta Was this translation helpful? Give feedback.
All reactions
-
I may have been able to repro this! Digging in to the error now to see what might be different. |
Beta Was this translation helpful? Give feedback.
All reactions
-
I was reminded of this issue: It's a behavior change in Docker with releases that came out after Bottlerocket 1.12.0. So this fails:
But this will get the fix for working with newer Docker releases:
So you will either need to cherry-pick the fix, or downgrade Docker to 20 or earlier. |
Beta Was this translation helpful? Give feedback.
All reactions
-
And why don't you cherry-pick the fix to the 1.12.x branch??? |
Beta Was this translation helpful? Give feedback.
All reactions
-
The behavior change in Docker wasn't introduced until after 1.12.0 was released. In general, external tooling changes are not backported to older releases. It is a bit tricky in this situation in that 1.12.0 is the latest release. There should be a 1.13.0 release very soon that will include this workaround. I asked a few folks for thoughts about documenting external requirements like this. There isn't really a great place to capture that, and seems pretty fragile to capture every external tooling expectation. But at least this discussion has captured this particular Docker issue, so hopefully anyone else running in to this will now be able to find all the gory details. Thanks! |
Beta Was this translation helpful? Give feedback.
That is an odd error:
In addition to the steps I mentioned above, you may want to do
rm -fr build
to clear out any previous build artifacts. That will force the build process to recreate the output build directories.