Use Teleport's standard buildbox#17122
Conversation
This comit edits the teleport-operator container image build process to rely on Teleport's standard buildbox. This will make sure we are using a single go version at all time. This also removed unused environement variables from `operator/Makefile`.
r0mant
left a comment
There was a problem hiding this comment.
@hugoShaka I would try to find a way to have the buildbox version defined in a single place (it's currently in build.assets/Makefile) but otherwise lgtm.
Also, can you please run a dev release off of this branch to make sure everything works?
| BUNDLE_GEN_FLAGS += --use-image-digests | ||
| endif | ||
| # Buildbox image version, can be built by running `make -C build.assets` | ||
| BUILDBOX_VERSION ?= teleport11 |
There was a problem hiding this comment.
Is there any way this can somehow be propagated from build.assets/Makefile where it's already set? Ideally, version would be defined in a single place.
There was a problem hiding this comment.
Addressed in 547976c , I also updated docker/Dockerfile
wadells
left a comment
There was a problem hiding this comment.
Ship it! (pending a successful dev build).
I've got one running that includes these changes (as well as my own work that I was interested in testing):
https://drone.platform.teleport.sh/gravitational/teleport/16265
|
The root cause of: is https://forums.docker.com/t/resolved-files-missing-after-dockerfile-run-downloads-them/4827 The hack is to move the binary outside the However, I wonder if we need the volume declared in the base image -- docker has no trouble mounting over paths even if they're not declared as volumes. |
What about putting the binaries in
I think we don't strictly need those volumes, but they ensure we don't put anything in those paths during the image build process. |
Sounds good to me! |
|
@hugoShaka See the table below for backport results.
|
* Use Teleport's standard buildbox This commit edits the teleport-operator container image build process to rely on Teleport's standard buildbox. This will make sure we are using a single go version at all time. This also removed unused environment variables from `operator/Makefile`. * Extract BUILDBOX variables out of build.assets/Makefile * Put `teleport-operator` bin out of the Teleport source volume
* Use Teleport's standard buildbox This commit edits the teleport-operator container image build process to rely on Teleport's standard buildbox. This will make sure we are using a single go version at all time. This also removed unused environment variables from `operator/Makefile`. * Extract BUILDBOX variables out of build.assets/Makefile * Put `teleport-operator` bin out of the Teleport source volume
* Use Teleport's standard buildbox This commit edits the teleport-operator container image build process to rely on Teleport's standard buildbox. This will make sure we are using a single go version at all time. This also removed unused environment variables from `operator/Makefile`. * Extract BUILDBOX variables out of build.assets/Makefile * Put `teleport-operator` bin out of the Teleport source volume
* Use Teleport's standard buildbox This commit edits the teleport-operator container image build process to rely on Teleport's standard buildbox. This will make sure we are using a single go version at all time. This also removed unused environment variables from `operator/Makefile`. * Extract BUILDBOX variables out of build.assets/Makefile * Put `teleport-operator` bin out of the Teleport source volume
Fixes #17108
The first commit edits the teleport-operator container image build process to rely on Teleport's standard buildbox. This will make sure we are using a single go version at all time.
It also removes unused environment variables from
operator/Makefile.The second commit extracts
BUILDBOX_VERSION,BUILDBOXandBUILDBOX_variantvariables into a standalonebuild.assets/images.mkfile so they can be included by the other Makefiles in the repo and ensures all versions and repos are in-sync.