linux is upgraded to 4.16, binutils is upgraded to 2.30, and
libelf is installed for the newer kernel.
Other configuration changes are changes in defaults and ordering.
Now using glibc 2.27. systemd 237, and Go 1.10.
vbox-guest is removed because it's upstream as of linux 4.16.
More on buildroot at https://git.buildroot.net/buildroot/tree/CHANGES
Use ListDrivers() method to get the list of VM drivers.
SupportedVMDrivers become the whole list of VM drivers on all
platforms, which is used in gendocs only.
Instead of running `go list` every time (very slow),
cache the results in the build folder and include it.
Add a shell helper script, to make the Makefile more
readable. Use regular "makedepend" syntax for output.
Having a phony target as a minikube dependency means that
it always needs to be rebuilt/copied, which is unnecessary.
Also clean up and simplify the syntax, thereby avoiding the
current copy/paste errors (that always come with duplication)
* Separate start args from args passed to every command. This is so
that we can call `minikube logs` and `minikube status` with the proper
flags (for the bootstrapper)
* Add a NewMinikubeRunner function to make getting a minikube runner
easier.
This PR introduces caching of localkube images. It makes a best effort
to cache the essential images localkube needs as minikube starts up.
Currently, the list of cached images is hardcoded, but future work might
entail
1. Cached images as a property of the cluster bootstrapper - to allow
localkube and kubeadm to cache their respective images.
2. Addons contain image information. Then, we can selectively cache and
preload only the addon images that are enabled.
Theres currently no good way to run the integration tests for the none
driver locally. Now that we've added the e2e target, we can depend on
that. Running the e2e test binary locally requires the testdata folder
to be in a different path, since it is relative to where the code is
being ran. I added a testdata-dir flag to the integration tests so we
can set it appropriately for when we want to run the e2e binary by
itself.
I also made the e2e test binary a PHONY target, so we rebuild it each
time. I had trouble collecting the dependencies on the integration
test packages
I find myself referencing this documentation every time I make kernel
configuration changes. I've added a simple rule to open the kernel
configuration menu, and then save your changes to the right directory.
https://www.gnu.org/software/make/manual/make.html#Secondary-Expansion
This allows us to have conditional targets for our tar command. I also
simplified the makefile rule for `out/minikube-%-amd64` by not caring
to force uppercase on the variables, since the official makefile docs
seem to not care about it.
The cross build container we use for darwin needs two extra environment
variables to invoke specific C and CPP compilers. These aren't needed
and won't work natively on darwin, so only pass them in for docker
builds.
BUILD_IN_DOCKER=y will build both localkube and minikube in docker
LOCALKUBE_BUILD_IN_DOCKER=y, MINIKUBE_BUILD_IN_DOCKER=y will toggle
docker builds for each respective binary
Regardless of the options provided, if you attempt to build localkube on
a non-linux platform, it will run in docker. This ensures that `make`
still works as expected on darwin.
Remove the dependency on cross from checksum. This means that checksum
can be called without all binaries being built, but no checksums will
be generate for those binaries.
This rebases minikube-iso to the release 2017-02.
A change in buildroot required the introduction of a `external.desc` as
multiple external trees are supported in modern buildroot versions. This
required change is described here [0].
[0] https://buildroot.org/downloads/manual/manual.html#br2-external-converting
The existing isolinux.cfg was not included in the config and thus
ignored, include it.
The 4.9.13 kernel included in buildroot 2017-02 is not compatible with
VBox guest additions 5.1.6, thus bump guest additions to 5.1.18.
The defconfig of 4.9.13 has been cleaned up.
systemd 232 included in buildroot 2017-02 is incompatible with docker <
17.03 without boot parameter systemd.legacy_systemd_cgroup_controller=yes
Signed-off-by: Thomas Graf <tgraf@suug.ch>
$ make buildroot-image
$ make out/minikube.iso
- Add en entry in the Makefile for building the container: buildroot-image
- Modify the minikube-iso target to out/minikube.iso to comply with the way
makefiles work.
- Also force the use of a docker container. If not needed
just run IN_DOCKER=1 make out/minikube.iso to avoid the invokation of a docker
container.
- Add some doc.
- The tag added to the generated image will allow to bypass the build of the
image as soon as the container is pushed to the minikube registry.
This makefile dependency is currently only on the folder, not the files
within. With this PR, the makefile will rebuild the assets when
changes are made to deploy/addons
When changes are made to the ISO folder, rebuild and upload the newly
modified image. Use this uploaded image as the default in the e2e test
binaries, so that the e2e test suite runs against the PR's changes.
TODO: Subsequent PRs (no changes to ISO) will still run against the
default version in the makefile. We should figure out if we want to
always run tests against the "latest" image.