From 22416a2329ec531b9608c21b11ff3d53275fe7a0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 22 Feb 2021 10:18:45 +0000 Subject: [PATCH] daemon: lvm: Use lvcreate --yes to avoid interactive prompts. See https://bugzilla.redhat.com/show_bug.cgi?id=1930996#c1 Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1930996 (cherry picked from commit 21cd97732c4973db835b8b6540c8ad582ebd2bda) --- daemon/lvm.c | 2 +- tests/regressions/Makefile.am | 2 ++ tests/regressions/rhbz1930996.sh | 36 ++++++++++++++++++++++++++++++++ 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100755 tests/regressions/rhbz1930996.sh diff --git a/daemon/lvm.c b/daemon/lvm.c index 841dc4b6b..72c59c3a1 100644 --- a/daemon/lvm.c +++ b/daemon/lvm.c @@ -219,7 +219,7 @@ do_lvcreate (const char *logvol, const char *volgroup, int mbytes) snprintf (size, sizeof size, "%d", mbytes); r = command (NULL, &err, - "lvm", "lvcreate", + "lvm", "lvcreate", "--yes", "-L", size, "-n", logvol, volgroup, NULL); if (r == -1) { reply_with_error ("%s", err); diff --git a/tests/regressions/Makefile.am b/tests/regressions/Makefile.am index ecb0d68a7..c1e0ee8a9 100644 --- a/tests/regressions/Makefile.am +++ b/tests/regressions/Makefile.am @@ -49,6 +49,7 @@ EXTRA_DIST = \ rhbz1370424.sh \ rhbz1370424.xml \ rhbz1477623.sh \ + rhbz1930996.sh \ test-noexec-stack.pl TESTS = \ @@ -79,6 +80,7 @@ TESTS = \ rhbz1285847.sh \ rhbz1370424.sh \ rhbz1477623.sh \ + rhbz1930996.sh \ test-big-heap \ test-noexec-stack.pl \ $(SLOW_TESTS) diff --git a/tests/regressions/rhbz1930996.sh b/tests/regressions/rhbz1930996.sh new file mode 100755 index 000000000..27089beaa --- /dev/null +++ b/tests/regressions/rhbz1930996.sh @@ -0,0 +1,36 @@ +#!/bin/bash - +# libguestfs +# Copyright (C) 2017-2021 Red Hat Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +# Regression test for: +# https://bugzilla.redhat.com/show_bug.cgi?id=1930996#c1 +# +# Actually a bug/change in LVM, previously we failed to create an LV +# if the underlying disk contained a filesystem signature. + +set -e + +$TEST_FUNCTIONS +skip_if_skipped +skip_unless_phony_guest fedora.img + +f=rhbz1930996.img +rm -f $f + +guestfish -N $f=lvfs vgremove VG : vgcreate VG /dev/sda1 : lvcreate LV2 VG 100 + +rm $f -- 2.18.4