269 Commits

Author SHA1 Message Date
Justin Cormack
bafeac62ec Merge pull request #2301 from rn/base-ovmf
Various OVMF related fixes
2017-07-27 10:25:24 +01:00
Rolf Neugebauer
930c9c21df tools/qemu: Install ovmf for x86
The previous commit moved ovmf to the packages instead
of stashing it on the filesystem. This requires the
package to be installed here.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-26 18:14:28 +01:00
Rolf Neugebauer
bf5a461ce5 tools/alpine: Add OVMF to the mirror and not the image
We add the 'ovmf' to the mirror instead of installing
it in the rootfs. This way we record the version we are
using.

We already pull a few images (go, tini) from community
so may as well pull ovmf directly via 'packages.x86_64'.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-26 18:14:28 +01:00
Ian Campbell
5217b9973b alpine: Reminder to bump the containerd test when bumping containerd
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-26 17:27:11 +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
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
Rolf Neugebauer
840686052a tools/alpine: Resync alpine base image
Somewhere between the various updates yesterday the hash in
'versions.x86_64' went wrong and there is no image with hash
available on hub.

This commit updates the alpine base to the latest version and
thus rectifies the issue

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-25 11:46:07 +01:00
Rolf Neugebauer
f16018ea87 Merge pull request #2282 from rn/arm-base
tools/alpine: Update arm64 base image
2017-07-24 16:55:56 +01:00
Rolf Neugebauer
1405019a54 tools/alpine: Update arm64 base image
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-24 14:57:58 +00:00
Ian Campbell
4cb43060e4 alpine: Drop trailing whitespace in Dockerfile.
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-24 12:14:21 +01:00
Ian Campbell
e015aff65a alpine: Use docker build --iidfile
This was added in 17.06 and allows us to avoid using `$(BASE):build` which is
not safe against parallel builds etc.

Having done this restructure the build to not always delete the built container
and to separate out the `hash` and `version` file rules so that they can be
included in both the `tag` and `push` targets.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-24 12:13:58 +01:00
Dennis Chen
cc14a74276 tools/alpine: multi-arch support for the base alpine image
Alpine is the base docker image for the LinuxKit, but currently
it only supports amd64 architecture. This patch is try to unify
the alpine tool docker image build process order to suport other
architectures, such as AArch64, by using '--build-arg' to override
the alpine base image specified by 'FROM' in the Dockerfile.

Also this patch splits the standalone packages into 2 parts:
one is common for all archs, another is arch-specific.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-07-24 10:09:23 +00:00
Avi Deitcher
74f5af924c Add development tools to linuxkit/alpine mirror
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-07-24 11:00:57 +03:00
Riyaz Faizullabhoy
ddad2443d0 Merge pull request #2268 from riyazdf/update-alpine-base-versions
tools/alpine: update version
2017-07-20 17:08:53 -07:00
Riyaz Faizullabhoy
e2289984ac tools/alpine: update version
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-07-20 14:39:23 -07:00
Jason A. Donenfeld
a837a6fc65 wireguard: add tools to alpine as package not into filesystem
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-07-20 22:01:05 +02:00
Jason A. Donenfeld
a09a2a4b22 wireguard: integrate tools into alpine
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-07-20 16:51:53 +02:00
Ian Campbell
b3db1a887c Update to containerd v1.0.0-alpha1
This is actually containerd#1141 rebased onto v1.0.0-alpha1.

The `dist` command has been integreated into `ctr` and so is removed, including
from the getty and sshd bind mounts and the test which uses it is updated..

There is no change to the version of runc vendored by containerd, so this is
unchanged.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-20 14:10:51 +01:00
Ian Campbell
ddb9efbffb alpine: Include xfsprogs-extra
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-20 14:10:51 +01:00
Ian Campbell
a24819f2e5 Update to latest alpine base for go-compile
I noticed that running the runes in docs/vendoring.md made a bunch of files
which are omitted by modern vndr come back, presumably due to the old version
of vndr referenced there. So update the go-compile package to the current
version everywhere.

Also correct the use of `make` variable syntax (`$(PWD)`) where shell syntax
command substitution for `pwd` was desired.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-19 14:40:24 +01:00
Justin Cormack
c6a0423309 Merge pull request #2223 from arm64b/qemu-dockerfile-multiarch
ARM64: Multi-arch support in qemu Dockerfile
2017-07-17 10:49:17 +01:00
Dennis Chen
6791ad986c ARM64: Multi-arch support in qemu Dockerfile
Update the qemu Dockerfile to support both amd64 and arm64.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-07-17 07:28:48 +00:00
Dennis Chen
4cdff71e05 tools: Fix the order sequence issue in Makefile
tools/qemu and toos/go-compile define the IMAGE after the
package.mk, which result in below error if 'make ORG=other_org':
...
invalid argument "other_org/:2c6d9e1d9c52167f4f2b7a8fd235eda318175c99"for t: invalid reference format
See 'docker build --help'.
../../pkg/package.mk:47: recipe for target 'tag' failed
make: *** [tag] Error 125

This because '../../pkg/package.mk' need to use IMAGE variable first.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-07-17 07:03:27 +00:00
Liqdfire
457f9a61c6 fix BASE in makefile to match Dockerfile
Signed-off-by: Liqdfire <liqdfire@gmail.com>
2017-07-14 14:00:43 -04:00
Ian Campbell
28905c57cc alpine: Record image has in versions file
Otherwise the only record is if the pusher happens to remember to put it in the
commit message (tollerable) or the github PR (not great).

