Compare commits

...

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

10 changed files with 180 additions and 60 deletions

View File

@ -1 +1 @@
1fe5851af81995b4187b6c24ffbb9e8edead7060 SOURCES/booth-1.0-283-9d4029a.tar.gz
7d9cbffc7e0392a7857af08d6f466d9d97631f72 booth-1.1.tar.gz

7
.gitignore vendored
View File

@ -1 +1,6 @@
SOURCES/booth-1.0-283-9d4029a.tar.gz
/booth-*.tar.gz
/booth-*.rpm
/booth-*/
*~
*.sw?

23
booth.rpmlintrc Normal file
View File

@ -0,0 +1,23 @@
# no-documentation is fine for booth-arbitrator and booth (virtual package)
addFilter(r'booth-arbitrator\.[^:]+: W: no-documentation')
addFilter(r'booth\.[^:]+: W: no-documentation')
# permissions for chroot
addFilter(r'booth-core\.[^:]+: (E|W): non-standard-dir-perm /var/lib/booth 750')
addFilter(r'booth-core\.[^:]+: (E|W): non-standard-dir-perm /var/lib/booth/cores 750')
# booth is just metapackage
addFilter(r'booth\.[^:]+: (W|E): no-binary')
# pc should be in devel but it is not really devel file
addFilter(r'booth\.[^:]+: W: devel-file-in-non-devel-package /usr/share/pkgconfig/booth.pc')
# booth-(site|test) installs just scripts in /usr/lib
addFilter(r'booth-(site|test)\.[^:]+: (W|E): only-non-binary-in-usr-lib')
# dangling symlink is ok for geostore and boothd (they actually points to booth binary)
addFilter(r'booth-site\.[^:]+: (W|E): dangling-symlink /usr/sbin/geostore /usr/sbin/boothd')
addFilter(r'booth-test\.[^:]+: (W|E): dangling-symlink /usr/share/booth/tests/src/boothd /usr/sbin/boothd')
# booth unit test is distributed non-executable by upstream
addFilter(r'booth-test\.[^:]+: (W|E): non-executable-script /usr/share/booth/tests/unit-test.py')

View File

