mirror of
https://git.launchpad.net/livecd-rootfs
synced 2025-05-07 08:51:50 +00:00
Imported 2.545
No reason for CPC update specified.
This commit is contained in:
parent
c37d5f0434
commit
bf046ff6e2
13
debian/changelog
vendored
13
debian/changelog
vendored
@ -1,3 +1,16 @@
|
|||||||
|
livecd-rootfs (2.545) disco; urgency=medium
|
||||||
|
|
||||||
|
[ Dimitri John Ledkov ]
|
||||||
|
* Do not mount result, on top of lowerdir, appears to fail in
|
||||||
|
disco. Should unblock building server-live images in disco.
|
||||||
|
* Also strip duplicate \n from the below.
|
||||||
|
|
||||||
|
[ Cody Shepherd ]
|
||||||
|
* Fix snap-seed-parse to take filename argument instead of printing to
|
||||||
|
stdout
|
||||||
|
|
||||||
|
-- Dimitri John Ledkov <xnox@ubuntu.com> Fri, 09 Nov 2018 22:22:29 +0000
|
||||||
|
|
||||||
livecd-rootfs (2.544) disco; urgency=medium
|
livecd-rootfs (2.544) disco; urgency=medium
|
||||||
|
|
||||||
[ Steve Langasek ]
|
[ Steve Langasek ]
|
||||||
|
@ -552,7 +552,7 @@ fi
|
|||||||
# '--initramfs none' produces different manifest names.
|
# '--initramfs none' produces different manifest names.
|
||||||
# NB! we want stdout appended to the manifest, yet stderr to be printed on stdout
|
# NB! we want stdout appended to the manifest, yet stderr to be printed on stdout
|
||||||
if [ -e "binary/$INITFS/filesystem.packages" ]; then
|
if [ -e "binary/$INITFS/filesystem.packages" ]; then
|
||||||
./config/snap-seed-parse "chroot/" 2>&1 >> "binary/${INITFS}/filesystem.packages"
|
./config/snap-seed-parse "chroot/" "binary/${INITFS}/filesystem.packages"
|
||||||
ln "binary/$INITFS/filesystem.packages" "$PREFIX.manifest"
|
ln "binary/$INITFS/filesystem.packages" "$PREFIX.manifest"
|
||||||
chmod 644 "$PREFIX.manifest"
|
chmod 644 "$PREFIX.manifest"
|
||||||
fi
|
fi
|
||||||
|
@ -50,7 +50,7 @@ create_manifest() {
|
|||||||
echo "create_manifest chroot_root: ${chroot_root}"
|
echo "create_manifest chroot_root: ${chroot_root}"
|
||||||
dpkg-query --show --admindir="${chroot_root}/var/lib/dpkg" > ${target_file}
|
dpkg-query --show --admindir="${chroot_root}/var/lib/dpkg" > ${target_file}
|
||||||
echo "create_manifest call to dpkg-query finished."
|
echo "create_manifest call to dpkg-query finished."
|
||||||
./config/snap-seed-parse "${chroot_root}" 2>&1 >> ${target_file}
|
./config/snap-seed-parse "${chroot_root}" "${target_file}"
|
||||||
echo "create_manifest call to snap_seed_parse finished."
|
echo "create_manifest call to snap_seed_parse finished."
|
||||||
echo "create_manifest finished"
|
echo "create_manifest finished"
|
||||||
}
|
}
|
||||||
|
@ -1,26 +1,35 @@
|
|||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Usage: snap-seed-parse ${chroot_dir} > somefile.manifest
|
Usage: snap-seed-parse [${chroot_dir}] <output file>
|
||||||
|
|
||||||
This script looks for a seed.yaml path in the given root directory, parsing
|
This script looks for a seed.yaml path in the given root directory, parsing
|
||||||
it and printing generated manifest lines to stdout for easy redirection.
|
it and appending the parsed lines to the given output file.
|
||||||
|
|
||||||
|
The $chroot_dir argument is optional and will default to the empty string.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import re
|
import argparse
|
||||||
import sys
|
|
||||||
import yaml
|
|
||||||
import os.path
|
import os.path
|
||||||
|
import re
|
||||||
|
import yaml
|
||||||
|
|
||||||
|
|
||||||
def log(msg):
|
def log(msg):
|
||||||
sys.stderr.write("snap-seed-parse: {}\n".format(msg))
|
print("snap-seed-parse: {}".format(msg))
|
||||||
|
|
||||||
|
|
||||||
log("Parsing seed.yaml")
|
log("Parsing seed.yaml")
|
||||||
|
|
||||||
CHROOT_ROOT = sys.argv[1] if len(sys.argv) > 1 and len(sys.argv[1]) > 0 \
|
parser = argparse.ArgumentParser()
|
||||||
else ''
|
parser.add_argument('chroot', nargs='?', default='',
|
||||||
|
help='root dir for the chroot from which to generate the '
|
||||||
|
'manifest')
|
||||||
|
parser.add_argument('file', help='Output manifest to this file')
|
||||||
|
|
||||||
|
ARGS = parser.parse_args()
|
||||||
|
CHROOT_ROOT = ARGS.chroot
|
||||||
|
FNAME = ARGS.file
|
||||||
|
|
||||||
# Trim any trailing slashes for correct appending
|
# Trim any trailing slashes for correct appending
|
||||||
log("CHROOT_ROOT: {}".format(CHROOT_ROOT))
|
log("CHROOT_ROOT: {}".format(CHROOT_ROOT))
|
||||||
@ -43,14 +52,17 @@ else:
|
|||||||
with open(YAML_PATH, 'r') as fh:
|
with open(YAML_PATH, 'r') as fh:
|
||||||
yaml_lines = yaml.safe_load(fh)['snaps']
|
yaml_lines = yaml.safe_load(fh)['snaps']
|
||||||
|
|
||||||
# Loop over dict items, outputting one manifest line from each triplet
|
log('Writing manifest to {}'.format(FNAME))
|
||||||
for item in yaml_lines:
|
|
||||||
filestring = item['file']
|
with open(FNAME, 'a+') as fh:
|
||||||
# Pull the revision number off the file name
|
for item in yaml_lines:
|
||||||
revision = filestring[filestring.rindex('_')+1:]
|
filestring = item['file']
|
||||||
revision = re.sub(r'[^0-9]', '', revision)
|
# Pull the revision number off the file name
|
||||||
print("{}{}\t{}\t{}".format(LINE_PREFIX,
|
revision = filestring[filestring.rindex('_')+1:]
|
||||||
item['name'],
|
revision = re.sub(r'[^0-9]', '', revision)
|
||||||
item['channel'],
|
fh.write("{}{}\t{}\t{}\n".format(LINE_PREFIX,
|
||||||
revision,
|
item['name'],
|
||||||
))
|
item['channel'],
|
||||||
|
revision,
|
||||||
|
))
|
||||||
|
log('Manifest output finished.')
|
||||||
|
@ -40,7 +40,7 @@ mkdir -p "$OVERLAY_REGION_ROOT"
|
|||||||
|
|
||||||
# RACK is on top of the regular squashfs
|
# RACK is on top of the regular squashfs
|
||||||
|
|
||||||
mount_overlay "$SQUASH_ROOT/" "$OVERLAY_RACK_ROOT/" "$RACK_ROOT/" "RACK"
|
mount_overlay "$SQUASH_ROOT/" "$OVERLAY_RACK_ROOT/" "$RACK_ROOT/"
|
||||||
|
|
||||||
setup_mountpoint $RACK_ROOT
|
setup_mountpoint $RACK_ROOT
|
||||||
env DEBIAN_FRONTEND=noninteractive chroot $RACK_ROOT apt-get -y install maas-rack-controller
|
env DEBIAN_FRONTEND=noninteractive chroot $RACK_ROOT apt-get -y install maas-rack-controller
|
||||||
@ -54,7 +54,7 @@ umount "$RACK_ROOT"
|
|||||||
|
|
||||||
# Full MAAS (Region) is on top of the rack
|
# Full MAAS (Region) is on top of the rack
|
||||||
# in overlayfs lowerdir are mounted right to left, colon separated
|
# in overlayfs lowerdir are mounted right to left, colon separated
|
||||||
mount_overlay "$OVERLAY_RACK_ROOT/:$SQUASH_ROOT/" "$OVERLAY_REGION_ROOT/" "$REGION_ROOT/" "REGION"
|
mount_overlay "$OVERLAY_RACK_ROOT/:$SQUASH_ROOT/" "$OVERLAY_REGION_ROOT/" "$REGION_ROOT/"
|
||||||
|
|
||||||
setup_mountpoint $REGION_ROOT
|
setup_mountpoint $REGION_ROOT
|
||||||
|
|
||||||
|
@ -24,15 +24,17 @@ fi
|
|||||||
. config/functions
|
. config/functions
|
||||||
. config/common
|
. config/common
|
||||||
|
|
||||||
SQUASH_ROOT=binary/boot/squashfs.dir
|
BOTTOM_ROOT=binary/boot/squashfs.dir
|
||||||
OVERLAY_ROOT=binary/overlay
|
SQUASH_ROOT=binary/boot/squashfs-installer.dir
|
||||||
|
OVERLAY_ROOT=binary/overlay-installer
|
||||||
|
|
||||||
|
mkdir -p "$SQUASH_ROOT"
|
||||||
mkdir -p "$OVERLAY_ROOT"
|
mkdir -p "$OVERLAY_ROOT"
|
||||||
|
|
||||||
# Create an installer squashfs layer
|
# Create an installer squashfs layer
|
||||||
mount_overlay "$SQUASH_ROOT/" "$OVERLAY_ROOT/" "$SQUASH_ROOT/"
|
mount_overlay "$BOTTOM_ROOT/" "$OVERLAY_ROOT/" "$SQUASH_ROOT/"
|
||||||
|
|
||||||
setup_mountpoint binary/boot/squashfs.dir
|
setup_mountpoint $SQUASH_ROOT
|
||||||
|
|
||||||
# Override JobRunningTimeoutSec to 0s on the .device unit that
|
# Override JobRunningTimeoutSec to 0s on the .device unit that
|
||||||
# subiquity_config.mount depends on to avoid a 5s delay on switching
|
# subiquity_config.mount depends on to avoid a 5s delay on switching
|
||||||
|
Loading…
x
Reference in New Issue
Block a user