Compare commits

...

No commits in common. "c8" and "32d80207aed0042ccfb1cb6b6d18b8a99abaccc1" have entirely different histories.

10 changed files with 106 additions and 87 deletions

5
.gitignore vendored
View File

@ -1,2 +1,3 @@
SOURCES/libguestfs.keyring *~
SOURCES/virt-p2v-1.42.0.tar.gz /virt-p2v-*.tar.gz
/virt-p2v-*.tar.gz.sig

View File

@ -1,2 +1,2 @@
1bbc40f501a7fef9eef2a39b701a71aee2fea7c4 SOURCES/libguestfs.keyring 3dfc27df2fac9ac862074906be8c0b9d6c314c74 virt-p2v-1.42.2.tar.gz
68f3c5ef858b8dc7e98e9a46289e43aaf7d52f47 SOURCES/virt-p2v-1.42.0.tar.gz bd5e90b9fa3d7f86624aece13f02925cf8cd190c virt-p2v-1.42.2.tar.gz.sig

3
README.md Normal file
View File

@ -0,0 +1,3 @@
# virt-p2v
The virt-p2v package

View File

@ -1,17 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQJFBAABCAAvFiEE93dPsa0HSn6Mh2fqkXOPc+G3aKAFAl3fxr0RHHJpY2hAYW5u
ZXhpYS5vcmcACgkQkXOPc+G3aKDAfA/+PI6/c9bsoFa8VZ9tFW3cYP+9yy9ZK37e
xq2lwhvEvNPBsSeiZUMK5POOebTOzCrzTZ0LwpGDCy4q83nOE7BM2pDa0zPh461l
QKYqnfn04h3zx9LNPne1Qj0g5jA0oXtImTDPMwy0VgX9Eqh0Fc/Hc55UHP5UufeN
LllyNhrxQUXvJ4b0Z/9kPAaJTayk0CQqAI0A008Bmc/EzH2dS/nHQofgiKBCxKah
pNPI2bTBe/41XjFU1t36Zi/DNixTexXp4KclQX2PlGP3RR6+bJZY/OYH8G8zOS6d
FnFZ5GdS+Rko+cvcJAGNkewAlkDUzsEAZ016ERDTwM4Fyx9VdcDQc0s07XpkR+jQ
zM8wsaZjKIp99Snk2SwTDReXnUp/rNm0Wq3HeY3bowWVVdn3ivaDbMzipEoka9mz
jvxNBUXISf/aenQ//PiqXmV3Q8q9oIZhFiq4/14N5bc8wauDnD+xnzo1u5ciOV69
32rk3OXAXHMdn/ARpSTtbnv2QCAAjqDRlm4+xQmulZu6DCvnlUHvzsHErz40hrj8
LMNA1Pw5MW8v72YLJKRDzQ1R6ELcR2SbYGuHYCN0wqDJXh7RAvTFQusYSBdEYC4F
p9mWi9IWTkoV0RKC2b6nRGkVMpPmwZ4le+sYTawy1P/LM7UCCJHaFCp+pIZ09gVc
SRk4FEKh1RI=
=pvKa
-----END PGP SIGNATURE-----

6
gating.yaml Executable file
View File

@ -0,0 +1,6 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

BIN
libguestfs.keyring Normal file

Binary file not shown.

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (virt-p2v-1.42.2.tar.gz) = 5310c4b09bfbb4652ae73dadc3906d8fbc2f3183cc9b1e90fc5bd5e159469f4fb3d74a710cb76f2ec65c2a55c219cd7425c2eaa4993f0152dc19fde68cc2e5c4
SHA512 (virt-p2v-1.42.2.tar.gz.sig) = b13c788bf71a75b1ed23262af33014f99e26f7b5462cdc14c1194347a7748975f92b4336a7757dd4e42269b975f26d9206c29e080b40ef190ce41671aef7a793

19
tests/basic-test.sh Executable file
View File

@ -0,0 +1,19 @@
#!/bin/bash -
set -e
set -x
# This is a difficult package to test in gating because building the
# virt-p2v ISO requires virt-builder, and even if we run it, it
# doesn't prove anything useful. Doing a full P2V conversion is even
# more difficult (and requires virt-v2v which we are unlikely to
# have). So just check that the virt-p2v binary looks sane.
tmpdir="$( mktemp -d )"
cd "$tmpdir"
xzcat /usr/lib64/virt-p2v/virt-p2v.xz > virt-p2v
chmod +x virt-p2v
./virt-p2v --version
./virt-p2v --help
./virt-p2v --long-options
./virt-p2v --short-options
cd
rm -r "$tmpdir"

