Commit Graph

6772 Commits

Author SHA1 Message Date
Justin Cormack
3dbad3b7da
Merge pull request #214 from rn/squash
Add  'kernel+squashfs' output format
2018-04-16 14:46:47 +01:00
Rolf Neugebauer
a39cee3f18 initrd: Skip rest of ./boot
For the initrd we only want to extract kernel, cmdline, and
the ucode CPIO archive. Skip whatever is left in ./boot

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-16 14:42:14 +01:00
Rolf Neugebauer
ad11be6b83 moby: Add 'kernel+squashfs' output
This output produces a kernel and a root filesystem
in squashfs format. squashfs is a read-only, compressed
filesystem.

The 'kernel+squashfs' output can be used in a similar way as
the default 'kernel+initrd' output format with the benefit
that the rootfs does not consume any memory.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-16 14:35:38 +01:00
Rolf Neugebauer
52cb0e1cfe moby: Improve debug output for 'docker run'
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-16 14:12:19 +01:00
Rolf Neugebauer
11db895b65
Merge pull request #3001 from rn/kup
Update to kernels to 4.9.94 and 4.4.128
2018-04-14 17:38:17 +01:00
Rolf Neugebauer
c675f1d214 Update YAMLs to latest kernels
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@gmail.com>
2018-04-14 12:21:53 +01:00
Rolf Neugebauer
ae6a739ac0 kernel: Skip compiling perf for 4.9.x
4.9.93 broke the compile:

  tests/code-reading.c: In function 'read_object_code':
  tests/code-reading.c:228:19: error: 'KMOD_DECOMP_LEN' undeclared (first use in this function)
    char decomp_name[KMOD_DECOMP_LEN];
                     ^~~~~~~~~~~~~~~
  tests/code-reading.c:228:19: note: each undeclared identifier is reported only once for each function it appears in
  tests/code-reading.c:291:7: error: implicit declaration of function 'dso__decompress_kmodule_path' [-Werror=implicit-function-declaration]
    if (dso__decompress_kmodule_path(al.map->dso, objdump_name,
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
  tests/code-reading.c:291:3: error: nested extern declaration of 'dso__decompress_kmodule_path' [-Werror=nested-externs]
    if (dso__decompress_kmodule_path(al.map->dso, objdump_name,
    ^~
  tests/code-reading.c:228:7: error: unused variable 'decomp_name' [-Werror=unused-variable]
    char decomp_name[KMOD_DECOMP_LEN];
         ^~~~~~~~~~~
  cc1: all warnings being treated as errors
  mv: can't rename '/build/perf/tests/.code-reading.o.tmp': No such file or directory
  make[3]: *** [/linux/tools/build/Makefile.build:101: /build/perf/tests/code-reading.o] Error 1
  make[3]: *** Waiting for unfinished jobs....
  make[2]: *** [/linux/tools/build/Makefile.build:144: tests] Error 2
  make[2]: *** Waiting for unfinished jobs....
  make[2]: *** [/linux/tools/build/Makefile.build:144: util] Error 2
  make[1]: *** [Makefile.perf:559: /build/perf/libperf-in.o] Error 2
  make[1]: *** Waiting for unfinished jobs....
  make[1]: *** [Makefile.perf:396: /build/perf/perf-in.o] Error 2
  make: *** [Makefile:69: all] Error 2
  make: Leaving directory '/linux/tools/perf'

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@gmail.com>
2018-04-14 12:21:53 +01:00
Rolf Neugebauer
054b9bb924 kernel: Update to 4.9.94/4.4.128
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@gmail.com>
2018-04-14 11:18:33 +01:00
Justin Cormack
8a11bf255d
Merge pull request #3000 from rn/kernel-up
Kenrel update to 4.16.2/4.15.17/4.14.34 plus MPLS_ROUTING/IPTUNNEL
2018-04-14 10:16:35 +01:00
Rolf Neugebauer
ed48e5adad Update YAML files to latest kernels
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-13 17:13:08 +01:00
Rolf Neugebauer
4454c7b854 kernel: Enable MPLS_ROUTING and MPLS_IPTUNNEL as modules
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-13 15:21:57 +01:00
Rolf Neugebauer
d1b73f7cf3 kernel: Update to 4.16.2/4.15.17/4.14.34
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-13 14:53:19 +01:00
Rolf Neugebauer
4a569d2815
Merge pull request #213 from rn/mkimage
Add ability to overwrite images used for outputs
2018-04-13 13:56:16 +01:00
Rolf Neugebauer
4cae8c95e3 Add ability to overwrite images used for outputs
We currently hardcode the Linuxkit/mkimage- images. This has the
unfortunate consequence that, if we update the LinuxKit image used
to generate the output, we have to update the Moby tool and then
vendor it back into the LinuxKit repository.

This commit introduces UpdateOutputImages() which allows a client
of the Moby tools package to selectively overwrite the packages
used to generate the outputs.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@gmail.com>
2018-04-13 13:50:33 +01:00
Justin Cormack
9534e84ffe
Merge pull request #212 from justincormack/notaryup
Update Notary vendor
2018-04-12 11:37:44 +01:00
Justin Cormack
ede65b6445 Update Notary vendor
Bring some other vendoring in line with Notary

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2018-04-11 11:13:10 +01:00
Rolf Neugebauer
78e0305666
Merge pull request #2996 from ijc/init-no-spurious-tty-files
Avoid writing to tty devices which don't actually exist.
2018-04-09 15:28:19 +01:00
Rolf Neugebauer
6576bd7355
Merge pull request #2995 from rn/kern-up
Update kernels to 4.15.16/4.14.33/4.9.93/4.4.127 and add 4.16.1
2018-04-09 15:27:50 +01:00
Ian Campbell
3301af529c Avoid writing to tty devices which don't actually exist.
$ git diff linuxkit.yml
    diff --git a/linuxkit.yml b/linuxkit.yml
    index e2ec829db..21b84e4ad 100644
    --- a/linuxkit.yml
    +++ b/linuxkit.yml
    @@ -1,6 +1,6 @@
     kernel:
       image: linuxkit/kernel:4.14.32
    -  cmdline: "console=tty0 console=ttyS0 console=ttyAMA0"
    +  cmdline: "console=ttyS0 console=foobar"
     init:
       - linuxkit/init:v0.3
       - linuxkit/runc:v0.3
    $ linuxkit  build linuxkit.yml
    [...]
    $ linuxkit run linuxkit
    [...]
    getty: cmdline has console=foobar but /dev/foobar is not a character device; not starting getty for foobar

    linuxkit-2ae2c420a11c login: root (automatic login)

    Welcome to LinuxKit!

    NOTE: This system is namespaced.
    The namespace you are currently in may not be the root.
    (ns: getty) linuxkit-2ae2c420a11c:~# ls -l /proc/1/root/dev/foobar
    -rw-r--r--    1 root     root           311 Apr  9 13:19 /proc/1/root/dev/foobar
    (ns: getty) linuxkit-2ae2c420a11c:~# cat /proc/1/root/dev/foobar

    Welcome to LinuxKit

                            ##         .
                      ## ## ##        ==
                   ## ## ## ## ##    ===
               /"""""""""""""""""\___/ ===
              {                       /  ===-
               \______ O           __/
                 \    \         __/
                  \____\_______/

Also added quotes around $tty for good measure.

Signed-off-by: Ian Campbell <ijc@docker.com>
2018-04-09 14:26:49 +01:00
Rolf Neugebauer
c45e747c81 Update YAMLs to the latest kernels
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 14:09:11 +01:00
Rolf Neugebauer
05e52f4269 tests: Add kernel module test for 4.16.x
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 14:07:37 +01:00
Rolf Neugebauer
141262f7f8 tests: Add kernel config test for 4.16.x
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 14:07:37 +01:00
Rolf Neugebauer
8b403d618a tests: Update kernel-config package
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 14:07:05 +01:00
Rolf Neugebauer
dfeaf8b5f6 tests: Adjust check for CONFIG_CC_STACKPROTECTOR
This option was removed in 4.16.x in favour of
CONFIG_CC_STACKPROTECTOR_AUTO. We do not check for
this option as we also force CONFIG_CC_STACKPROTECTOR_STRONG.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 13:59:57 +01:00
Rolf Neugebauer
a5c039f7ad kernel: Add bison/flex to kconfig Dockerfile
These are required for the 4.16.x kernel configuration.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 11:21:13 +01:00
Rolf Neugebauer
b69fc45955 kernel: Add the 4.16.1 kernel
The kernel config is based on the 4.15.x kernel config
run through 'make defconfig && make oldconfig' and then
tweaked a little by hand.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 11:20:19 +01:00
Rolf Neugebauer
fa9452af09 kernel: Update to 4.15.16/4.14.33/4.9.93/4.4.127
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-09 10:35:34 +01:00
Ian Campbell
12c8195064
Merge pull request #2993 from ijc/pkg-build-no-release
pkg: build: do not infer a release if not pushing
2018-04-06 16:28:06 +01:00
Ian Campbell
3be156da13 pkg: build: do not infer a release if not pushing
If you happen to be exactly on a tag then:

    $ linuxkit pkg build --dev pkg/init
    Building "ijc/init:dev"
    Cannot release "v0.3" if not pushing

Do not try and infer a release if not pushing so this is possible again.

The subsequent check for `bo.release != "" && !bo.push` remains since the
caller could have used `WithRelease` but not `WithPush`. Our CLI never does
this, but a hypothetical other user of the library might.

Signed-off-by: Ian Campbell <ijc@docker.com>
2018-04-06 14:13:08 +01:00
Rolf Neugebauer
695a10489b
Merge pull request #2992 from rn/post-release
build: Bump version to v0.3+
2018-04-05 22:23:49 +01:00
Rolf Neugebauer
649598cf94 build: Bump version to v0.3+
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@gmail.com>
2018-04-05 21:19:31 +01:00
Rolf Neugebauer
37e29b45b3
Merge pull request #2990 from rn/pre-release
Final preparation for v0.3 release
2018-04-05 21:17:59 +01:00
Rolf Neugebauer
ba1b7a40cb build: Fix circle CI name for s390x build step
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@gmail.com>
2018-04-05 20:04:03 +01:00
Rolf Neugebauer
1cbe0db4a9 Add CHANGELOG
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 20:03:31 +01:00
Justin Cormack
110bded295
Merge pull request #2991 from justincormack/local-build-options
Add more local build options and make static non-pie the default
2018-04-05 17:50:13 +01:00
Justin Cormack
4daeb1e997
Add more local build options and make static non-pie the default
static pie only seems to work on Alpine currently, but static is
a good default. Give the user choices...

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2018-04-05 16:55:47 +01:00
Rolf Neugebauer
db663d30a6 Update YAMLs to released packages
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 15:23:20 +01:00
Rolf Neugebauer
2d00440351 pkg: Update to latest alpine base
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 14:05:39 +01:00
Rolf Neugebauer
1695dfa3db build: Bump the version to v0.3
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 14:00:43 +01:00
Rolf Neugebauer
c4f613e047 cmd: Update the moby tool vendoring
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 14:00:10 +01:00
Rolf Neugebauer
2d699d4e9b tests: Update tests packages
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 11:42:39 +01:00
Rolf Neugebauer
486e313fe3
Merge pull request #211 from rn/update
Update mkimage images based on linuxkit/alpine to latest.
2018-04-05 11:37:59 +01:00
Rolf Neugebauer
3dd5cfcbc9 tests: Update to the latest alpine base
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 11:34:27 +01:00
Rolf Neugebauer
f848bc9a3c Update mkimage images based on linuxkit/alpine to latest.
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 11:07:53 +01:00
Rolf Neugebauer
4a0813ec2e cmd: Update linuxkit/qemu to the latest
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 10:59:12 +01:00
Rolf Neugebauer
e03703dede build: Update go-compile to the latest
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 10:58:01 +01:00
Rolf Neugebauer
39b9ac9b7f tools: Update tools to the latest alpine base image
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 10:49:00 +01:00
Rolf Neugebauer
2810dfe951 build: Build the s390x linuxkit binary in CI
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2018-04-05 10:47:16 +01:00
Rolf Neugebauer
cfb7cfb8ec
Merge pull request #2988 from rn/no-rt
kernel: Don't compile -rt kernels on s390x
2018-04-04 23:50:22 +01:00
Rolf Neugebauer
a8cc4f4f42 kernel: Don't compile -rt kernels on s390x
Looks like commit 9a88a5e986 ("Upgrade -rt patches to
v4.14.29-rt25") accidentally added compiling -rt kernels
for s390x. Remove it.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@gmail.com>
2018-04-04 22:51:07 +01:00