Commit Graph

4998 Commits

Author SHA1 Message Date
Rolf Neugebauer
5609cdeae7 kernel: Update to 4.9.55
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-10-20 20:22:03 +01:00
Rolf Neugebauer
136dafe2c6 build: Update moby tool to latest
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-10-20 20:22:03 +01:00
Rolf Neugebauer
c15f320ff6 tools: Add mkimage-rpi3 to build images for raspberry Pi 3
The package contains u-boot and the RPi firmware blobs. It expects
a tar ball of the root filesystem (including kernel and dtbs) on stdin
and produces a compressed tar ball on stdout with the files to copy to
a FAT32 formatted SD card.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-10-19 09:20:21 +02:00
Rolf Neugebauer
847ae9d220 kernel: Add dtbs files to kernel.tar under /boot/dtb
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-10-19 09:20:21 +02:00
Rolf Neugebauer
ef67a145d9 kernel: Add minimal kernel config for the Raspberry Pi 3b
- Enable ARCH_BCM2835
- Enable USB_NET_SMSC95XX.
- Compile in MII and USB_USBNET. These are needed
  by the onboard network driver
- Enable the DWC2 USB controller.
- Enabled MMC, MMC_SDHCI, MMC_BCM2835 for SD card access
- Enable various BCM2835 platform devices: HW_RANDOM_BCM2835,
  I2C_BCM2835, PINCTRL_BCM2835, DMA_BCM2835,BCM2835_MBOX,
  WM_BCM2835, ...
- Enable SERIAL_8250 and friends.
- Enable FB_SIMPLE to get console output

The above configuration gives a minimal working system
with serial console access (via the GPIO pins), networking
and SD storage. The smsc95xx network driver does not
seem to get autoloaded. This is likely a mdev issue.

We specifically do not configure any WLAN,
sound or graphics drivers as they would pull in
too many other cruft into the kernel. To enable
these we consider adding a -rpi3 config similar
to the -dbg config to provide additional kernel
config options.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-10-19 09:20:21 +02:00
Rolf Neugebauer
5cc4f00cf0 Merge pull request #2624 from yankcrime/openstack_metadata_fix
Fix broken AWS / OpenStack metadata, add example config for latter
2017-10-19 09:11:12 +02:00
Nick Jones
490ac8a8f3
[OpenStack] Add example configuration
Signed-off-by: Nick Jones <nick@dischord.org>
2017-10-18 22:57:33 +01:00
Nick Jones
5663112822
Fix typo which broke metadata retrieval
Signed-off-by: Nick Jones <nick@dischord.org>
2017-10-18 22:47:03 +01:00
Justin Cormack
bf05569790 Merge pull request #2617 from deitch/fix-compose-example
Move mounted file from /var/html to /etc/html
2017-10-18 13:16:29 +02:00
Rolf Neugebauer
bc1fdd2b79 Merge pull request #2615 from zx2c4/wireguard-bump
wireguard: update to 0.0.20171017
2017-10-18 10:14:10 +02:00
Avi Deitcher
da42ced2db Move mounted file from /var/html to /etc/html
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2017-10-18 10:58:38 +03:00
Jason A. Donenfeld
5db1bbeef6 wireguard: update to 0.0.20171017
Simple version bump. Changes:

  * noise: handshake constants can be read-only after init
  * noise: no need to take the RCU lock if we're not dereferencing
  * send: improve dead packet control flow
  * receive: improve control flow
  * socket: eliminate dead code
  * device: our use of queues means this check is worthless
  * device: no need to take lock for integer comparison
  * blake2s: modernize API and have faster _final
  * compat: support READ_ONCE
  * compat: just make ro_after_init read_mostly

  Assorted cleanups to the module, including nice things like marking our
  precomputations as const.

  * Makefile: even prettier output
  * Makefile: do not clean before cloc
  * selftest: better test index for rate limiter
  * netns: disable accept_dad for all interfaces

  Fixes in our testing and build infrastructure. Now works on the 4.14 rc
  series.

  * qemu: add build-only target
  * qemu: work on ubuntu toolchain
  * qemu: add more debugging options to main makefile
  * qemu: simplify shutdown
  * qemu: open /dev/console if we're started early
  * qemu: phase out bitbanging
  * qemu: always create directory before untarring
  * qemu: newer packages
  * qemu: put hvc directive into configuration

  This is the beginning of working out a cross building test suite, so we do
  several tricks to be less platform independent.

  * tools: encoding: be more paranoid
  * tools: retry resolution except when fatal
  * tools: don't insist on having a private key
  * tools: add pass example to wg-quick man page
  * tools: style
  * tools: newline after warning
  * tools: account for padding being in zero attribute

  Several important tools fixes, one of which suppresses a needless warning.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-10-17 22:18:45 +02:00