Also add the same show-tag target as `pkg/package.mk` supports, although with a
very different implementation.

The actual hash is unchanged from the previous commit.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-14 12:41:11 +01:00
Ian Campbell
00a2f2ac8c alpine: stash the original /etc/apk/repositories for downstream use
If a user of linuxkit/alpine wants to produce an image with apk in it then it
is useful for them to have the original upstream repository list.

The new hash is linuxkit/alpine:3744607156e6b67e3e7d083b15be9e7722215e73

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-14 12:37:38 +01:00
Ian Campbell
902e6182b0 Temporarily use https://github.com/containerd/containerd/pull/1141
We expect this (or something very similar) to be merged soon, it fixes #2131 so
moving ahead now.

The new alpine mirror is linuxkit/alpine:6832775a7e861ee2d7842e157688ece52d007142

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-13 10:42:55 +01:00
Ian Campbell
c5634c4650 Define CONTAINERD_REPO alongside CONTAINERD_COMMIT in tools/alpine
This will make it simpler to temporarily in PRs which are not yet merged (but
are expected to be soon).

Tools alpine is not rebuilt here since we are going to do just that in the next
commit.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-07-13 10:38:27 +01:00
Ian Campbell
aa3db640af Update alpine base to containerd v1.0.0-alpha0
New hash is linuxkit/alpine:8bb8664eec04e02a8a131c53aa7d5d94119270ef

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-07-13 10:32:00 +01:00
Justin Cormack
30128d894e Remove shellcheck from base
We should use this from a container at top level instead; it makes it
much harder to port to other architectures if we have to have this as
it is written in Haskell making a multi arch build much harder.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-07-11 22:15:27 +01:00
Rolf Neugebauer
03b78d5153 tools: Add a few more packages to the Alpine base image
- iproute2 provides a more complete suite of 'ip' utilities than
  the busybox implementation. Useful, for debugging.
- iperf3 for network testing
- tcpdump for network debugging
- expect is used in some tests. Adding it to the base image should
  make it easier to create a LinuxKit image to self-host CI.

The new version of the base package is:
linuxkit/alpine:3d57ded3edd54e616210cf0c17e3bc15eed9d03a

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-08 13:48:30 +01:00
Magnus Skjegstad
1e3c430a33 alpine: update versions
Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-07-05 22:38:24 +02:00
Magnus Skjegstad
7c063429f1 alpine: add busybox-initscripts
Add busybox-initscripts as it contains /etc/acpi needed to run
/sbin/acpid.

Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-07-05 20:48:41 +02:00
Dave Tucker
5bf63f4cc5 tools: Bring back mkimage-gcp
This was incorrectly removed in e782a469d5

Signed-off-by: Dave Tucker <dt@docker.com>
2017-07-03 17:09:55 +01:00
Ian Campbell
d5535ea3e4 tools/qemu: Use common pkg/package.mk to drive Makefile
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-07-03 10:27:31 +01:00
Ian Campbell
7534d4c926 tool/go-compile: Use common pkg/package.mk to drive Makefile
Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-07-03 10:27:31 +01:00
Vincent Demeester
a315e0b681 Fix DIRS find command to work on more system
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-07-03 10:27:31 +01:00
Rolf Neugebauer
699a864302 pkg: Update to new Alpine base
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-01 18:11:45 +01:00
Rolf Neugebauer
3019a222e8 tools: Update alpine base package
Since we have to push all new packages due to 5a225b9d
("Makefile: Fix bug where network was not disabled") we
may as well update the Alpine base to the latest.

The new tag is: 9bcf61f605ef0ce36cc94d59b8eac307862de6e1

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-01 18:11:45 +01:00
Rolf Neugebauer
0b3954257f tools: Fix containerd commit environment
Commit 4699f80e ("test: add test-containerd") added
the containerd commit hash to the alpine base image.
Unfortunately, setting it as ARG does not work and it
needs to be set with ENV for other builds to pick it up.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-07-01 18:11:45 +01:00
Tycho Andersen
31f356fe0e tools/alpine: add abuild and some audit deps
We'll use abuild in the next commit for building auditd from source.

Also add these audit deps:

* swig
* python3
* libcap-ng-dev

Signed-off-by: Tycho Andersen <tycho@docker.com>
2017-06-28 09:10:00 -06:00
Rolf Neugebauer
73e5ea8f01 tools: Update the Alpine base image to the latest versions
A subsequent commit will update all packages, so we might as well
update all packages to the latest base.

The new hash is: linuxkit/alpine:c608d404c1cb36cce0c7d9303e30b52c9d81ccf0

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-27 17:43:57 +01:00
Ian Campbell
e880052d35 alpine: Add tzdata to mirror.
Moved qemu-img to keep list fully alphabetical.

Rebuild pushed as linuxkit/alpine:c96f56ef989ccb31fd115d25c1b90f05b992271d

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-06-26 11:51:27 +01:00
Riyaz Faizullabhoy
130800446a alpine: add zfs package
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-21 17:54:45 -07:00
Riyaz Faizullabhoy
6b5ef8c70e alpine: include gnupg package
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-06-21 17:49:51 -07:00
Akihiro Suda
4699f80ef7 test: add test-containerd
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-06-19 11:04:58 -07:00