From 7d08c3f9c14fb8b0eb833eb00e369d361b1c117f Mon Sep 17 00:00:00 2001 From: Justin Cormack Date: Sun, 11 Sep 2016 15:06:05 +0100 Subject: [PATCH] we never use uncompressed initrd, so always compress Signed-off-by: Justin Cormack --- Dockerfile.qemu | 4 ++-- Dockerfile.test | 4 ++-- Makefile | 8 ++++---- alpine/Dockerfile.bios | 2 +- alpine/Dockerfile.efi | 4 ++-- alpine/Makefile | 12 ++++-------- alpine/isolinux.cfg | 2 +- alpine/mkinitrd.sh | 2 +- 8 files changed, 17 insertions(+), 21 deletions(-) diff --git a/Dockerfile.qemu b/Dockerfile.qemu index e55b4ec0d..2f6753140 100644 --- a/Dockerfile.qemu +++ b/Dockerfile.qemu @@ -1,8 +1,8 @@ FROM mobylinux/alpine-qemu:1f3de121e9dea39a198413344a72049839bea91b -COPY alpine/initrd.img.gz . +COPY alpine/initrd.img . COPY alpine/kernel/x86_64/vmlinuz64 . RUN qemu-img create -f raw disk.img 100M -ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img.gz", "-m", "2048", "-append", "earlyprintk=serial console=ttyS0 noapic", "-vnc", "none" ] +ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img", "-m", "2048", "-append", "earlyprintk=serial console=ttyS0 noapic", "-vnc", "none" ] diff --git a/Dockerfile.test b/Dockerfile.test index a139de963..a3e325cf8 100644 --- a/Dockerfile.test +++ b/Dockerfile.test @@ -1,8 +1,8 @@ FROM mobylinux/alpine-qemu:1f3de121e9dea39a198413344a72049839bea91b -COPY alpine/initrd.img.gz . +COPY alpine/initrd.img . COPY alpine/kernel/x86_64/vmlinuz64 . RUN qemu-img create -f raw disk.img 100M -ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img.gz", "-m", "1024", "-append", "earlyprintk=serial console=ttyS0 noapic mobyplatform=test", "-vnc", "none" ] +ENTRYPOINT [ "qemu-system-x86_64", "-drive", "file=disk.img,format=raw", "-device", "virtio-rng-pci", "-serial", "stdio", "-kernel", "vmlinuz64", "-initrd", "initrd.img", "-m", "1024", "-append", "earlyprintk=serial console=ttyS0 noapic mobyplatform=test", "-vnc", "none" ] diff --git a/Makefile b/Makefile index 6034bd4d5..9e52ffddf 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,8 @@ all: $(MAKE) -C alpine -alpine/initrd.img.gz: - $(MAKE) -C alpine initrd.img.gz +alpine/initrd.img: + $(MAKE) -C alpine initrd.img alpine/kernel/x86_64/vmlinuz64: $(MAKE) -C alpine/kernel x86_64/vmlinuz64 @@ -10,7 +10,7 @@ alpine/kernel/x86_64/vmlinuz64: alpine/mobylinux-bios.iso: $(MAKE) -C alpine mobylinux-bios.iso -qemu: Dockerfile.qemu alpine/initrd.img.gz alpine/kernel/x86_64/vmlinuz64 +qemu: Dockerfile.qemu alpine/initrd.img alpine/kernel/x86_64/vmlinuz64 tar cf - $^ | docker build -f Dockerfile.qemu -t mobyqemu:build - docker run -it --rm mobyqemu:build @@ -18,7 +18,7 @@ qemu-iso: Dockerfile.qemuiso alpine/mobylinux-bios.iso tar cf - $^ | docker build -f Dockerfile.qemuiso -t mobyqemuiso:build - docker run -it --rm mobyqemuiso:build -test: Dockerfile.test alpine/initrd.img.gz alpine/kernel/x86_64/vmlinuz64 +test: Dockerfile.test alpine/initrd.img alpine/kernel/x86_64/vmlinuz64 $(MAKE) -C alpine tar cf - $^ | docker build -f Dockerfile.test -t mobytest:build - touch test.log diff --git a/alpine/Dockerfile.bios b/alpine/Dockerfile.bios index b6c074f69..7a78d7361 100644 --- a/alpine/Dockerfile.bios +++ b/alpine/Dockerfile.bios @@ -3,7 +3,7 @@ FROM mobylinux/alpine-bios:626757290dbb54109514af22108645cae9ea40c3 WORKDIR /tmp/iso -COPY initrd.img.gz ./ +COPY initrd.img ./ COPY kernel/x86_64/vmlinuz64 ./ COPY isolinux.cfg ./isolinux/ diff --git a/alpine/Dockerfile.efi b/alpine/Dockerfile.efi index c23360a9a..92d7ba8e5 100644 --- a/alpine/Dockerfile.efi +++ b/alpine/Dockerfile.efi @@ -3,7 +3,7 @@ FROM mobylinux/alpine-efi:2f8c8e9ecc4bfefaf1b5ca56bac5506baba301f2 WORKDIR /tmp/efi -COPY initrd.img.gz ./ +COPY initrd.img ./ COPY kernel/x86_64/vmlinuz64 ./ # Create a EFI boot file with kernel and initrd. From: @@ -14,7 +14,7 @@ RUN cp /usr/lib/gummiboot/linuxx64.efi.stub . && \ --add-section .osrel=/etc/os-release --change-section-vma .osrel=0x20000 \ --add-section .cmdline=./cmdline.txt --change-section-vma .cmdline=0x30000 \ --add-section .linux=./vmlinuz64 --change-section-vma .linux=0x40000 \ - --add-section .initrd=initrd.img.gz --change-section-vma .initrd=0x3000000 \ + --add-section .initrd=initrd.img --change-section-vma .initrd=0x3000000 \ ./linuxx64.efi.stub \ mobylinux.efi diff --git a/alpine/Makefile b/alpine/Makefile index 8881561ab..5873cd5b7 100644 --- a/alpine/Makefile +++ b/alpine/Makefile @@ -1,4 +1,4 @@ -all: initrd.img.gz mobylinux-efi.iso +all: initrd.img mobylinux-efi.iso ETCFILES=etc/issue etc/motd etc/network/interfaces ETCFILES+=etc/inittab etc/fstab @@ -33,15 +33,12 @@ initrd.img: Dockerfile mkinitrd.sh init $(ETCFILES) common docker build -t moby-initrd:build - docker run --net=none --rm moby-initrd:build > $@ -initrd.img.gz: initrd.img - cat initrd.img | gzip -9 > initrd.img.gz - -mobylinux-efi.iso: Dockerfile.efi initrd.img.gz kernel/x86_64/vmlinuz64 +mobylinux-efi.iso: Dockerfile.efi initrd.img kernel/x86_64/vmlinuz64 tar cf - $^ | docker build -t moby-efi:build -f Dockerfile.efi - docker run --net=none --rm --cap-add sys_admin moby-efi:build cat /tmp/efi/mobylinux.efi > mobylinux.efi docker run --net=none --rm --cap-add sys_admin moby-efi:build cat /tmp/efi/mobylinux-efi.iso > $@ -mobylinux-bios.iso: Dockerfile.bios initrd.img.gz kernel/x86_64/vmlinuz64 isolinux.cfg +mobylinux-bios.iso: Dockerfile.bios initrd.img kernel/x86_64/vmlinuz64 isolinux.cfg tar cf - $^ | docker build -t moby-bios:build -f Dockerfile.bios - docker run --net=none --rm moby-bios:build cat /tmp/mobylinux-bios.iso > $@ @@ -62,8 +59,7 @@ azure: common docker-compose run --rm -T azure uploadvhd clean: - rm -f initrd.img initrd.img.gz mobylinux.vhd mobylinux.img - rm -f mobylinux-bios.iso mobylinux-efi.iso mobylinux.efi + rm -f initrd.img mobylinux.vhd mobylinux.img mobylinux-bios.iso mobylinux-efi.iso mobylinux.efi docker images -q alpine_ami:latest | xargs docker rmi -f || true docker images -q alpine_azure:latest | xargs docker rmi -f || true $(MAKE) -C packages clean diff --git a/alpine/isolinux.cfg b/alpine/isolinux.cfg index 9c700b21a..660d27c6c 100644 --- a/alpine/isolinux.cfg +++ b/alpine/isolinux.cfg @@ -1,5 +1,5 @@ DEFAULT linux LABEL linux KERNEL /vmlinuz64 - INITRD /initrd.img.gz + INITRD /initrd.img APPEND earlyprintk=serial console=ttyS0 console=tty1 diff --git a/alpine/mkinitrd.sh b/alpine/mkinitrd.sh index 894b080de..0bf4a43fd 100755 --- a/alpine/mkinitrd.sh +++ b/alpine/mkinitrd.sh @@ -35,4 +35,4 @@ printf 'moby' > /tmp/etc/hostname rm /tmp/mkinitrd.sh cd /tmp -find . | cpio -H newc -o +find . | cpio -H newc -o | gzip -9