Justin Cormack
db27618f11 Merge pull request #2611 from ijc/linuxkit-pkg-later-prompting
linuxkit pkg: defer content trust passphrase setup until we know it i…
2017-10-14 08:35:57 +01:00
Rolf Neugebauer
3718bd3da7 Merge pull request #2610 from rn/dtc
tools: Add dtc to alpine base
2017-10-13 17:07:52 +01:00
Ian Campbell
fc31e3bddd linuxkit pkg: defer content trust passphrase setup until we know it is needed
Otherwise "linuxkit pkg build" etc will needlessly run the command (which might
prompt the user).

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-13 15:56:27 +01:00
Rolf Neugebauer
deb1b2980b tools: Add dtc to alpine base
The device tree compiler is needed for some of the ongoing
arm64 work

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-10-13 14:18:33 +00:00
Rolf Neugebauer
4de1b1444a Merge pull request #2608 from ijc/linuxkit-pkg-config
linuxkit: allow user to configure a content trust passphrase command
2017-10-13 13:38:58 +01:00
Ian Campbell
dfd72db820 Merge pull request #2607 from ijc/content-trust
enable content trust for a bunch more repos
2017-10-13 13:03:46 +01:00
Ian Campbell
dd8e3d49e8 linuxkit: allow user to configure a content trust passphrase command
Could be e.g.:
```
pkg:
  content-trust-passphrase-command: "lpass show <key> --password"
```
or
```
pkg:
  content-trust-passphrase-command: "gpg -d ~/.notary/passphrase.gpg"
```

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-13 11:41:22 +01:00
Ian Campbell
5380c7a18d update-component-sha: Accept easier to cut-n-paste --image arguments.
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-13 10:46:57 +01:00
Ian Campbell
a87a07c8e9 tools: enable content trust for mkimage-*
A few of these already had content-trust, enable for the remaineder.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-13 10:21:17 +01:00
Ian Campbell
d606c88e80 Bump linuxkit/test-ltp hash
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-13 10:15:57 +01:00
Ian Campbell
28583eb747 Reenable content-trust for linuxkit/test-ltp
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-13 10:10:34 +01:00
Justin Cormack
d3549b78f5 Merge pull request #2604 from ijc/go1.9
Update to go 1.9
2017-10-12 20:10:01 +01:00
Ian Campbell
5e6a78821b Update yaml and reenable linuxkit.packages.containerd test
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 17:29:19 +01:00
Ian Campbell
9facf7b585 ip: Update to newest alpine.
Rebuild to pickup newer go also picked up newer wireguard-tools,
0.0.20171005-r0 → 0.0.20171011-r0.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 16:51:37 +01:00
Ian Campbell
29fc12607f Update various other go base pkgs to newer alpine (go1.9)
These are those which set $GOPATH but don't use go-compile.sh.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 16:50:47 +01:00
Ian Campbell
a9b03c3f95 Update all users of go-compile.sh to new alpine (go1.9)
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 16:47:35 +01:00
Ian Campbell
aba82533a0 Update go system components to new alpine (go1.9)
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 16:45:01 +01:00
Ian Campbell
6a51e5f937 Update references to linuxkit/go-compile to latest.
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 16:41:57 +01:00
Justin Cormack
e90337bd44 Merge pull request #2602 from justincormack/wg-kernel
Fix kernel version in Wireguard example
2017-10-12 16:40:16 +01:00
Ian Campbell
02bd90393f go-compile: Bump to new alpine (with go1.9)
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 16:36:18 +01:00
Ian Campbell
6ee21a37c6 alpine: Pull in go (1.9) from Edge
This is a requirement of containerd.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 15:32:15 +00:00
Ian Campbell
1d030172bf Merge pull request #2600 from ijc/containerd-v1.0.0-beta.2
Bump to containerd v1.0.0-beta.2
2017-10-12 16:19:01 +01:00
Ian Campbell
50ebd2709c Merge pull request #2601 from ijc/kubernetes
kubernetes: Mount /etc/os-release into docker cotainer too
2017-10-12 15:47:36 +01:00
Justin Cormack
1c7065bde9 Fix kernel version in Wireguard example
This must have had a merge error. Fixes version mismatch which
stops this working. The test was updated so is fine.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-10-12 15:14:50 +01:00
Ian Campbell
5d5f9fde43 tests: skip linuxkit.packages.containerd
Will decide how to deal with this long term depending on the resolution of
https://github.com/containerd/containerd/issues/1632.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 14:59:52 +01:00
Ian Campbell
504b5388bd kubernetes: Mount /etc/os-release into docker cotainer too
This makes `docker info` show the same OS as `kubectl get -o wide nodes`.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 14:14:46 +01:00
Ian Campbell
b20422211c Merge pull request #2599 from ijc/kubernetes
kubernetes: populate /etc/os-release so NodeSystemInfo.OSImage != "Unknown"
2017-10-12 13:05:27 +01:00
Ian Campbell
510802a245 Update yml
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 13:04:16 +01:00
Ian Campbell
2875ef0e82 runc: Update to version used by containerd v1.0.0-beta.2
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 13:01:06 +01:00
Ian Campbell
aeed5f6b40 init,containerd: bump to new alpine with v1.0.0-beta.2.
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 12:57:08 +01:00
Ian Campbell
19a02ef28c alpine: bump to containerd v1.0.0-beta.2
Note that a237b51511 ("Bump alpine base across the board.") inadvertently
corrupted `tools/alpine/versions.aarch64` (by updating it to the amd64 hash),
this commit corrects this as part of the rebuild.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 12:51:20 +01:00
Justin Cormack
7285289c98 Merge pull request #2598 from ijc/linuxkit-pkg-local-vet-test
Add fmt/lint/etc and test to local target
2017-10-12 12:19:57 +01:00
Justin Cormack
098110e3c8 Merge pull request #2597 from ijc/linuxkit-pkg-hash
linuxkit pkg: correct behaviour when user explictly specifies a hash.
2017-10-12 12:19:46 +01:00
Justin Cormack
995bde5a54 Merge pull request #2558 from deitch/raw-bios
Add support to make minimal raw bios images
2017-10-12 11:24:14 +01:00
Justin Cormack
3b07a9e793 Merge pull request #2540 from deitch/raw-efi
Add support to make raw efi images
2017-10-12 11:23:32 +01:00
Ian Campbell
27f8cb7283 Update yml
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 11:16:46 +01:00
Ian Campbell
466e5db203 kubernetes: Add /etc/os-release to host and bind to kubelet image.
Adding a `PRETTY_NAME` to this causes it to appear in the node information:

    $ kubectl --namespace=kube-system get -o wide nodes
    NAME                    STATUS    ROLES     AGE       VERSION   EXTERNAL-IP   OS-IMAGE                      KERNEL-VERSION    CONTAINER-RUNTIME
    linuxkit-b6e09efea36e   Ready     master    29m       v1.8.0    <none>        LinuxKit Kubernetes Project   4.9.53-linuxkit   containerd://1.0.0-beta.1

Previously it would be `Unknown`.

A later yaml passed to `moby build` can override this by simply duplicating
the path.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 11:15:50 +01:00
Ian Campbell
26d93d613c kubernetes: use copy --from=image-ref
I hadn't realised this was possible, it means we don't need the dummy `FROM ...
AS docker`.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-10-12 11:09:10 +01:00