Commit Graph

4384 Commits

Author SHA1 Message Date
Justin Cormack
9e38a97571 Merge pull request #2300 from ijc/kubernetes
kubernetes: provide /etc/resolv.conf to kube and docker containers.
2017-07-26 17:26:45 +01:00
Ian Campbell
3f8e733d9a Skip linuxkit.packages.containerd test for now.
It requires reworking to ensure `containerd` is in the path and to provide
network access. See https://github.com/linuxkit/linuxkit/pull/2298#issuecomment-318106583

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 17:24:08 +01:00
Justin Cormack
b853e05d9c Update init, runc, containerd hashes
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-26 16:51:11 +01:00
Avi Deitcher
ffb33e9d64 tpm.yml example update hash and add example test case
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-07-26 18:36:14 +03:00
Justin Cormack
cb2ca4ef66 Switch runc and containerd startup to be entirely Go
At present they use a small shared function called "prepare"
that does the read-write remounts, that I will switch to doing overlay
mounts soon.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-26 16:32:09 +01:00
Ian Campbell
d4479cbe10 kubernetes: update hashes
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 16:21:33 +01:00
Ian Campbell
dda7d30182 kubernetes: provide /etc/resolv.conf to kube and docker containers.
After #2289 we need to bind /etc/resolv.conf into the docker and kubelet
containers on both node and master.

Also since #2289 the metadata container requires /etc/resolv.conf to be
populated on the host, which means running DHCP earlier in oneshot onboot mode,
do so.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 16:19:40 +01:00
Justin Cormack
5194bf13d1 Merge pull request #2296 from justincormack/service-does-more
Make service start up containerd and services
2017-07-26 15:34:03 +01:00
Ian Campbell
df19ad752a tools/mkimage-iso-*: Transition to alpine base + package.mk
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:47:42 +01:00
Ian Campbell
9f7917e543 tools: Update consumers of linuxkit/guestfs to package.mk build
Also update the base image to the latest.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:47:42 +01:00
Ian Campbell
ac3103236e toos/guestfs: Enable content trust globally
This makes the need to pull $(BASE) redundant.