19
tests/tests.yml Executable file
View File

@ -0,0 +1,19 @@
- hosts: localhost
roles:
- role: standard-test-basic
tags:
- classic
required_packages:
- coreutils
- virt-p2v
# https://github.com/libguestfs/virt-p2v/blob/master/dependencies.m4
# Only need the virt-p2v program dependencies.
# There's no way that I'm aware of to build this list automatically.
- dbus-libs
- gtk3
- libxml2
- pcre2
tests:
- simple:
dir: .
run: ./basic-test.sh

View File

@ -9,8 +9,8 @@
Summary: Convert a physical machine to run on KVM Summary: Convert a physical machine to run on KVM
Name: virt-p2v Name: virt-p2v
Epoch: 1 Epoch: 1
Version: 1.42.0 Version: 1.42.2
Release: 5%{?dist} Release: 1.1%{?dist}
License: GPLv2+ License: GPLv2+
# virt-p2v works only on x86_64 at the moment. It requires porting # virt-p2v works only on x86_64 at the moment. It requires porting
@ -31,13 +31,14 @@ Source2: libguestfs.keyring
%endif %endif
# Basic build requirements. # Basic build requirements.
BuildRequires: make
BuildRequires: gcc BuildRequires: gcc
BuildRequires: perl(Pod::Simple) BuildRequires: perl(Pod::Simple)
BuildRequires: perl(Pod::Man) BuildRequires: perl(Pod::Man)
BuildRequires: perl(List::MoreUtils) BuildRequires: perl(List::MoreUtils)
BuildRequires: /usr/bin/pod2text BuildRequires: /usr/bin/pod2text
BuildRequires: libxml2-devel BuildRequires: libxml2-devel
BuildRequires: pcre-devel BuildRequires: pcre2-devel
BuildRequires: bash-completion BuildRequires: bash-completion
BuildRequires: xz BuildRequires: xz
BuildRequires: gtk3-devel BuildRequires: gtk3-devel
@ -48,7 +49,17 @@ BuildRequires: gnupg2
%endif %endif
# Test suite requirements. # Test suite requirements.
BuildRequires: /usr/bin/qemu-nbd BuildRequires: nbdkit
Requires: gawk
Requires: gzip
# virt-p2v-make-disk runs virt-builder:
Requires: guestfs-tools
# virt-p2v-make-kickstart runs strip:
Requires: binutils
%description %description
Virt-p2v converts (virtualizes) physical machines so they can be run Virt-p2v converts (virtualizes) physical machines so they can be run
@ -62,59 +73,21 @@ complete the conversion.
To convert virtual machines from other hypervisors, see virt-v2v. To convert virtual machines from other hypervisors, see virt-v2v.
%package maker
Summary: Convert a physical machine to run on KVM
# https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries#Packages_granted_exceptions
Provides: bundled(gnulib)
Requires: gawk
Requires: gzip
Requires: xz
# virt-p2v-make-disk runs virt-builder:
Requires: libguestfs-tools-c
# virt-p2v-make-kickstart runs strip:
Requires: binutils
# The bash completion for p2v were shipped with the others of libguestfs:
Obsoletes: libguestfs-bash-completion < 1:1.38.4-15
%description maker
Virt-p2v converts (virtualizes) physical machines so they can be run
as virtual machines under KVM.
This package contains the tools needed to make a virt-p2v boot CD or
USB key which is booted on the physical machine to perform the
conversion. You also need virt-v2v installed somewhere else to
complete the conversion.
To convert virtual machines from other hypervisors, see virt-v2v.
%prep %prep
%if 0%{verify_tarball_signature} %if 0%{verify_tarball_signature}
tmphome="$(mktemp -d)" %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
gpgv2 --homedir "$tmphome" --keyring %{SOURCE2} %{SOURCE1} %{SOURCE0}
%endif %endif
%setup -q %autosetup -p1
%autopatch -p1
%build %build
%configure \ %configure \
--with-extra="rhel=%{rhel},release=%{release}" \ --with-extra="fedora=%{fedora},release=%{release}"
--disable-gnulib-tests
make V=1 %{?_smp_mflags} %make_build
%check %check
if ! make check; then if ! make check; then
cat test-suite.log cat test-suite.log
exit 1 exit 1
@ -122,48 +95,61 @@ fi
%install %install
make DESTDIR=$RPM_BUILD_ROOT install %make_install
# Delete the development man pages. # Delete the development man pages.
rm $RPM_BUILD_ROOT%{_mandir}/man1/p2v-building.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/p2v-building.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/p2v-hacking.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/p2v-hacking.1*
rm $RPM_BUILD_ROOT%{_mandir}/man1/p2v-release-notes.1* rm $RPM_BUILD_ROOT%{_mandir}/man1/p2v-release-notes.1*
# Delete kiwi tools.
rm $RPM_BUILD_ROOT%{_bindir}/virt-p2v-make-kiwi
rm $RPM_BUILD_ROOT%{_mandir}/man1/virt-p2v-make-kiwi.1*
rm $RPM_BUILD_ROOT%{_datadir}/bash-completion/completions/virt-p2v-make-kiwi
%files maker %files
%doc README %doc README
%license COPYING %license COPYING
%{_bindir}/virt-p2v-make-disk %{_bindir}/virt-p2v-make-disk
%{_bindir}/virt-p2v-make-kickstart %{_bindir}/virt-p2v-make-kickstart
%{_bindir}/virt-p2v-make-kiwi
%{_datadir}/bash-completion/completions/virt-* %{_datadir}/bash-completion/completions/virt-*
%{_datadir}/virt-p2v %{_datadir}/virt-p2v
%{_libdir}/virt-p2v %{_libdir}/virt-p2v
%{_mandir}/man1/virt-p2v-make-disk.1* %{_mandir}/man1/virt-p2v-make-disk.1*
%{_mandir}/man1/virt-p2v-make-kickstart.1* %{_mandir}/man1/virt-p2v-make-kickstart.1*
%{_mandir}/man1/virt-p2v-make-kiwi.1*
%{_mandir}/man1/virt-p2v.1* %{_mandir}/man1/virt-p2v.1*
%changelog %changelog
* Fri Mar 06 2020 Pino Toscano <ptoscano@redhat.com> - 1:1.42.0-5 * Wed Aug 03 2022 Richard W.M. Jones <rjones@redhat.com> - 1:1.42.2-1.1
- Remove virt-p2v-make-kiwi, as it is not supported, and was not - New upstream release 1.42.2
shipped already. - Synchronise with Fedora 37:
* Uses PCRE2 instead of PCRE.
* Remove Obsolete/Provides etc used for upgrades from Fedora 31.
* libguestfs-tools-c was renamed to guestfs-tools in Fedora 34.
* gnulib removed upstream.
* Some specfile modernization.
- Add gating tests
resolves: rhbz#1990052
* Fri Feb 21 2020 Pino Toscano <ptoscano@redhat.com> - 1:1.42.0-4 * Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 1:1.42.0-6
- Copy %description also for the source, so tools are less confused - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
about it. Related: rhbz#1991688
- Fix the "extra" addition to the version to refer to rhel.
* Wed Dec 11 2019 Pino Toscano <ptoscano@redhat.com> - 1:1.42.0-3 * Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1:1.42.0-5
- Explicitly require xz, as it is used by all the tools to unpack the - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
virt-p2v binary.
* Thu Dec 05 2019 Pino Toscano <ptoscano@redhat.com> - 1:1.42.0-2 * Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.42.0-4
- Adjust the version of libguestfs-bash-completion that drops the bash - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
completion scripts
* Thu Nov 28 2019 Pino Toscano <ptoscano@redhat.com> - 1:1.42.0-1 * Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.42.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:1.42.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Nov 28 2019 Richard W.M. Jones <rjones@redhat.com> - 1:1.42.0-1
- New upstream release 1.42.0.
- Use gpgverify macro instead of explicit gpgv2 command.
- Move .sig file to sources instead of dist-git.
* Tue Sep 10 2019 Pino Toscano <ptoscano@redhat.com> - 1:1.41.0-1
- Initial build, split off src:libguestfs. - Initial build, split off src:libguestfs.