diff --git a/cache.txz b/cache.txz index 0bd2f91..9129cec 100644 --- a/cache.txz +++ b/cache.txz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:68a56ad0f2d8e03001fa8c392cdeedcd4e9249153bd75b6a37487b9aeef4d121 -size 1183289 +oid sha256:c205f6ab3bb8fc847058b4a9df1824c29c1c8deb7cb3feba2bf82e69a16789b2 +size 1186474 diff --git a/openQA-4.4.1491400697.19ef0fc5.tar.xz b/openQA-4.4.1491400697.19ef0fc5.tar.xz new file mode 100644 index 0000000..50332f0 --- /dev/null +++ b/openQA-4.4.1491400697.19ef0fc5.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:947901d9c54c8e48f2ce4ddf3d65c526fe72f8c1b59c23931e4f5807cbd83477 +size 1368932 diff --git a/openQA-4.4.1497257618.89b04ed8.tar.xz b/openQA-4.4.1497257618.89b04ed8.tar.xz deleted file mode 100644 index af1cfcc..0000000 --- a/openQA-4.4.1497257618.89b04ed8.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ceb5bcb75d755b74a6ae34890450e77d4c4d86fb4dca8913d024b8442225891e -size 1382748 diff --git a/openQA.changes b/openQA.changes index fb8d5cb..a61661e 100644 --- a/openQA.changes +++ b/openQA.changes @@ -1,24 +1,3 @@ -------------------------------------------------------------------- -Tue Jun 13 20:33:37 UTC 2017 - rd-ops-cm@suse.de - -- Update to version 4.4.1497257618.89b04ed8: - * Allow plugins to load specific configurations - * Remove auth_config from OpenQA::WebAPI::Auth::* - * Add fullscreen base into project - * Add form entry for fullscreen view - * Fix navbar to not hide if dropdown selected - * Change help popover description in filtersection - * Correct main controller and index page - * Add error message for missing webserver - * Add link to CaaSP staging (#1360) - * Also recognize fdo bugrefs in Utils.pm (#1367) - * Database change for bug status - * Improve assets log messages (#1365) - * Documentation for GRE (#1369) - * Extend sorting by time to parent group overview (#1362) -- Include upstream changes for worker with no-cleanup -- Clean spec file with spec-clean - ------------------------------------------------------------------- Tue May 16 09:56:40 UTC 2017 - mlin@suse.com diff --git a/openQA.spec b/openQA.spec index 3a7a591..2281641 100644 --- a/openQA.spec +++ b/openQA.spec @@ -17,14 +17,16 @@ # can't use linebreaks here! -%define openqa_services openqa-webui.service openqa-gru.service openqa-websockets.service openqa-scheduler.service -%define openqa_worker_services openqa-worker.target openqa-worker@.service openqa-worker-no-cleanup@.service openqa-slirpvde.service openqa-vde_switch.service +%define openqa_services openqa-webui.service openqa-gru.service openqa-websockets.service openqa-scheduler.service +%define openqa_worker_services openqa-worker.target openqa-worker@.service openqa-slirpvde.service openqa-vde_switch.service + %if %{undefined tmpfiles_create} %define tmpfiles_create() \ -%{_bindir}/systemd-tmpfiles --create %{?*} || : \ +/usr/bin/systemd-tmpfiles --create %{?*} || : \ %{nil} %endif -%if 0%{?suse_version} >= 1730 + +%if %suse_version >= 1730 %ifarch x86_64 %bcond_without tests %else @@ -33,10 +35,9 @@ %else %bcond_with tests %endif -# runtime requirements that also the testsuite needs -%define t_requires perl(DBD::SQLite) perl(DBIx::Class) perl(Config::IniFiles) perl(SQL::Translator) perl(Date::Format) perl(File::Copy::Recursive) perl(DateTime::Format::SQLite) perl(Net::OpenID::Consumer) perl(Mojolicious::Plugin::RenderFile) perl(Mojolicious::Plugin::AssetPack) perl(aliased) perl(Config::Tiny) perl(DBIx::Class::DynamicDefault) perl(DBIx::Class::Schema::Config) perl(DBIx::Class::Storage::Statistics) perl(IO::Socket::SSL) perl(Data::Dump) perl(DBIx::Class::OptimisticLocking) perl(Text::Markdown) perl(Net::DBus) perl(IPC::Run) perl(Archive::Extract) perl(CSS::Minifier::XS) perl(JavaScript::Minifier::XS) perl(Time::ParseDate) perl(Sort::Versions) perl(Mojo::RabbitMQ::Client) perl(BSD::Resource) + Name: openQA -Version: 4.4.1497257618.89b04ed8 +Version: 4.4.1491400697.19ef0fc5 Release: 0 Summary: The openQA web-frontend, scheduler and tools License: GPL-2.0+ @@ -47,43 +48,37 @@ Source0: %{name}-%{version}.tar.xz # use update-cache to update it Source1: cache.txz Source101: update-cache.sh -BuildRequires: %{t_requires} -BuildRequires: fdupes +ExcludeArch: i586 +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Requires(post): sqlite3 BuildRequires: os-autoinst -BuildRequires: systemd -# critical bug fix -BuildRequires: perl(DBIx::Class) >= 0.082801 -BuildRequires: perl(Mojolicious) >= 7.24 -BuildRequires: perl(Mojolicious::Plugin::AssetPack) >= 1.36 -BuildRequires: rubygem(sass) -Requires: dbus-1 -# needed for test suite -Requires: git-core Requires: openQA-client = %{version} Requires: openQA-common = %{version} -# needed for saving needles optimized -Requires: optipng -Requires: perl(DBIx::Class) >= 0.082801 +Requires: perl(URI) +BuildRequires: systemd +BuildRequires: rubygem(sass) # needed for openid support Requires: perl(LWP::Protocol::https) -Requires: perl(URI) -# we need to have the same sha1 as expected -%requires_eq perl-Mojolicious-Plugin-AssetPack -Requires(post): coreutils -Requires(post): sqlite3 -Requires(post): perl(DBIx::Class::DeploymentHandler) -Requires(post): perl(SQL::SplitStatement) -Recommends: apache2 Recommends: apparmor-profiles Recommends: apparmor-utils +Recommends: apache2 Recommends: logrotate # for postgresql -Recommends: perl(DBD::Pg) -Recommends: perl(DateTime::Format::Pg) -BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildArch: noarch -ExcludeArch: i586 -%{?systemd_requires} +Recommends: perl(DateTime::Format::Pg) perl(DBD::Pg) +# runtime requirements that also the testsuite needs +%define t_requires perl(DBD::SQLite) perl(DBIx::Class) perl(Config::IniFiles) perl(SQL::Translator) perl(Date::Format) perl(File::Copy::Recursive) perl(DateTime::Format::SQLite) perl(Net::OpenID::Consumer) perl(Mojolicious::Plugin::RenderFile) perl(Mojolicious::Plugin::AssetPack) perl(aliased) perl(Config::Tiny) perl(DBIx::Class::DynamicDefault) perl(DBIx::Class::Schema::Config) perl(DBIx::Class::Storage::Statistics) perl(IO::Socket::SSL) perl(Data::Dump) perl(DBIx::Class::OptimisticLocking) perl(Text::Markdown) perl(Net::DBus) perl(IPC::Run) perl(Archive::Extract) perl(CSS::Minifier::XS) perl(JavaScript::Minifier::XS) perl(Time::ParseDate) perl(Sort::Versions) perl(Mojo::RabbitMQ::Client) +BuildRequires: perl(Mojolicious) >= 7.24 +BuildRequires: perl(Mojolicious::Plugin::AssetPack) >= 1.36 +# critical bug fix +BuildRequires: perl(DBIx::Class) >= 0.082801 +Requires: perl(DBIx::Class) >= 0.082801 +# needed for test suite +Requires: git-core +# needed for saving needles optimized +Requires: optipng +BuildRequires: %{t_requires} +Requires: dbus-1 +BuildRequires: fdupes %if %{with tests} BuildRequires: perl-App-cpanminus BuildRequires: phantomjs @@ -95,9 +90,16 @@ BuildRequires: perl(Test::Compile) BuildRequires: perl(Test::MockObject) BuildRequires: perl(Test::Warnings) %endif +Requires(post): perl(DBIx::Class::DeploymentHandler) +Requires(post): perl(SQL::SplitStatement) +Requires(post): coreutils %if 0%{?suse_version} >= 1330 Requires(pre): group(nogroup) %endif +%{?systemd_requires} +BuildArch: noarch +# we need to have the same sha1 as expected +%requires_eq perl-Mojolicious-Plugin-AssetPack %description openQA is a testing framework that allows you to test GUI applications on one @@ -125,20 +127,19 @@ Requires: %{t_requires} Requires: perl(Mojolicious) >= 7.24 %description common -This package contain shared resources for openQA web-frontend and +This package contain shared resources for openQA web-frontend and openQA workers. %package worker Summary: The openQA worker Group: Development/Tools/Other -Requires: openQA-client = %{version} -Requires: os-autoinst < 5 -Requires: perl(SQL::SplitStatement) -# FIXME: use proper Requires(pre/post/preun/...) PreReq: openQA-common = %{version} Requires(post): coreutils Requires(post): os-autoinst >= 4.4 +Requires: openQA-client = %{version} +Requires: os-autoinst < 5 Recommends: qemu +Requires: perl(SQL::SplitStatement) %if 0%{?suse_version} >= 1330 Requires(pre): group(nogroup) %endif @@ -168,15 +169,15 @@ Documentation material covering installation, configuration, basic test writing, Covering both openQA and also os-autoinst test engine. %prep -%setup -q -a1 +%setup -a1 %build -make %{?_smp_mflags} +make %check #for double checking %if %{with tests} -cpanm --installdeps --with-feature=test . +cpanm --installdeps --with-feature=test . %endif # we don't really need the tidy test @@ -190,15 +191,15 @@ OBS_RUN=1 prove -r -j2 -v %install %make_install -mkdir -p %{buildroot}%{_datadir}/openqa%{_sysconfdir}/openqa -ln -s %{_sysconfdir}/openqa/openqa.ini %{buildroot}%{_datadir}/openqa%{_sysconfdir}/openqa/openqa.ini -ln -s %{_sysconfdir}/openqa/database.ini %{buildroot}%{_datadir}/openqa%{_sysconfdir}/openqa/database.ini +mkdir -p %{buildroot}/usr/share/openqa/etc/openqa +ln -s /etc/openqa/openqa.ini %{buildroot}/usr/share/openqa/etc/openqa/openqa.ini +ln -s /etc/openqa/database.ini %{buildroot}/usr/share/openqa/etc/openqa/database.ini mkdir -p %{buildroot}%{_bindir} -ln -s %{_datadir}/openqa/script/client %{buildroot}%{_bindir}/openqa-client +ln -s /usr/share/openqa/script/client %{buildroot}%{_bindir}/openqa-client -cd %{buildroot} -grep -rl %{_bindir}/env . | while read file; do - sed -e 's,%{_bindir}/env perl,%{_bindir}/perl,' -i $file +cd %buildroot +grep -rl /usr/bin/env . | while read file; do + sed -e 's,/usr/bin/env perl,/usr/bin/perl,' -i $file done mkdir -p %{buildroot}%{_sbindir} for i in webui gru worker scheduler websockets slirpvde vde_switch; do @@ -206,19 +207,19 @@ for i in webui gru worker scheduler websockets slirpvde vde_switch; do done # install -D -m 644 /dev/null %{buildroot}%{_localstatedir}/log/openqa -install -m 0644 %{_sourcedir}/openQA.changes %{buildroot}%{_datadir}/openqa/public/Changelog +install -m 0644 %_sourcedir/openQA.changes %{buildroot}%{_datadir}/openqa/public/Changelog # mkdir %{buildroot}%{_localstatedir}/lib/openqa/pool/1 mkdir %{buildroot}%{_localstatedir}/lib/openqa/cache # -%fdupes %{buildroot}/%{_prefix} +%fdupes %buildroot/%_prefix %pre getent passwd geekotest >/dev/null || \ - %{_sbindir}/useradd -r -g nogroup -c "openQA user" \ - -d %{_localstatedir}/lib/openqa geekotest + /usr/sbin/useradd -r -g nogroup -c "openQA user" \ + -d /var/lib/openqa geekotest -%service_add_pre %{openqa_services} +%service_add_pre %openqa_services %pre common if [ "$1" = 1 ]; then @@ -236,23 +237,23 @@ fi %pre worker if ! getent passwd _openqa-worker >/dev/null; then - %{_sbindir}/useradd -r -g nogroup -c "openQA worker" \ - -d %{_localstatedir}/lib/empty _openqa-worker + /usr/sbin/useradd -r -g nogroup -c "openQA worker" \ + -d /var/lib/empty _openqa-worker # might fail for non-kvm workers (qemu package owns the group) - %{_sbindir}/usermod _openqa-worker -a -G kvm || : + /usr/sbin/usermod _openqa-worker -a -G kvm || : fi -%service_add_pre %{openqa_worker_services} +%service_add_pre %openqa_worker_services %post # install empty log file -if [ ! -e %{_localstatedir}/log/openqa ]; then +if [ ! -e /var/log/openqa ]; then install -D -m 644 -o geekotest /dev/null %{_localstatedir}/log/openqa || : fi if [ $1 -eq 1 ]; then - echo "### copy and edit %{_sysconfdir}/apache2/vhosts.d/openqa.conf.template!" - echo "### run sudo %{_datadir}/openqa/script/fetchneedles" + echo "### copy and edit /etc/apache2/vhosts.d/openqa.conf.template!" + echo "### run sudo /usr/share/openqa/script/fetchneedles" else if [ -d "%{_localstatedir}/lib/openqa/share/testresults" ]; then @@ -262,24 +263,24 @@ else fi fi -%service_add_post %{openqa_services} +%service_add_post %openqa_services %post worker %tmpfiles_create %{_tmpfilesdir}/openqa.conf -%service_add_post %{openqa_worker_services} +%service_add_post %openqa_worker_services %preun -%service_del_preun %{openqa_services} +%service_del_preun %openqa_services %preun worker -%service_del_preun %{openqa_worker_services} +%service_del_preun %openqa_worker_services %postun -%service_del_postun %{openqa_services} +%service_del_postun %openqa_services %restart_on_update boot.apparmor %postun worker -%service_del_postun %{openqa_worker_services} +%service_del_postun %openqa_worker_services %files %defattr(-,root,root) @@ -293,9 +294,9 @@ fi %config(noreplace) %attr(-,geekotest,root) %{_sysconfdir}/openqa/database.ini %dir %{_datadir}/openqa %dir %{_datadir}/openqa/etc -%dir %{_datadir}/openqa%{_sysconfdir}/openqa -%{_datadir}/openqa%{_sysconfdir}/openqa/openqa.ini -%{_datadir}/openqa%{_sysconfdir}/openqa/database.ini +%dir %{_datadir}/openqa/etc/openqa +%{_datadir}/openqa/etc/openqa/openqa.ini +%{_datadir}/openqa/etc/openqa/database.ini %config %{_sysconfdir}/logrotate.d %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.opensuse.openqa.conf # apache vhost @@ -372,7 +373,6 @@ fi %{_libexecdir}/systemd/system-generators %{_unitdir}/openqa-worker.target %{_unitdir}/openqa-worker@.service -%{_unitdir}/openqa-worker-no-cleanup@.service %{_unitdir}/openqa-slirpvde.service %{_unitdir}/openqa-vde_switch.service %{_tmpfilesdir}/openqa.conf