The verification of the Stable Release Update for cloud-initramfs-tools has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.
** Changed in: cloud-initramfs-tools (Ubuntu Zesty) Status: Fix Committed => Won't Fix -- You received this bug notification because you are a member of नेपाली भाषा समायोजकहरुको समूह, which is subscribed to Xenial. Matching subscriptions: Ubuntu 16.04 Bugs https://bugs.launchpad.net/bugs/1728048 Title: squashfs url matching is too strict Status in cloud-initramfs-tools: Fix Released Status in cloud-initramfs-tools package in Ubuntu: Fix Released Status in cloud-initramfs-tools source package in Xenial: Fix Released Status in cloud-initramfs-tools source package in Zesty: Won't Fix Status in cloud-initramfs-tools source package in Artful: Fix Released Bug description: ==== Begin SRU Template === [Impact] Squashfs images published by Ubuntu on http://cloud-images.ubuntu.com end in '.squashfs' and on http://images.maas.io/ephemeral-v3/ the files are named 'squashfs'. When you boot an initramfs with rooturl it would automatically determine/assume that content is squashfs if it ended in '.squash' or '.squashfs'. The filter was just too strict and would thus not match http://images.maas.io/ephemeral-v3/..../squashfs That meant a usage would have to re-publish the url. [Test Case] ## setup system to build maas images $ sudo apt-get install -qy --no-install-recommends bzr $ bzr branch lp:maas-images $ cd maas-images $ ./system-setup ## download the reference squashfs images. $ arch=amd64 $ burl=http://cloud-images.ubuntu.com/server # download reference squashfs images $ for rel in xenial zesty artful; do file=../$rel-server-cloudimg-$arch.squashfs; [ -f "$file" ] && continue; wget "$burl/$rel/current/${file#*/}" -O "$file.tmp" && mv "$file.tmp" "$file" done ## build maas image output. This creates a squashfs image and kernel/initramfs ## files that have the updated packages inside. ## It does take a while to run, and lots of cpu and IO. ## You can reduce the kernels built by commenting out 'lowlatency' and 'edge' ## kernels: ## sed -i -e '/^[ ].*\(lowlatency\|edge\)/s/^/#/' conf/meph-v3.yaml # either set 'proposed' or add the repo via M2E_ADD_REPOS $ proposed="--proposed" $ export M2E_ADD_REPOS=ppa:smoser/cloud-initramfs-tools $ for rel in xenial zesty artful; do img=../$rel-server-cloudimg-$arch.squashfs PATH=$PWD/bin:$PATH ./bin/meph2-build $proposed --config=conf/meph-v3.yaml \ $arch $rel $(date +"%Y%m%d") $img ../$rel.d/ 2>&1 | tee ../$rel.log done ## After running, you will have files like: $ find xenial.d/xenial -type f | sort xenial.d/xenial/amd64/20171221/ga-16.04/generic/boot-initrd xenial.d/xenial/amd64/20171221/ga-16.04/generic/boot-kernel xenial.d/xenial/amd64/20171221/hwe-16.04/generic/boot-initrd xenial.d/xenial/amd64/20171221/hwe-16.04/generic/boot-kernel xenial.d/xenial/amd64/20171221/squashfs xenial.d/xenial/amd64/20171221/squashfs.manifest ## You can verify in the $rel.log files you have 'Setting up cloud-initramfs-' $ grep '^Setting up overlayroot' xenial.log Setting up overlayroot (0.27ubuntu1.5~ppa16.04.1) ... ## Now download the test-boot script, provide it a directory and ## the squashfs, kernel, initramfs $ ./test-boot test-x xenial.d/xenial/amd64/20171221/squashfs \ xenial.d/xenial/amd64/20171221/ga-16.04/generic/boot-kernel \ xenial.d/xenial/amd64/20171221/ga-16.04/generic/boot-initrd $ r=zesty; ./test-boot work.d $r.d/*/amd64/*/squashfs $r.d/*/amd64/*/ga-*/generic/boot-kernel $r.d/*/amd64/*/ga-*/generic/boot-initrd Now, do: cd work.d ./boot ## Running ./boot will serve the squashfs image over http, and then ## boot the kernel and initrd with a kernel command line of ## root=http://<url>/squashfs ## and ## ds=nocloud-net;seedfrom=http://10.0.2.2:9999/ ## which will the read the 'user-data' and 'meta-data' files in that dir. ## ## The result is that you can log in with 'ubuntu' and 'passw0rd' ## Then collect some information # you'll see the 'LABEL=' entry is commented out. $ cat /etc/fstab # local-fs.target should be fine $ systemctl status local-fs.target --no-pager # just for record $ cat /proc/cmdline [Regression Potential] Very low. If a url does not match, rooturl would just complain and do nothing. This just extends the things that match. [Other Info] This does seem to be low importance. In fact it is, but its jsut part of syncing cloud-initramfs-tools across xenial, artful, zesty with bionic. The fix applied here is a backport what is currently in bionic to each release. in xenial, that means a new binary package (cloud-initramfs-updateroot). ==== End SRU Template === The code that automatically determines a squashfs url is just to strict. You can explicitly declare it as squash with: root=squashfs:http://<>/... but currently the automatic matching requires it to end in .squashfs or .squash. This doesn't match urls like <url>/squashfs <url>/my-squash which are as obviously squashfs urls as others. To manage notifications about this bug go to: https://bugs.launchpad.net/cloud-initramfs-tools/+bug/1728048/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~group.of.nepali.translators Post to : group.of.nepali.translators@lists.launchpad.net Unsubscribe : https://launchpad.net/~group.of.nepali.translators More help : https://help.launchpad.net/ListHelp