Commit Graph

3520 Commits

Author SHA1 Message Date
Justin Cormack
f9dd9f3087 Add development report for week to 28 May 2017
Slightly late, due to holiday, sorry!

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-06-01 13:49:20 +01:00
Riyaz Faizullabhoy
b822bff6ad Merge pull request #1938 from riyazdf/cleanup-js-tags
docs: move signing doc to top level and remove applejs tags
2017-05-30 12:11:10 -07:00
Riyaz Faizullabhoy
7ede6b5abe Merge pull request #1936 from justincormack/ns-nginx
Remove unnecessary namespace I missed
2017-05-30 12:00:51 -07:00
Riyaz Faizullabhoy
c983441dae Merge pull request #1935 from thebsdbox/pushUsageFix
Fix correct usage function
2017-05-30 12:00:33 -07:00
Riyaz Faizullabhoy
cb453afa26 trust: move doc to top level and remove applejs tags
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2017-05-30 11:03:57 -07:00
Rolf Neugebauer
9e39a8f642 Merge pull request #1937 from rneugeba/mstage
Convert remaining packages to multi-stage, git tree hash, and Alpine base
2017-05-30 17:52:18 +01:00
Rolf Neugebauer
cbecd19c51 cli: Update qemu runner to use the new qemu image
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
fa9151cc00 tools: Build qemu package from the Alpine base
Also use the git tree hash as the hash.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
63d5031035 tools: Add OVMF BIOS firmware to the Alpine base
This ovmf package is part of the community repository. We don't
want to "pollute" the Alpine base with it. Luckily it's juts a single
file which we can install and then copy to the base image.

The package is needed for qemu EFI boot.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
677edf8e15 Update uses of go-compile to latest
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
0d718fed40 tools: Use the Alpine base to build the go-compile image
Also, convert to use a git tree hash.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
7173529253 tests: Update YAML files with new poweroff package
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
95b13501f2 tests: Use the Alpine base image for the poweroff package
Also convert it to use the git tree hash

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
551d3dcf3a tests: Update ltp test YAML file
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
4423d1943a tests: Use multi-stage builds for LTP
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
3d745c378b tests: Update unfinished docker-bench test
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Rolf Neugebauer
d9c2c366e4 tests: Convert docker-bench to use multi-stage builds
Also update to docker 17.05.0-ce and only install
the docker CLI, not the rest.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 17:15:13 +01:00
Justin Cormack
a902e90a23 Remove unnecessary namespace I missed
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 16:30:50 +01:00
Justin Cormack
5bb90f166a Merge pull request #1934 from justincormack/default-ns-change
Default ns change
2017-05-30 16:20:38 +01:00
Rolf Neugebauer
8cbf7cb064 Merge pull request #1883 from ijc25/qemu-ga
Add a simple qemu guest agent package
2017-05-30 16:15:55 +01:00
thebsdbox
9e7214a1f8 Fix correct usage function
This fixes the push function as it currently gives the help for `run`
not `push`.

Signed-off-by: Dan Finneran <daniel.finneran@gmail.com>
2017-05-30 15:56:01 +01:00
Justin Cormack
d614ea37d1 Update Moby
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 15:41:30 +01:00
Justin Cormack
d92e19f020 Update the yaml files with new builds
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 15:40:51 +01:00
Justin Cormack
d9aada88dc Update for new default namespaces
See https://github.com/moby/tool/pull/56

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 15:06:30 +01:00
Justin Cormack
1a2dff7fc8 Merge pull request #1932 from justincormack/init-sinit
Use the sinit conventions for init
2017-05-30 14:49:19 +01:00
Justin Cormack
599f2d6f5b Update yaml files with new init
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 14:15:16 +01:00
Justin Cormack
08e211df44 Use the sinit conventions for init
This should make it easier to switch out `init` for other versions,
although the `getty` config still needs to be removed.

- use `/bin/rc.init` for start
- use `rc.shutdown` for stop
- make `rc.init` run other code.
- merge `containers` and `containerd` startup code

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-05-30 14:14:34 +01:00
Ian Campbell
497b07e57b Add a simple qemu guest agent package
We don't actually build it here, we just use the alpine package, which is
already included in the linuxkit/alpine base.

Can be instantiated with a service stanza such as:
  - name: qemu-ga
    image: "linuxkit/qemu-ga:e5fbcf55926f6e1a96b3e49a392e547e8be1022c"
    binds:
      - /dev/vport0p1:/dev/vport0p1

The only functionality I've tested is to report IP addresses to the host (e.g.
via `virsh domifaddr`).

The image is configured to use `/dev/vport0p1` by default. If your VM image is
using a different port number then you can either incorporate the rename into
the bind ("/dev/vport1p1:/dev/vport0p1") or override the command with:
    command: ["/usr/bin/qemu-ga", "-p", "/dev/vport1p1"]

