From cb6b41d6e4e8cf338ec5a90a73dc53fc520dfb97 Mon Sep 17 00:00:00 2001 From: Jimmy Berry Date: Mon, 9 Oct 2017 21:58:29 -0500 Subject: [PATCH] dist: provide check-source subpackage. --- Makefile | 2 +- dist/package/openSUSE-release-tools.spec | 36 ++++++++++++++++++++++++ systemd/osrt-check-source.service | 12 ++++++++ systemd/osrt-check-source.timer | 10 +++++++ 4 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 systemd/osrt-check-source.service create mode 100644 systemd/osrt-check-source.timer diff --git a/Makefile b/Makefile index abe25931..fbfe4529 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ SUBDIRS = factory-package-news abichecker include Makefile.common -pkgdata_BINS=check_maintenance_incidents devel-project leaper manager_42 repo_checker suppkg_rebuild totest-manager update_crawler +pkgdata_BINS=check_maintenance_incidents check_source devel-project leaper manager_42 repo_checker suppkg_rebuild totest-manager update_crawler pkgdata_SCRIPTS=$(wildcard *.py *.pl *.sh) pkgdata_SCRIPTS+=bs_mirrorfull findfileconflicts pkgdata_DATA+=bs_copy metrics osclib $(wildcard *.pm *.testcase) diff --git a/dist/package/openSUSE-release-tools.spec b/dist/package/openSUSE-release-tools.spec index 6dcb20e6..2ee14c45 100644 --- a/dist/package/openSUSE-release-tools.spec +++ b/dist/package/openSUSE-release-tools.spec @@ -109,6 +109,17 @@ BuildArch: noarch %description announcer OBS product release announcer for generating email diffs summaries. +%package check-source +Summary: Check source review bot +Group: Development/Tools/Other +BuildArch: noarch +# TODO Update requirements. +Requires: osclib = %{version} +Requires(pre): shadow + +%description check-source +Check source review bot that performs basic source analysis and assigns reviews. + %package leaper Summary: Leap-style services Group: Development/Tools/Other @@ -251,6 +262,21 @@ mkdir -p %{buildroot}%{_datadir}/%{source_dir}/%{announcer_filename} %postun announcer %service_del_postun %{announcer_filename}.service +%pre check-source +%service_add_pre osrt-check-source.service +getent passwd osrt-check-source > /dev/null || \ + useradd -r -m -s /sbin/nologin -c "user for openSUSE-release-tools-check-source" osrt-check-source +exit 0 + +%post check-source +%service_add_post osrt-check-source.service + +%preun check-source +%service_del_preun osrt-check-source.service + +%postun check-source +%service_del_postun osrt-check-source.service + %pre leaper %service_add_pre osrt-leaper-crawler@.service %service_add_pre osrt-leaper-manager@.service @@ -367,6 +393,8 @@ exit 0 %exclude %{_datadir}/%{source_dir}/abichecker %exclude %{_datadir}/%{source_dir}/%{announcer_filename} %exclude %{_datadir}/%{source_dir}/check_maintenance_incidents.py +%exclude %{_datadir}/%{source_dir}/check_source.pl +%exclude %{_datadir}/%{source_dir}/check_source.py %exclude %{_datadir}/%{source_dir}/devel-project.py %exclude %{_datadir}/%{source_dir}/leaper.py %exclude %{_datadir}/%{source_dir}/manager_42.py @@ -404,6 +432,14 @@ exit 0 %{_unitdir}/%{announcer_filename}.service %{_unitdir}/%{announcer_filename}.timer +%files check-source +%defattr(-,root,root,-) +%{_bindir}/osrt-check_source +%{_datadir}/%{source_dir}/check_source.pl +%{_datadir}/%{source_dir}/check_source.py +%{_unitdir}/osrt-check-source.service +%{_unitdir}/osrt-check-source.timer + %files leaper %defattr(-,root,root,-) %{_bindir}/osrt-leaper diff --git a/systemd/osrt-check-source.service b/systemd/osrt-check-source.service new file mode 100644 index 00000000..995dd1c8 --- /dev/null +++ b/systemd/osrt-check-source.service @@ -0,0 +1,12 @@ +[Unit] +Description=openSUSE Release Tools: check-source + +[Service] +Type=simple +User=osrt-check-source +SyslogIdentifier=osrt-check-source +# TODO Drop group flag once #1181 is resolved. +ExecStart=/usr/bin/osrt-check_source --verbose --group factory-auto review + +[Install] +WantedBy=multi-user.target diff --git a/systemd/osrt-check-source.timer b/systemd/osrt-check-source.timer new file mode 100644 index 00000000..49573775 --- /dev/null +++ b/systemd/osrt-check-source.timer @@ -0,0 +1,10 @@ +[Unit] +Description=openSUSE Release Tools: check-source + +[Timer] +OnBootSec=120 +OnUnitInactiveSec=3 min +Unit=osrt-check-source.service + +[Install] +WantedBy=timers.target