From 6fb1c58ca015da93faf4c849336c23a5686c685d Mon Sep 17 00:00:00 2001 From: Richard Maw Date: Tue, 25 Mar 2014 15:48:54 +0000 Subject: Add example deployment of an image package --- image-package-example/README | 9 ++++ image-package-example/common.sh.in | 72 +++++++++++++++++++++++++++++ image-package-example/disk-install.sh.in | 51 ++++++++++++++++++++ image-package-example/make-disk-image.sh.in | 36 +++++++++++++++ 4 files changed, 168 insertions(+) create mode 100644 image-package-example/README create mode 100644 image-package-example/common.sh.in create mode 100644 image-package-example/disk-install.sh.in create mode 100644 image-package-example/make-disk-image.sh.in (limited to 'image-package-example') diff --git a/image-package-example/README b/image-package-example/README new file mode 100644 index 00000000..c1322f25 --- /dev/null +++ b/image-package-example/README @@ -0,0 +1,9 @@ +Image package example scripts +============================= + +These are scripts used to create disk images or install the system onto +an existing disk. + +This is also implemented independently for the rawdisk.write write +extension; see morphlib.writeexts.WriteExtension.create_local_system() +for a similar, python implementation. diff --git a/image-package-example/common.sh.in b/image-package-example/common.sh.in new file mode 100644 index 00000000..9a7389a7 --- /dev/null +++ b/image-package-example/common.sh.in @@ -0,0 +1,72 @@ +#!/bin/false +# Script library to be used by disk-install.sh and make-disk-image.sh + +status(){ + echo "$@" +} + +info(){ + echo "$@" >&2 +} + +warn(){ + echo "$@" >&2 +} + +extract_rootfs(){ + tar -C "$1" -xf @@ROOTFS_TAR_PATH@@ . +} + +make_disk_image(){ + truncate --size "$1" "$2" +} + +format_disk(){ + local disk="$1" + mkfs.ext4 -F -L rootfs "$disk" +} + +install_fs_config(){ + local mountpoint="$1" + local rootdisk="${2-/dev/vda}" + cat >>"$mountpoint/etc/fstab" <