The mdev tool appears to not create the symlinks which udev would provide
`/dev/virtio-ports/org.qemu.guest_agent.0` hence the need to hardcode the
potentially unstable `/dev/vportNp1`, `N` seems to depend on the number and
order of virtio devices in use. I don't know if it is possible to get mdev to
create these links. For reference the udev rule is:

    SUBSYSTEM=="virtio-ports", KERNEL=="vport*", ATTR{name}=="?*", SYMLINK+="virtio-ports/$attr{name}"

See https://wiki.libvirt.org/page/Qemu_guest_agent for more info on the guest
agent.

A suitable stanza is added to `projects/swarmd/swarmd.yml` since that is where
I am using it.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-05-30 13:59:35 +01:00
Rolf Neugebauer
063d82c687 Merge pull request #1930 from rneugeba/kup
kernel: Update to 4.11.3/4.9.30/4.4.70
2017-05-30 12:49:21 +01:00
Rolf Neugebauer
8d0182e17c kernel: Update to 4.11.3/4.9.30/4.4.70, remove 4.10.x
4.10.x has been EOLed. Remove it from the build and tests.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-30 12:32:09 +01:00
Justin Cormack
6f26ad65cc Merge pull request #1928 from rneugeba/go
Remove remaining uses of tools/go-compile from packages
2017-05-29 19:46:12 +01:00
Rolf Neugebauer
360e9870d6 Merge pull request #1926 from MagnusS/no-networking
hyperkit: Add --networking option
2017-05-29 19:23:52 +01:00
Magnus Skjegstad
eadb3066f3 hyperkit: Add --networking option
Adds a new --networking option to simplify selection of networking modes
for `linuxkit run hyperkit`. The new modes are "docker-for-mac",
"vpnkit" and "none".

By default docker-for-mac will be used for networking. HyperKit will
then connect to the default VPNKit socket location used by Docker for
Mac.

In vpnkit-mode a new VPNKit instance is started and the socket
"vpnkit_eth.sock" is created in the state directory. This mode also
enables port forwarding via 9p and vsock. The vpnkit mode optionally
accepts a path to an existing VPNKit socket. This allows two or more VMs
to be connected to the same virtual network - but only the VM that
created the the socket can use port forwarding.

Mode "none" disables networking.

Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-05-29 19:49:13 +02:00
Rolf Neugebauer
79f5c59813 tests: Use Alpine base to compile virtsock test program
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 17:30:57 +01:00
Rolf Neugebauer
8cff978fab Update YAML files with updated binfmt package
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 17:30:57 +01:00
Rolf Neugebauer
ebc7bd181a pkg: Update the binfmt packages to use the Alpine base compiling
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 17:30:57 +01:00
Rolf Neugebauer
b70410a478 Update YAML files to updated metadata package
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 17:30:57 +01:00
Rolf Neugebauer
6d59041daa pkg: Update the metadata package to multi-stage build and alpine base
- Use the alpine base to compile the go program
- Use a multi-stage build

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 17:30:57 +01:00
Justin Cormack
e83aee2604 Merge pull request #1927 from thebsdbox/qemu_mistake
Fixes disk size output typo
2017-05-29 16:19:42 +01:00
thebsdbox
bbde9f5baa Fixes disk size output typo
The error was incorrect when unable to parse the disk size.

Signed-off-by: Dan Finneran <daniel.finneran@gmail.com>
2017-05-29 14:15:56 +01:00
Rolf Neugebauer
9086dd0435 Merge pull request #1925 from rneugeba/tests
Tweak package tests and add more
2017-05-29 14:08:09 +01:00
Magnus Skjegstad
6c3dfea808 vendor: Update hyperkit to latest version
Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-05-29 12:51:48 +02:00
Rolf Neugebauer
96e45aeee5 tests: Add a test for the ca-certificates package
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 11:42:08 +01:00
Rolf Neugebauer
f434615f91 tests: Add a test for the dhcpcd package
This test check that the link is up, that we got a IP address
and the output of the dhcpcd daemon.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 11:42:07 +01:00
Rolf Neugebauer
885e6a7f0a tests: Add a test for the binfmt package
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 11:42:07 +01:00
Rolf Neugebauer
9efac10874 tests: Remove systctl test package
It is not longer needed.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 11:42:07 +01:00
Rolf Neugebauer
15a05d6260 tests: Simplify sysctl test
Don't rely on systctl test package. Instead, add the check shell
script to the image and execute it with a standard Alpine image.

While at it, make the test more verbose.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 11:42:06 +01:00
Rolf Neugebauer
4aa4129acf tests: Reorder package tests
Use the index in the alphabet (a=1...) to group the tests
a little bit. The actual order does not matter.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 11:42:06 +01:00
Rolf Neugebauer
5a705a999b tools: Add strace to the Alpine base
While not used anywhere, adding it to the based makes it easy
to add temporarily add it to init (or elsewhere) for debugging.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-05-29 11:42:06 +01:00
Justin Cormack
7b9356c320 Merge pull request #1922 from rneugeba/strace
tools: Add strace to the Alpine base
2017-05-28 10:58:36 +01:00