diff --git a/.gitignore b/.gitignore index cee61d8..963ba8c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ -/virt-p2v-1.41.0.tar.gz -/virt-p2v-1.42.0.tar.gz -/virt-p2v-1.42.0.tar.gz.sig +*~ +/virt-p2v-*.tar.gz +/virt-p2v-*.tar.gz.sig diff --git a/gating.yaml b/gating.yaml new file mode 100755 index 0000000..648918d --- /dev/null +++ b/gating.yaml @@ -0,0 +1,6 @@ +--- !Policy +product_versions: + - rhel-9 +decision_context: osci_compose_gate +rules: + - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} diff --git a/sources b/sources index b88ac9a..b6fb520 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (virt-p2v-1.42.0.tar.gz) = 215906997bd63fe9c76c599036ca204078ce4f059f87a4f1f1422d9f844156790eafa7654692776d4e5ba9936edb1042b485b300baa1bbc2a8ecb645bae04b80 -SHA512 (virt-p2v-1.42.0.tar.gz.sig) = cc1047fa1ce53ee4d997cc9eae66fdabb66ba6414392ac585ea794547e76e88b245484e5b452a899f26483d6bfcfa7a71bb9c9e4e676d1914708508bb811d6f4 +SHA512 (virt-p2v-1.42.4.tar.gz) = 282c80c60cf220ad9cc69ceb52a2f22e3edab671ac96a6b1a2391b9c61fe195d05ed0849c582cc27613384d42e8088930026bb0b668727bc8a4036de67b2e74f +SHA512 (virt-p2v-1.42.4.tar.gz.sig) = 0854a12d4aad55629997baf2a388fa2b4efe30fe5793055b3cb58a18f3d291f1dbbb765a9cc3ef85dad8233705e7885b1602e8b0fa59a437d28056dad6d19d6c diff --git a/tests/basic-test.sh b/tests/basic-test.sh new file mode 100755 index 0000000..02e44be --- /dev/null +++ b/tests/basic-test.sh @@ -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" diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100755 index 0000000..3261a65 --- /dev/null +++ b/tests/tests.yml @@ -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 diff --git a/virt-p2v.spec b/virt-p2v.spec index d6f0ddb..86f8a80 100644 --- a/virt-p2v.spec +++ b/virt-p2v.spec @@ -9,9 +9,9 @@ Summary: Convert a physical machine to run on KVM Name: virt-p2v Epoch: 1 -Version: 1.42.0 +Version: 1.42.4 Release: 3%{?dist} -License: GPLv2+ +License: GPL-2.0-or-later AND LGPL-2.0-or-later # virt-p2v works only on x86_64 at the moment. It requires porting # to properly detect the hardware on other architectures, and furthermore @@ -31,14 +31,15 @@ Source2: libguestfs.keyring %endif # Basic build requirements. +BuildRequires: make BuildRequires: gcc BuildRequires: perl(Pod::Simple) BuildRequires: perl(Pod::Man) BuildRequires: perl(List::MoreUtils) BuildRequires: /usr/bin/pod2text BuildRequires: libxml2-devel -BuildRequires: pcre-devel -BuildRequires: bash-completion +BuildRequires: pcre2-devel +BuildRequires: bash-completion-devel BuildRequires: xz BuildRequires: gtk3-devel BuildRequires: dbus-devel @@ -48,30 +49,18 @@ BuildRequires: gnupg2 %endif # Test suite requirements. -BuildRequires: /usr/bin/qemu-nbd - -# https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries#Packages_granted_exceptions -Provides: bundled(gnulib) - +BuildRequires: nbdkit Requires: gawk Requires: gzip # virt-p2v-make-disk runs virt-builder: -Requires: libguestfs-tools-c +Requires: guestfs-tools # virt-p2v-make-kickstart runs strip: Requires: binutils -# Migrate from the old virt-p2v-maker: -Provides: virt-p2v-maker = 1:%{version}-%{release} -Obsoletes: virt-p2v-maker < 1:1.41.5 - -# The bash completion for p2v were shipped with the others of libguestfs: -Obsoletes: libguestfs-bash-completion < 1:1.41.5 - - %description Virt-p2v converts (virtualizes) physical machines so they can be run as virtual machines under KVM. @@ -88,20 +77,17 @@ To convert virtual machines from other hypervisors, see virt-v2v. %if 0%{verify_tarball_signature} %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %endif -%setup -q -%autopatch -p1 +%autosetup -p1 %build %configure \ - --with-extra="fedora=%{fedora},release=%{release}" \ - --disable-gnulib-tests + --with-extra="fedora=%{fedora},release=%{release}" -make V=1 %{?_smp_mflags} +%make_build %check - if ! make check; then cat test-suite.log exit 1 @@ -109,20 +95,21 @@ fi %install -make DESTDIR=$RPM_BUILD_ROOT install +%make_install # Delete the development man pages. 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-release-notes.1* + %files %doc README %license COPYING %{_bindir}/virt-p2v-make-disk %{_bindir}/virt-p2v-make-kickstart %{_bindir}/virt-p2v-make-kiwi -%{_datadir}/bash-completion/completions/virt-* +%{bash_completions_dir}/virt-* %{_datadir}/virt-p2v %{_libdir}/virt-p2v %{_mandir}/man1/virt-p2v-make-disk.1* @@ -132,6 +119,60 @@ rm $RPM_BUILD_ROOT%{_mandir}/man1/p2v-release-notes.1* %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 1:1.42.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 1:1.42.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Tue Nov 05 2024 Richard W.M. Jones - 1:1.42.4-1 +- New upstream version 1.42.4 + +* Sat Jul 20 2024 Fedora Release Engineering - 1:1.42.3-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Mon Mar 25 2024 Richard W.M. Jones - 1:1.42.3-6 +- Use %%{bash_completions_dir} macro +- BR bash-completion-devel (new in Rawhide) + +* Sat Jan 27 2024 Fedora Release Engineering - 1:1.42.3-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jul 22 2023 Fedora Release Engineering - 1:1.42.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Mon Jun 05 2023 Richard W.M. Jones - 1:1.42.3-3 +- Migrated to SPDX license + +* Sat Jan 21 2023 Fedora Release Engineering - 1:1.42.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Tue Oct 11 2022 Richard W.M. Jones - 1:1.42.3-1 +- New upstream release 1.42.3 + +* Wed Aug 03 2022 Richard W.M. Jones - 1:1.42.2-1 +- New upstream release 1.42.2 +- 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. + +* Sat Jul 23 2022 Fedora Release Engineering - 1:1.42.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Tue May 10 2022 Richard W.M. Jones - 1:1.42.1-1 +- New upstream release 1.42.1 +- gnulib removed upstream. +- Some specfile modernization. + +* Sat Jan 22 2022 Fedora Release Engineering - 1:1.42.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 1:1.42.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 1:1.42.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Wed Jul 29 2020 Fedora Release Engineering - 1:1.42.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild