Add Train support
This commit is contained in:
parent
01c8afcb36
commit
f7a7b338aa
206
openstack-panko.spec
Normal file
206
openstack-panko.spec
Normal file
@ -0,0 +1,206 @@
|
||||
%global pypi_name panko
|
||||
%global common_desc OpenStack Panko provides API to store events from OpenStack components.
|
||||
|
||||
Name: openstack-panko
|
||||
Version: 7.1.0
|
||||
Release: 1
|
||||
Summary: Panko provides Event storage and REST API
|
||||
|
||||
License: ASL 2.0
|
||||
URL: http://github.com/openstack/panko
|
||||
Source0: https://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
|
||||
|
||||
Source1: %{pypi_name}-dist.conf
|
||||
Source2: %{pypi_name}.logrotate
|
||||
BuildArch: noarch
|
||||
|
||||
BuildRequires: python3-setuptools
|
||||
BuildRequires: python3-pbr
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: openstack-macros
|
||||
|
||||
%description
|
||||
HTTP API to store events.
|
||||
|
||||
%package -n python3-%{pypi_name}
|
||||
Summary: OpenStack panko python libraries
|
||||
|
||||
Requires: python3-debtcollector
|
||||
Requires: python3-tenacity
|
||||
Requires: python3-keystonemiddleware
|
||||
Requires: python3-oslo-config
|
||||
Requires: python3-oslo-dbsync
|
||||
Requires: python3-oslo-i18n
|
||||
Requires: python3-oslo-log
|
||||
Requires: python3-oslo-middleware
|
||||
Requires: python3-oslo-policy
|
||||
Requires: python3-oslo-reports
|
||||
Requires: python3-oslo-utils
|
||||
Requires: python3-oslo-serialization
|
||||
Requires: python3-pecan
|
||||
Requires: python3-six
|
||||
Requires: python3-sqlalchemy
|
||||
Requires: python3-alembic
|
||||
Requires: python3-stevedore
|
||||
Requires: python3-webob
|
||||
Requires: python3-wsme
|
||||
Requires: python3-dateutil
|
||||
Requires: python3-pbr
|
||||
|
||||
# Handle python2 exception
|
||||
%if 3 == 2
|
||||
Requires: python-lxml
|
||||
Requires: python-paste
|
||||
Requires: python-paste-deploy
|
||||
Requires: python-sqlalchemy-utils
|
||||
Requires: PyYAML
|
||||
%else
|
||||
Requires: python3-lxml
|
||||
Requires: python3-paste
|
||||
Requires: python3-paste-deploy
|
||||
Requires: python3-sqlalchemy-utils
|
||||
Requires: python3-PyYAML
|
||||
%endif
|
||||
|
||||
%description -n python3-%{pypi_name}
|
||||
%{common_desc}
|
||||
|
||||
This package contains the Panko python library.
|
||||
|
||||
|
||||
%package api
|
||||
|
||||
Summary: OpenStack panko api
|
||||
|
||||
Requires: %{name}-common = %{version}-%{release}
|
||||
|
||||
|
||||
%description api
|
||||
%{common_desc}
|
||||
|
||||
This package contains the Panko API service.
|
||||
|
||||
%package common
|
||||
Summary: Components common to all OpenStack panko services
|
||||
|
||||
# Config file generation
|
||||
BuildRequires: python3-oslo-config
|
||||
BuildRequires: python3-oslo-concurrency
|
||||
BuildRequires: python3-oslo-db
|
||||
BuildRequires: python3-oslo-log
|
||||
BuildRequires: python3-oslo-messaging
|
||||
BuildRequires: python3-oslo-policy
|
||||
BuildRequires: python3-oslo-reports
|
||||
BuildRequires: python3-oslo-service
|
||||
BuildRequires: python3-tenacity
|
||||
BuildRequires: python3-werkzeug
|
||||
|
||||
Requires: python3-panko = %{version}-%{release}
|
||||
Requires: openstack-ceilometer-common
|
||||
|
||||
|
||||
%description common
|
||||
%{common_desc}
|
||||
|
||||
%package -n python3-panko-tests
|
||||
Summary: Panko tests
|
||||
Requires: python3-panko = %{version}-%{release}
|
||||
|
||||
%description -n python3-%{pypi_name}-tests
|
||||
This package contains the Panko test files.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{pypi_name}-%{version}
|
||||
|
||||
find . \( -name .gitignore -o -name .placeholder \) -delete
|
||||
|
||||
find panko -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} +
|
||||
|
||||
sed -i '/setup_requires/d; /install_requires/d; /dependency_links/d' setup.py
|
||||
|
||||
%py_req_cleanup
|
||||
|
||||
|
||||
%build
|
||||
|
||||
# Generate config file
|
||||
PYTHONPATH=. oslo-config-generator --config-file=etc/panko/panko-config-generator.conf
|
||||
|
||||
%{py3_build}
|
||||
|
||||
# Programmatically update defaults in sample config
|
||||
# which is installed at /etc/panko/panko.conf
|
||||
# TODO: Make this more robust
|
||||
# Note it only edits the first occurrence, so assumes a section ordering in sample
|
||||
# and also doesn't support multi-valued variables.
|
||||
while read name eq value; do
|
||||
test "$name" && test "$value" || continue
|
||||
sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" etc/panko/panko.conf
|
||||
done < %{SOURCE1}
|
||||
|
||||
|
||||
%install
|
||||
|
||||
%{py3_install}
|
||||
|
||||
mkdir -p %{buildroot}/%{_sysconfdir}/sysconfig/
|
||||
mkdir -p %{buildroot}/%{_sysconfdir}/panko/
|
||||
mkdir -p %{buildroot}/%{_var}/log/%{name}
|
||||
|
||||
install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/panko/panko-dist.conf
|
||||
install -p -D -m 640 etc/panko/panko.conf %{buildroot}%{_sysconfdir}/panko/panko.conf
|
||||
install -p -D -m 640 etc/panko/api_paste.ini %{buildroot}%{_sysconfdir}/panko/api_paste.ini
|
||||
|
||||
#TODO(prad): build the docs at run time, once the we get rid of postgres setup dependency
|
||||
|
||||
# Setup directories
|
||||
install -d -m 755 %{buildroot}%{_sharedstatedir}/panko
|
||||
install -d -m 755 %{buildroot}%{_sharedstatedir}/panko/tmp
|
||||
install -d -m 755 %{buildroot}%{_localstatedir}/log/panko
|
||||
|
||||
# Install logrotate
|
||||
install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
|
||||
|
||||
# Remove all of the conf files that are included in the buildroot/usr/etc dir since we installed them above
|
||||
rm -f %{buildroot}/usr/etc/panko/*
|
||||
|
||||
%pre common
|
||||
getent group panko >/dev/null || groupadd -r panko
|
||||
if ! getent passwd panko >/dev/null; then
|
||||
useradd -r -g panko -G panko,nobody -d %{_sharedstatedir}/panko -s /sbin/nologin -c "OpenStack panko Daemons" panko
|
||||
fi
|
||||
# Add ceilometer user to panko group to read panko config
|
||||
usermod -a -G panko ceilometer
|
||||
exit 0
|
||||
|
||||
|
||||
%files -n python3-panko
|
||||
%{python3_sitelib}/panko
|
||||
%{python3_sitelib}/panko-*.egg-info
|
||||
|
||||
%exclude %{python3_sitelib}/panko/tests
|
||||
|
||||
%files -n python3-panko-tests
|
||||
%license LICENSE
|
||||
%{python3_sitelib}/panko/tests
|
||||
|
||||
%files api
|
||||
%defattr(-,root,root,-)
|
||||
%{_bindir}/panko-api
|
||||
%{_bindir}/panko-dbsync
|
||||
%{_bindir}/panko-expirer
|
||||
|
||||
%files common
|
||||
%dir %{_sysconfdir}/panko
|
||||
%attr(-, root, panko) %{_datadir}/panko/panko-dist.conf
|
||||
%config(noreplace) %attr(-, root, panko) %{_sysconfdir}/panko/panko.conf
|
||||
%config(noreplace) %attr(-, root, panko) %{_sysconfdir}/panko/api_paste.ini
|
||||
%config(noreplace) %attr(-, root, panko) %{_sysconfdir}/logrotate.d/%{name}
|
||||
%dir %attr(0755, panko, root) %{_localstatedir}/log/panko
|
||||
|
||||
%defattr(-, panko, panko, -)
|
||||
%dir %{_sharedstatedir}/panko
|
||||
%dir %{_sharedstatedir}/panko/tmp
|
||||
|
||||
%changelog
|
||||
* Fri Nov 05 2021 wangxiyuan <wangxiyuan1007@gmail.com> - 7.1.0-1
|
||||
BIN
panko-7.1.0.tar.gz
Normal file
BIN
panko-7.1.0.tar.gz
Normal file
Binary file not shown.
4
panko-dist.conf
Normal file
4
panko-dist.conf
Normal file
@ -0,0 +1,4 @@
|
||||
[DEFAULT]
|
||||
log_dir = /var/log/panko
|
||||
use_stderr = False
|
||||
|
||||
9
panko.logrotate
Normal file
9
panko.logrotate
Normal file
@ -0,0 +1,9 @@
|
||||
compress
|
||||
|
||||
/var/log/panko/*.log {
|
||||
weekly
|
||||
rotate 4
|
||||
missingok
|
||||
compress
|
||||
minsize 100k
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user