Rebuild resulted in linuxkit/guestfs:aecc40bf84ce4f4238e06934c46d7cc570a39eed@sha256:62e810869e83dabe04af7ac8fcd81d9f177d986a3424dcb9c4eb5439993c962f

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:47:42 +01:00
Ian Campbell
b472f79dbf tools/guestfs: Use build --iidfile
Modelled after tools/alpine's build.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:47:42 +01:00
Ian Campbell
d823d7fab7 tests: Update hashes for test/pkg/*
with cwd of test this was done with:
for i in pkg/* ; do make --no-print-directory -C $i show-tag; done | ( IFS=: ; while read image hash ; do ../scripts/update-component-sha.sh --image $image $hash ; done )

Note that `linuxkit/test-virtsock` (built by `test/pkg/virtsock`) does not
appear to be referenced anywhere.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:47:15 +01:00
Ian Campbell
acbe38d8a1 tests/pkg: Update remaining builds to pkg/package.mk
Also update the base tools/alpine to latest.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:46:41 +01:00
Ian Campbell
37de9c8c1d test-ns: Update DEPS
Makefile and Dockerfile are implicit from pacakge.mk.

Need to list the other files consumed by the Dockerfile though.

template.yml is only for manual testing and so is not a dependency of the
standard build.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:46:25 +01:00
Ian Campbell
49bb460105 Update test-kernel-config hashes.
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:45:39 +01:00
Rolf Neugebauer
2b76e86500 Merge pull request #2152 from dave-tucker/multi-mount
Improve mount and format packages
2017-07-26 14:39:28 +01:00
Ian Campbell
43bd083cf1 test-kernel-commit: Pull in a specific check-config.sh
This makes the package actually build reproducibly, with the downside that it
requires changing the hash. Perhaps this should move to tools/alpine.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:34:04 +01:00
Ian Campbell
77c5bd021d test-kernel-config: Rework for multistage build and package.mk
Network is required to fetch the check script.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 14:34:04 +01:00
Justin Cormack
b8f7b7aad0 Merge pull request #2294 from ijc/pkg-forcepush
pkg: Add forcepush target
2017-07-26 13:43:12 +01:00
Dave Tucker
7434ed10e7 examples: Update to use new mount and format images
Signed-off-by: Dave Tucker <dt@docker.com>
2017-07-26 13:27:21 +01:00
Dave Tucker
54c23849cf docs: Update external disk documentation
This documents the usage of the new mount, format and extend packages

Signed-off-by: Dave Tucker <dt@docker.com>
2017-07-26 13:27:21 +01:00
Dave Tucker
6f80f53ea1 tests: Add test cases for format, mount and extend pkgs
This commit adds a myriad of test cases to ensure the format and mount
and extend packages are working as expected

Signed-off-by: Dave Tucker <dt@docker.com>
2017-07-26 13:27:17 +01:00
Dave Tucker
8dcb57429a pkg: Add extend for extending partitions
This was split out from pkg/format into its own package.
It has the ability to extend ext4, btrfs and xfs partitions.

Signed-off-by: Dave Tucker <dt@docker.com>
2017-07-26 13:26:39 +01:00
Dave Tucker
a14a8be49e mount: Add support to mount by label, uuid or name
This commit rewrites the mount package in Go.
It adds the ability to mount the by label, UUID or name.
It also fixes the automatic mount logic to check that a drive isn't
already mounted before attempting to mount it. This allows for multiple
uses of the mount pkg in a single YAML file.

Signed-off-by: Dave Tucker <dt@docker.com>
2017-07-26 13:26:39 +01:00
Dave Tucker
5273ec1d33 format: Add partition labels and new filesystems
This commit re-writes the format package in Go and adds the ability to
add partition labels and also specify either ext4, btrfs or xfs

Signed-off-by: Dave Tucker <dt@docker.com>
2017-07-26 13:26:39 +01:00
Justin Cormack
74e067748a Update hashes for containerd
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-26 12:08:09 +01:00
Justin Cormack
e40db14598 Make service start up containerd and services
This moves most of the initialisation of containers to the
service init in the `service` command.

Still leaves remounting root file systems read only but this
will go away shortly. Another step closer to removing shell
scripts in base system.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-26 12:05:45 +01:00
Avi Deitcher
e776d063ac add tss image
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-07-26 13:46:51 +03:00
Rolf Neugebauer
7cafad4fba Merge pull request #2293 from zx2c4/bump-wireguard
wireguard: version bump
2017-07-26 10:49:46 +01:00
Ian Campbell
6c689a84dd pkg: Add forcepush target
This is like the `push` target but omits the pulls and depends on forcetag
instead. With the git commit now being embedded into the image this is now a
necessary part of rebasing a PR for which images have already been pushed.

Also adds PHONY targets for existing forcetag and push targets which were
missing.

NB $(error) appends a "." to omit the final one from the error message

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 10:45:04 +01:00
Justin Cormack
09dc4c1c88 Merge pull request #2291 from ijc/kubernetes
Kubernetes bump to 1.6.7 and improved functionality on Linux platform
2017-07-26 10:38:20 +01:00
Jason A. Donenfeld
5b875bd1d4 wireguard: version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-07-26 04:01:29 +02:00
Justin Cormack
52c3ef9406 Merge pull request #2287 from rn/stress2
Update and extend namespace stress tests
2017-07-25 19:39:27 +01:00
Rolf Neugebauer
8d7b095da1 Merge pull request #2290 from rn/base-trust
tools/alpine: Make sure we use content trust for linuxkit/alpine
2017-07-25 18:16:53 +01:00
Rolf Neugebauer
be71dde3f0 tests: Add namespace stress tests
These tests run individual and a mix of namespace stress tests
mostly around networking and unix domain sockets where either
the client or the server of socket echo application is run inside
a container in different configurations:
- different protocols
- short or long lived connections
- different levels of concurrency

Tests are only run if the 'kernel' label is specified and more
detailed tests are run if the additional 'kernel-extra' label
is specified.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-25 17:33:01 +01:00
Rolf Neugebauer
5a932a3dcf tests: Remove old namespace tests
They will be replaced in the next commit.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-25 17:32:03 +01:00
Rolf Neugebauer
4c74def5c0 tests: Update the netns test package to use runc and rename it to ns
The previous version just created a network name space which does
not allow us to also test additional namespaces, e.g. for unix
domain sockets.

This commit uses runc to create a fully namespaced container to
run a test in. It creates a container, configures the network
interfaces in the new network namespace before starting the
container.

A OCI config.json template is used and then customised for a
given test based on command line arguments.

Finally, instead of iperf, we use the socket stress test from
https://github.com/linuxkit/virtsock as it provides finer-grained
control over the traffic patterns (e.g. long lived vs lots of
short lived connections).

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-25 17:31:32 +01:00
Justin Cormack
3e034a5ca8 Merge pull request #2289 from justincormack/resolv.conf
resolv.conf fixes
2017-07-25 17:26:29 +01:00
Ian Campbell
828ac913e8 kubernetes: Update yml files
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-25 17:25:08 +01:00
Ian Campbell
d5a53968fe kubernetes: Documentation updates for Linux platform
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-25 17:23:29 +01:00
Ian Campbell
6c3dd4e54a kubernetes: allow configuration of networking
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-25 17:23:29 +01:00
Rolf Neugebauer
4de8abb997 tools/alpine: Updated and sign new alpine base image for arm64
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-25 15:49:58 +00:00
Rolf Neugebauer
fe9e8be2c6 tools/alpine: Make sure we use content trust for linuxkit/alpine
We should always pull and push linuxkit/alpine with content trust
irrespective of architecture, unless explicitly disabled.

Currently, we have to dance around various other issues on arm64,
which are now documented in the Makefile.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-25 16:37:46 +01:00
Justin Cormack
64ba3eaaca update hashes for resolv.conf changes
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-25 16:26:38 +01:00
Justin Cormack
797392a244 fix openntpd label
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-25 16:25:09 +01:00
Ian Campbell
8acecf1b62 kubernetes: Drop k8s-dns-* from image cache
These contribute ~140M to the common image cache but do not appear to be used
by either the base system nor the sock-shop demo. They can/will still be pulled
on demands as necessary.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-25 16:20:57 +01:00
Ian Campbell
d5bcb62419 kubernetes: Bump to 1.6.7 and other updates
Bumps kubernetes and associated tools and images to v1.6.7 (from v1.6.1).

Updates weave from v1.9.4 to v2.0.1

Updates cni from a snapshot to v0.5.2. Note that the download location has
changed and the tarball no longer includes the `bin` subdirectory, so adjust
build to compensate.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-25 16:20:57 +01:00
Ian Campbell
7d7001c573 kubernetes: ssh_into_kubelet.sh for Linux
Only with networking in bridge (or probably tap) modes, not user mode.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-25 16:20:48 +01:00
Ian Campbell
9f04b403e4 kubernetes: Use ijc25/alpine-ssh for ssh_into_kubelet.sh
Much smaller than the CentOS based one.

Note that ijc25/alpine-ssh has entrypoint==ssh.

Drop Compression=yes, this is used for local ssh so no point compressing (just uses CPU).

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-25 16:18:08 +01:00