@ -22,23 +22,7 @@
%bcond_with html_man
%bcond_with glue
%bcond_with run_build_tests
%bcond_without include_unit_test
# set following to the result of `git describe --abbrev=128 $commit`
# This will be used to fill booth_ver, booth_numcomm and booth_sha1.
# It is important to keep abbrev to get full length sha1! When updating source use
# `spectool -g booth.spec` to download source.
%global git_describe_str v1.0-283-g9d4029aa14323a7f3b496215d25e40bd14f33632
# Set this to 1 when rebasing (changing git_describe_str) and increase otherwise
%global release 1
# Run shell script to parse git_describe str into version, numcomm and sha1 hash
%global booth_ver %(s=%{git_describe_str}; vver=${s%%%%-*}; echo ${vver:1})
%global booth_numcomm %(s=%{git_describe_str}; t=${s#*-}; echo ${t%%%%-*})
%global booth_sha1 %(s=%{git_describe_str}; t=${s##*-}; echo ${t:1})
%global booth_short_sha1 %(s=%{booth_sha1}; echo ${s:0:7})
%global booth_archive_name %{name}-%{booth_ver}-%{booth_numcomm}-%{booth_short_sha1}
%bcond_with include_unit_test
## User and group to use for nonprivileged services (should be in sync with pacemaker)
%global uname hacluster
@ -56,12 +40,12 @@
%global test_path %{_datadir}/booth/tests
Name: booth
Version: %{booth_ver}
Release: %{booth_numcomm}.%{release}.%{booth_short_sha1}.git%{?dist}
Version: 1.1
Release: 1%{?dist}
Summary: Ticket Manager for Multi-site Clusters
License: GPLv2+
Url: https://github.com/%{github_owner}/%{name}
Source0: https://github.com/%{github_owner}/%{name}/archive/%{booth_short_sha1}/%{booth_archive_name}.tar.gz
Source0: https://github.com/%{github_owner}/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz
Patch0: rhel-specific-0001-config-Add-enable-authfile-option.patch
# direct build process dependencies
@ -72,7 +56,7 @@ BuildRequires: make
## ./autogen.sh
BuildRequires: /bin/sh
# general build dependencies
BuildRequires: asciidoc
BuildRequires: asciidoctor
BuildRequires: gcc
BuildRequires: pkgconfig
# linking dependencies
@ -99,8 +83,8 @@ BuildRequires: systemd
## for autosetup
BuildRequires: git
%if 0%{?with_run_build_tests}
# check scriptlet (for perl and netstat)
BuildRequires: perl-interpreter net-tools
# check scriptlet (for perl and ss)
BuildRequires: perl-interpreter iproute
%endif
# this is for a composite-requiring-its-components arranged
@ -184,8 +168,8 @@ Requires: %{__python3}
%if 0%{?with_include_unit_test}
Requires: python3-pexpect
%endif
# runtests.py suite (for perl and netstat)
Requires: perl-interpreter net-tools
# runtests.py suite (for perl and ss)
Requires: perl-interpreter iproute
%description test
Automated tests for running Booth, ticket manager for multi-site clusters.
@ -193,7 +177,7 @@ Automated tests for running Booth, ticket manager for multi-site clusters.
# BUILD #
%prep
%autosetup -n %{name}-%{booth_sha1} -S git_am
%autosetup -n %{name}-%{version} -S git_am
%build
./autogen.sh
@ -311,65 +295,139 @@ VERBOSE=1 make check
%{_usr}/lib/ocf/resource.d/booth/sharedrsc
%changelog
* Thu Nov 23 2023 Jan Friesse <jfriesse@redhat.com> - 1.1-1
- Resolves: RHEL-15268
- Resolves: RHEL-7029
- New upstream release (RHEL-15268)
- Upstream releases should now be released regularly, so convert spec
to use them instead of git snapshots (RHEL-15268)
- Fix exit code on grant/revoke command error (RHEL-7029)
* Mon Nov 21 2022 Jan Friesse <jfriesse@redhat.com> - 1.0-283.1.9d4029a.git
- Resolves: rhbz#2135865
- Resolves: rhbz#2135866
- Update to current snapshot (commit 9d4029a) (rhbz#2135865)
- Update to current snapshot (commit 9d4029a) (rhbz#2135866)
* Wed Aug 03 2022 Jan Friesse <jfriesse@redhat.com> - 1.0-199.2.ac1d34c.git
- Resolves: rhbz#2111668
* Tue Oct 25 2022 Jan Friesse <jfriesse@redhat.com> - 1.0-251.5.bfb2f92.git
- Resolves: rhbz#2133833
- unit file: Remove Alias directive
* Tue Aug 09 2022 Jan Friesse <jfriesse@redhat.com> - 1.0-251.4.bfb2f92.git
- Related: rhbz#2111669
- Remove template unit from systemd_(post|preun|postun_with_restart) macro
* Wed Aug 03 2022 Jan Friesse <jfriesse@redhat.com> - 1.0-251.3.bfb2f92.git
- Resolves: rhbz#2111669
- Fix authfile directive handling in booth config file
(fixes CVE-2022-2553)
- Add enable-authfile option
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.0-251.2.bfb2f92.git
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu May 20 2021 Jan Friesse <jfriesse@redhat.com> - 1.0-251.1.bfb2f92.git
- Related: rhbz#1961216
- Rebase to newest upstream snapshot
* Tue May 18 2021 Jan Friesse <jfriesse@redhat.com> - 1.0-249.1.977726e.git
- Resolves: rhbz#1961216
- Do not include unit-test by default
- Rebase to newest upstream snapshot
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 1.0-239.3.52ec255.git
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-239.2.52ec255.git
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Nov 23 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-239.1.52ec255.git
- Rebase to newest upstream snapshot
* Thu Oct 15 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-237.2.dd88847.git
- Fix dist macro
* Thu Oct 15 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-237.1.dd88847.git
- Rebase to newest upstream snapshot
* Thu Oct 15 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-199.1.ac1d34c.git
- Resolves: rhbz#1873948
- Resolves: rhbz#1768172
- Implement new versioning scheme
- Fix versioning scheme to handle updates better
- Handle updated exit code of crm_ticket
* Tue Sep 29 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-6.ac1d34c.git.5
- Remove net-tools (netstat) dependency and replace it with iproute (ss)
- Disable running tests during build by default (conditional run_build_tests)
* Wed Jun 3 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-6.ac1d34c.git.2
- Related: rhbz#1835831
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-6.ac1d34c.git.4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jun 3 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-6.ac1d34c.git.3
- Do not link with the pcmk libraries
- Generate runtests.py and boothtestenv.py with -Es as make check does
* Tue Jun 2 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-6.ac1d34c.git.1
- Resolves: rhbz#1602455
- Resolves: rhbz#1682122
- Resolves: rhbz#1768369
- Resolves: rhbz#1835831
* Tue Jun 2 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-6.ac1d34c.git.2
- Require the Python interpreter directly instead of using the package name
- Update to current snapshot (commit ac1d34c) to fix test suite,
build warnings and build with gcc10
- Fix hardcoded-library-path
- Package /var/lib/booth where booth can chroot
- Add '?dist' macro to release field
- Pass full path of Python3 to configure
* Tue Jun 2 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-6.ac1d34c.git.1
- Update to current snapshot (commit ac1d34c) to fix test suite
* Mon Jun 1 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-5.385cc25.git.3
- Add CI tests
- Enable gating
- Fix hardcoded-library-path
* Wed Sep 19 2018 Tomas Orsava <torsava@redhat.com> - 1.0-5.f2d38ce.git
- Require the Python interpreter directly instead of using the package name
- Related: rhbz#1619153
* Mon Jun 1 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-5.385cc25.git.2
- Package /var/lib/booth where booth can chroot
* Thu Jul 19 2018 Jan Pokorný <jpokorny+rpm-booth@redhat.com> - 1.0-4.f2d38ce.git
- revert back to using asciidoc instead of asciidoctor for generating man pages
(rhbz#1603119)
- fix some issues in the shell scripts (rhbz#1602455)
* Thu May 28 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-5.385cc25.git.1
- Fix test subpackage generating
* Mon Jul 16 2018 Jan Pokorný <jpokorny+rpm-booth@redhat.com> - 1.0-3.f2d38ce.git
* Wed May 27 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-5.385cc25.git
- Update to current snapshot (commit 385cc25) to fix build warnings
* Wed May 13 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-4.5d837d2.git.2
- Rebuild for the new libqb
* Mon May 4 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-4.5d837d2.git.1
- Add '?dist' macro to release field
* Mon May 4 2020 Jan Friesse <jfriesse@redhat.com> - 1.0-4.5d837d2.git
- Update to current snapshot (commit 5d837d2) to build with gcc10
- Pass full path of Python3 to configure
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-3.f2d38ce.git.3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-3.f2d38ce.git.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-3.f2d38ce.git.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Jan Pokorný <jpokorny+rpm-booth@fedoraproject.org> - 1.0-3.f2d38ce.git
- update for another, current snapshot beyond booth-1.0
(commit f2d38ce), including:
. support for solely manually managed tickets (9a365f9)
. use asciidoctor instead of asciidoc for generating man pages (65e6a6b)
- switch to using Python 3 for the tests instead of Python 2
(behind unversioned "python" references; rhbz#1590856)
(behind unversioned "python" references; rhbz#1555651)
* Thu Jun 21 2018 Troy Dawson <tdawson@redhat.com> - 1.0-2.570876d.git.3
- Fix python shebangs (#1580601)
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-2.570876d.git.6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-2.570876d.git.5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-2.570876d.git.4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-2.570876d.git.3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-2.570876d.git.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

15
gating.yaml Normal file
View File

@ -0,0 +1,15 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_testing
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (booth-1.1.tar.gz) = dacc3258dd9a5f0dd72406eae753fb4900922bd2d906817a28c9ece7d7a1caaf5fd16959f8dff450382105358f2898c594171ae229ccd94e4d07f49668b0410d

3
tests/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
# Ignore tests runs/artefacts.
artifacts/**
**/*.retry

9
tests/tests.yml Normal file
View File

@ -0,0 +1,9 @@
- hosts: localhost
roles:
- role: standard-test-basic
tags:
- classic
tests:
- upstream
required_packages:
- booth-test

View File

@ -0,0 +1,6 @@
#!/bin/bash
set -xe
set -o pipefail
/usr/share/booth/tests/test/runtests.py --allow-root-user