-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Various buildbox/Drone fixes #3982
Conversation
114756f
to
3558b9c
Compare
retest this please |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you also add PAM changes from https://github.com/gravitational/teleport/pull/3966/files#diff-e60f083cfee151a61e71f27ba4c92a0c ?
I've moved the PAM copy steps to the end of the Dockerfile so we can still make use of layer caching for the earlier stages. It also requires that we install a number of extra packages into the alpine container that's running |
retest this please |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
retest this please
retest this please |
1f23872
to
2c186b2
Compare
8a25e26
to
8dfb154
Compare
retest this please |
1 similar comment
retest this please |
The main purpose of this PR is to enable pulling and rebuiding the Teleport buildbox before each set of lint/unit test/integration test runs in the same way as Jenkins currently does. This is useful for us to be able to test
Dockerfile
changes, plus change the Go runtime and have that tested as part of PRs. It uses--cache-from
to aim for some bonusdocker build
speed/layer caching.This PR also disables reuse of the Go build cache inside containers. The benefit to this is that tests seem to be more reliable. The downside is that test runs will take longer.
I also took out uses of the
$REPO
variable as we weren't using it properly anyway. If we change from quay.io to another repository then we'll likely need to update the image names/paths anyway.I added a load of other miscellaneous changes too:
buildbox-base
Dockerfile code intobuild.assets
Dockerfile (for simplicity/keeping everything in one place)bbox
tobuildbox
throughoutMakefile
for claritybuild.assets
Makefile
rather than explicitly laying it out in.drone.yml
debian:stretch
toubuntu:20.04
(to keep everything up to date/free of vulnerabilities, plus a requirement to get a sufficiently recent BPF library version for tests)/gopath
to/go
throughout Dockerfiles, for consistency with Drone and thegolang
Docker imagesbuild.assets