Hello community, here is the log from the commit of package cloud-init for openSUSE:Factory checked in at 2017-11-29 10:53:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cloud-init (Old) and /work/SRC/openSUSE:Factory/.cloud-init.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cloud-init" Wed Nov 29 10:53:57 2017 rev:42 rq:546125 version:17.1 Changes: -------- --- /work/SRC/openSUSE:Factory/cloud-init/cloud-init.changes 2017-11-21 15:34:00.873639023 +0100 +++ /work/SRC/openSUSE:Factory/.cloud-init.new/cloud-init.changes 2017-11-29 10:53:59.305758392 +0100 @@ -1,0 +2,7 @@ +Mon Nov 27 13:21:13 CET 2017 - [email protected] + +- Add cloud-init-resize-ro-btrfs.patch + + cc_resizefs fails if the current root is a read-only btrfs + subvolume, use an always writeable subvolume instead [bsc#1042913] + +------------------------------------------------------------------- New: ---- cloud-init-resize-ro-btrfs.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cloud-init.spec ++++++ --- /var/tmp/diff_new_pack.LN5ES7/_old 2017-11-29 10:54:00.125728644 +0100 +++ /var/tmp/diff_new_pack.LN5ES7/_new 2017-11-29 10:54:00.129728499 +0100 @@ -48,6 +48,7 @@ Patch29: datasourceLocalDisk.patch Patch34: cloud-init-tests-set-exec.patch Patch35: cloud-init-final-no-apt.patch +Patch36: cloud-init-resize-ro-btrfs.patch BuildRequires: fdupes BuildRequires: filesystem # pkg-config is needed to find correct systemd unit dir @@ -211,6 +212,7 @@ %patch29 -p0 %patch34 %patch35 -p1 +%patch36 %build ++++++ cloud-init-resize-ro-btrfs.patch ++++++ --- cloudinit/config/cc_resizefs.py +++ cloudinit/config/cc_resizefs.py 2017/11/27 11:55:37 @@ -59,7 +59,16 @@ def _resize_btrfs(mount_point, devpth): - return ('btrfs', 'filesystem', 'resize', 'max', mount_point) +# That btrfs utilities are using a path and not a device is bad, +# because the subvolume specified by '/' could be read-only +# and btrfs will wrongly fail. Correct fix would be to mount the +# real root of the filesystem (subvolid=5) and resize that. But +# using /.snapshots as workaround is Ok, too, since this is +# normally writeable. + if mount_point == '/' and os.path.isdir("/.snapshots"): + return ('btrfs', 'filesystem', 'resize', 'max', '/.snapshots') + else: + return ('btrfs', 'filesystem', 'resize', 'max', mount_point) def _resize_ext(mount_point, devpth):
