Update to latest git, resync spec, include Python test support

f38
Adam Williamson 3 years ago
parent 2d99eb41ce
commit 70a7fe5458

1
.gitignore vendored

@ -53,3 +53,4 @@
/os-autoinst-627473ea5222dd4ad4cb0bfe82f0d5b5bcbe23c8.tar.gz /os-autoinst-627473ea5222dd4ad4cb0bfe82f0d5b5bcbe23c8.tar.gz
/os-autoinst-fdd1a2d8bdc9fdf9b23ae8f01b42b5092e6343dd.tar.gz /os-autoinst-fdd1a2d8bdc9fdf9b23ae8f01b42b5092e6343dd.tar.gz
/os-autoinst-ab6013d738344791507525e45cbd9f972a444968.tar.gz /os-autoinst-ab6013d738344791507525e45cbd9f972a444968.tar.gz
/os-autoinst-8a7a14fa5175e3ce1dbd0f59c2c2ec2d73c572d6.tar.gz

@ -30,9 +30,9 @@
%global github_owner os-autoinst %global github_owner os-autoinst
%global github_name os-autoinst %global github_name os-autoinst
%global github_version 4.6 %global github_version 4.6
%global github_commit ab6013d738344791507525e45cbd9f972a444968 %global github_commit 8a7a14fa5175e3ce1dbd0f59c2c2ec2d73c572d6
# if set, will be a post-release snapshot build, otherwise a 'normal' build # if set, will be a post-release snapshot build, otherwise a 'normal' build
%global github_date 20220201 %global github_date 20220530
%global shortcommit %(c=%{github_commit}; echo ${c:0:7}) %global shortcommit %(c=%{github_commit}; echo ${c:0:7})
Name: os-autoinst Name: os-autoinst
@ -42,13 +42,12 @@ Summary: OS-level test automation
License: GPLv2+ License: GPLv2+
URL: https://os-autoinst.github.io/openQA/ URL: https://os-autoinst.github.io/openQA/
Source0: https://github.com/%{github_owner}/%{github_name}/archive/%{github_commit}/%{github_name}-%{github_commit}.tar.gz Source0: https://github.com/%{github_owner}/%{github_name}/archive/%{github_commit}/%{github_name}-%{github_commit}.tar.gz
# Disable some stdout/stderr checks that are unreliable in package # Disable some unsafe checks in 18-qemu-options.t:
# build environments for unknown reasons: # https://progress.opensuse.org/issues/111602
# https://progress.opensuse.org/issues/60755 Patch1: 0001-18-qemu-options.t-drop-some-fragile-and-unnecessary-.patch
# https://progress.opensuse.org/issues/105061 # Disable some checks that fail on s390x:
# SUSE just wipes the test files entirely, but it seems nicer to # https://progress.opensuse.org/issues/111608
# have the benefit of the rest of the checks Patch2: 0002-NOT-UPSTREAMABLE-disable-test-that-fails-on-s390x.patch
Patch0: 0001-NOT-UPSTREAMABLE-Disable-unreliable-stdout-stderr-ch.patch
# on SUSE this is conditional, for us it doesn't have to be but we # on SUSE this is conditional, for us it doesn't have to be but we
# still use a macro just to keep build_requires similar for ease of # still use a macro just to keep build_requires similar for ease of
@ -67,7 +66,7 @@ Patch0: 0001-NOT-UPSTREAMABLE-Disable-unreliable-stdout-stderr-ch.patch
# which does not exist in Fedora - we have perl(base) in # which does not exist in Fedora - we have perl(base) in
# main_requires_additional and the perl(:MODULE_COMPAT) require below # main_requires_additional and the perl(:MODULE_COMPAT) require below
# The following line is generated from dependencies.yaml (upstream) # The following line is generated from dependencies.yaml (upstream)
%define main_requires %main_requires_additional git-core perl(B::Deparse) perl(Carp) perl(Carp::Always) perl(Class::Accessor::Fast) perl(Config) perl(Cpanel::JSON::XS) perl(Crypt::DES) perl(Cwd) perl(Data::Dumper) perl(Digest::MD5) perl(DynaLoader) perl(English) perl(Errno) perl(Exception::Class) perl(Exporter) perl(ExtUtils::testlib) perl(Fcntl) perl(File::Basename) perl(File::Find) perl(File::Path) perl(File::Temp) perl(File::Touch) perl(File::Which) perl(File::chdir) perl(IO::Handle) perl(IO::Scalar) perl(IO::Select) perl(IO::Socket) perl(IO::Socket::INET) perl(IO::Socket::UNIX) perl(IPC::Open3) perl(IPC::Run::Debug) perl(IPC::System::Simple) perl(List::MoreUtils) perl(List::Util) perl(Mojo::IOLoop::ReadWriteProcess) >= 0.26 perl(Mojo::JSON) perl(Mojo::Log) perl(Mojo::URL) perl(Mojo::UserAgent) perl(Mojolicious) >= 8.42 perl(Mojolicious::Lite) perl(Net::DBus) perl(Net::IP) perl(Net::SNMP) perl(Net::SSH2) perl(POSIX) perl(Scalar::Util) perl(Socket) perl(Socket::MsgHdr) perl(Term::ANSIColor) perl(Thread::Queue) perl(Time::HiRes) perl(Time::Moment) perl(Time::Seconds) perl(Try::Tiny) perl(XML::LibXML) perl(XML::SemanticDiff) perl(autodie) perl(base) perl(constant) perl(integer) perl(strict) perl(version) perl(warnings) %define main_requires %main_requires_additional git-core perl(B::Deparse) perl(Carp) perl(Carp::Always) perl(Config) perl(Cpanel::JSON::XS) perl(Crypt::DES) perl(Cwd) perl(Data::Dumper) perl(Digest::MD5) perl(DynaLoader) perl(English) perl(Errno) perl(Exception::Class) perl(Exporter) perl(ExtUtils::testlib) perl(Fcntl) perl(File::Basename) perl(File::Find) perl(File::Path) perl(File::Temp) perl(File::Touch) perl(File::Which) perl(File::chdir) perl(IO::Handle) perl(IO::Scalar) perl(IO::Select) perl(IO::Socket) perl(IO::Socket::INET) perl(IO::Socket::UNIX) perl(IPC::Open3) perl(IPC::Run::Debug) perl(IPC::System::Simple) perl(List::MoreUtils) perl(List::Util) perl(Mojo::IOLoop::ReadWriteProcess) >= 0.26 perl(Mojo::JSON) perl(Mojo::Log) perl(Mojo::URL) perl(Mojo::UserAgent) perl(Mojolicious) >= 8.42 perl(Mojolicious::Lite) perl(Net::DBus) perl(Net::IP) perl(Net::SNMP) perl(Net::SSH2) perl(POSIX) perl(Scalar::Util) perl(Socket) perl(Socket::MsgHdr) perl(Term::ANSIColor) perl(Thread::Queue) perl(Time::HiRes) perl(Time::Moment) perl(Time::Seconds) perl(Try::Tiny) perl(XML::LibXML) perl(XML::SemanticDiff) perl(autodie) perl(base) perl(constant) perl(integer) perl(strict) perl(version) perl(warnings)
# diff from SUSE: SUSE has python3-yamllint, Fedora has just yamllint # diff from SUSE: SUSE has python3-yamllint, Fedora has just yamllint
# The following line is generated from dependencies.yaml (upstream) # The following line is generated from dependencies.yaml (upstream)
%define yamllint_requires yamllint %define yamllint_requires yamllint
@ -81,13 +80,13 @@ Patch0: 0001-NOT-UPSTREAMABLE-Disable-unreliable-stdout-stderr-ch.patch
%define test_base_requires %main_requires cpio icewm perl(Benchmark) perl(Devel::Cover) perl(FindBin) perl(Pod::Coverage) perl(Test::Fatal) perl(Test::Mock::Time) perl(Test::MockModule) perl(Test::MockObject) perl(Test::MockRandom) perl(Test::Mojo) perl(Test::Most) perl(Test::Output) perl(Test::Pod) perl(Test::Strict) perl(Test::Warnings) >= 0.029 procps python3-setuptools qemu-kvm /usr/bin/qemu-img /usr/bin/qemu-system-i386 tigervnc-server-minimal xterm xterm-console %define test_base_requires %main_requires cpio icewm perl(Benchmark) perl(Devel::Cover) perl(FindBin) perl(Pod::Coverage) perl(Test::Fatal) perl(Test::Mock::Time) perl(Test::MockModule) perl(Test::MockObject) perl(Test::MockRandom) perl(Test::Mojo) perl(Test::Most) perl(Test::Output) perl(Test::Pod) perl(Test::Strict) perl(Test::Warnings) >= 0.029 procps python3-setuptools qemu-kvm /usr/bin/qemu-img /usr/bin/qemu-system-i386 tigervnc-server-minimal xterm xterm-console
# The following line is generated from dependencies.yaml (upstream) # The following line is generated from dependencies.yaml (upstream)
%define test_version_only_requires perl(Mojo::IOLoop::ReadWriteProcess) >= 0.28 %define test_version_only_requires perl(Mojo::IOLoop::ReadWriteProcess) >= 0.28
# diff from SUSE: it's python3-pillow-tk, not python3-Pillow-tk
# The following line is generated from dependencies.yaml (upstream) # The following line is generated from dependencies.yaml (upstream)
# The following line is generated from dependencies.yaml (upstream) %define test_requires %build_requires %test_base_requires %yamllint_requires perl(Inline::Python) perl(YAML::PP) python3-pillow-tk
%define test_requires %build_requires %test_base_requires %yamllint_requires perl(Inline::Python) perl(YAML::PP)
# diff from SUSE: dropped perl(Devel::Cover::Report::Codecov) as it's # diff from SUSE: dropped perl(Devel::Cover::Report::Codecov) as it's
# not currently packaged for Fedora # not currently packaged for Fedora
# The following line is generated from dependencies.yaml (upstream) # The following line is generated from dependencies.yaml (upstream)
%define devel_requires %test_requires ShellCheck perl(Code::TidyAll) perl(Devel::Cover) perl(Perl::Tidy) %define devel_requires %test_requires ShellCheck perl(Code::TidyAll) perl(Devel::Cover) perl(Perl::Tidy) perl(Template::Toolkit)
BuildRequires: perl-devel BuildRequires: perl-devel
BuildRequires: perl-generators BuildRequires: perl-generators
@ -102,6 +101,8 @@ Recommends: tesseract
Recommends: qemu >= 4.0.0 Recommends: qemu >= 4.0.0
Recommends: qemu-kvm Recommends: qemu-kvm
Recommends: /usr/bin/qemu-img Recommends: /usr/bin/qemu-img
# Optional dependency for Python test API support
Recommends: perl(Inline::Python)
BuildRequires: %test_requires %test_version_only_requires BuildRequires: %test_requires %test_version_only_requires
Requires: %main_requires Requires: %main_requires
Requires(pre): %{_bindir}/getent Requires(pre): %{_bindir}/getent
@ -136,9 +137,11 @@ BuildRequires: systemd
This package contains Open vSwitch support for os-autoinst. This package contains Open vSwitch support for os-autoinst.
%prep %prep
%autosetup -n %{github_name}-%{github_commit} -p1 %setup -n %{github_name}-%{github_commit} -q
# Replace version number from git to what's reported by the package %patch1 -p1
sed -i 's/ my $thisversion = qx{git.*rev-parse HEAD}.*;/ my $thisversion = "%{version}";/' isotovideo %ifarch s390x
%patch2 -p1
%endif
%if 0%{?no_fullstack} %if 0%{?no_fullstack}
rm -f t/99-full-stack.t rm -f t/99-full-stack.t
@ -159,7 +162,11 @@ rm xt/00-tidy.t
rm xt/30-make.t rm xt/30-make.t
%build %build
%cmake -DOS_AUTOINST_DOC_DIR:STRING=%{_docdir}/%{name} -DSYSTEMD_SERVICE_DIR:STRING="%{_unitdir}" -GNinja %cmake \
-DOS_AUTOINST_DOC_DIR:STRING="%{_docdir}/%{name}" \
-DOS_AUTOINST_VERSION:STRING="%{github_version}" \
-DSYSTEMD_SERVICE_DIR:STRING="%{_unitdir}" \
-GNinja
%ninja_build -C %{__cmake_builddir} %ninja_build -C %{__cmake_builddir}
%install %install
@ -167,9 +174,6 @@ rm xt/30-make.t
# we don't really need to ship this in the package, usually the web UI # we don't really need to ship this in the package, usually the web UI
# is much better for needle editing # is much better for needle editing
rm %{buildroot}%{_prefix}/lib/os-autoinst/crop.py* rm %{buildroot}%{_prefix}/lib/os-autoinst/crop.py*
# ...and this thing is just, uh, a little crazy? see:
# https://github.com/os-autoinst/os-autoinst/pull/1558
rm %{buildroot}%{_prefix}/lib/os-autoinst/testapi.py*
# we're going to %%license this # we're going to %%license this
rm %{buildroot}%{_pkgdocdir}/COPYING rm %{buildroot}%{_pkgdocdir}/COPYING
ls -lR %buildroot ls -lR %buildroot
@ -190,6 +194,10 @@ export PROVE_ARGS="--timer -v"
# 00-compile-check-all.t fails if this is present and Perl::Critic is # 00-compile-check-all.t fails if this is present and Perl::Critic is
# not installed # not installed
rm tools/lib/perlcritic/Perl/Critic/Policy/*.pm rm tools/lib/perlcritic/Perl/Critic/Policy/*.pm
# patch the version code in the in-tree copy of isotovideo the same
# way the build process does for the installed version
# https://progress.opensuse.org/issues/111605
sed -i -e "s,my\ \$thisversion\ =\ \(.*\);,my\ \$thisversion\ =\ '4.6';," isotovideo
%ninja_build -C %{__cmake_builddir} check-pkg-build %ninja_build -C %{__cmake_builddir} check-pkg-build
%post openvswitch %post openvswitch
@ -229,6 +237,7 @@ rm tools/lib/perlcritic/Perl/Critic/Policy/*.pm
%{_prefix}/lib/os-autoinst/OpenQA %{_prefix}/lib/os-autoinst/OpenQA
%{_prefix}/lib/os-autoinst/consoles %{_prefix}/lib/os-autoinst/consoles
%{_prefix}/lib/os-autoinst/autotest.pm %{_prefix}/lib/os-autoinst/autotest.pm
%{_prefix}/lib/os-autoinst/*.py
%{_prefix}/lib/os-autoinst/check_qemu_oom %{_prefix}/lib/os-autoinst/check_qemu_oom
%{_bindir}/isotovideo %{_bindir}/isotovideo
%{_bindir}/debugviewer %{_bindir}/debugviewer
@ -242,6 +251,10 @@ rm tools/lib/perlcritic/Perl/Critic/Policy/*.pm
%files devel %files devel
%changelog %changelog
* Wed May 25 2022 Adam Williamson <awilliam@redhat.com> - 4.6^20220530git8a7a14f-1
- Update to latest git, resync spec
- Include Python test support
* Wed Feb 02 2022 Adam Williamson <awilliam@redhat.com> - 4.6^20220201gitab6013d-1 * Wed Feb 02 2022 Adam Williamson <awilliam@redhat.com> - 4.6^20220201gitab6013d-1
- Update to latest git, resync spec - Update to latest git, resync spec
- Switch to newer caret-based snapshot versioning scheme - Switch to newer caret-based snapshot versioning scheme

@ -1 +1 @@
SHA512 (os-autoinst-ab6013d738344791507525e45cbd9f972a444968.tar.gz) = 9f4f3621b8dfcada319edc26465cc575cc0f7aa992653951e2cc9cb2bda3c17c3354e3ee44aa53180e9595bce2e81a925a936c318a319a359b7a2faccfe64093 SHA512 (os-autoinst-8a7a14fa5175e3ce1dbd0f59c2c2ec2d73c572d6.tar.gz) = 4dc085f0cdef6e419b85818572c982e62c7c2ff1312f011efa6c1696b93735807cfff8893fc11004b47353bccb9bfca84e1c7de03d9b07949c66deef55512970

Loading…
Cancel
Save