Skip to content

Commit d0cd661

Browse files
author
Ian Campbell
committed
CI: Build .iso (but not -efi.iso) images.
Previously (in #8) building both seemed to timeout or otherwise fall foul of some sort of infra glitch. Try just building one for now. This is a first step in trying to actually boot images in CI. Signed-off-by: Ian Campbell <[email protected]>
1 parent 5f3b89a commit d0cd661

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed

.circleci/config.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,17 @@ linuxkit_pkg_build: &linuxkit_pkg_build
3535
image_build: &image_build
3636
docker:
3737
- image: debian:stretch
38+
# image builds seem to need a bit more grunt (RAM) than usual. Possibly getting OOM killed, which https://github.com/moby/tool/pull/191 might help.
39+
# NB: This will become a paid for feature at some point soon (with plenty of warning), so is not a long term solution.
40+
resource_class: large
3841
steps:
3942
- run:
4043
name: Configure $PATH
4144
command: echo 'export PATH=/workspace/bin:$PATH' >> $BASH_ENV
4245
- run:
4346
name: Install packages
4447
# ca-certificates are needed for attach_workspace (and git over https)
45-
command: apt-get update && apt-get install -y ca-certificates curl git make openssh-client
48+
command: apt-get update && apt-get install -y ca-certificates curl git make openssh-client strace
4649
- attach_workspace:
4750
at: /workspace
4851
- checkout
@@ -72,10 +75,12 @@ image_build: &image_build
7275
command: |
7376
mkdir -p /workspace/images/kube-$KUBE_RUNTIME-$KUBE_NETWORK
7477
df -h .
75-
# KUBE_FORMATS="iso-efi iso-bios" times out or fails for larger docker images.
76-
# Just do tar for now.
77-
make KUBE_FORMATS="tar" kube-master.iso kube-node.iso
78-
#mv kube-master*.iso kube-node*.iso /workspace/images/kube-$KUBE_RUNTIME-$KUBE_NETWORK
78+
ulimit -a
79+
make LINUXKIT_ARGS="-v" KUBE_FORMATS="iso-bios" kube-master.iso kube-node.iso
80+
mv kube-master*.iso kube-node*.iso /workspace/images/kube-$KUBE_RUNTIME-$KUBE_NETWORK
81+
- persist_to_workspace:
82+
root: /workspace
83+
paths: images
7984

8085
version: 2
8186
jobs:

Makefile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ KUBE_FORMAT_ARGS := $(patsubst %,-format %,$(KUBE_FORMATS))
1414
all: kube-master.iso kube-node.iso
1515

1616
kube-master.iso: yml/kube.yml yml/$(KUBE_RUNTIME).yml yml/$(KUBE_RUNTIME)-master.yml yml/$(KUBE_NETWORK).yml
17-
linuxkit $(LINUXKIT_ARGS) build $(LINUXKIT_BUILD_ARGS) -name kube-master $(KUBE_FORMAT_ARGS) $^
17+
# strace logs received signals
18+
strace -f -e trace=signal linuxkit $(LINUXKIT_ARGS) build $(LINUXKIT_BUILD_ARGS) -name kube-master $(KUBE_FORMAT_ARGS) $^
1819

1920
kube-node.iso: yml/kube.yml yml/$(KUBE_RUNTIME).yml yml/$(KUBE_NETWORK).yml
2021
linuxkit $(LINUXKIT_ARGS) build $(LINUXKIT_BUILD_ARGS) -name kube-node $(KUBE_FORMAT_ARGS) $^

0 commit comments

Comments
 (0)