Initial spec for swift
Change-Id: I25e26de4d73185cf7e59452db44fe3a6a1123256
This commit is contained in:

committed by
Ralf Haferkamp

parent
c0f0c4fd67
commit
6818a5461c
14
openstack/swift/openstack-swift-account-auditor.service
Normal file
14
openstack/swift/openstack-swift-account-auditor.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Account Auditor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-account-auditor /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-account-reaper.service
Normal file
14
openstack/swift/openstack-swift-account-reaper.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Account Reaper
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-account-reaper /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-account-replicator.service
Normal file
14
openstack/swift/openstack-swift-account-replicator.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Account Replicator
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-account-replicator /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-account.service
Normal file
14
openstack/swift/openstack-swift-account.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Account Server
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-account-server /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-container-auditor.service
Normal file
14
openstack/swift/openstack-swift-container-auditor.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Container Auditor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-container-auditor /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-container-replicator.service
Normal file
14
openstack/swift/openstack-swift-container-replicator.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Container Replicator
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-container-replicator /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-container-sync.service
Normal file
14
openstack/swift/openstack-swift-container-sync.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Container Sync
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-container-sync /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-container-updater.service
Normal file
14
openstack/swift/openstack-swift-container-updater.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Container Updater
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-container-updater /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-container.service
Normal file
14
openstack/swift/openstack-swift-container.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Container Service
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-container-server /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-object-auditor.service
Normal file
14
openstack/swift/openstack-swift-object-auditor.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Object Auditor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-object-auditor /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-object-expirer.service
Normal file
14
openstack/swift/openstack-swift-object-expirer.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Object Expirer
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-object-expirer /etc/swift/object-expirer.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-object-reconstructor.service
Normal file
14
openstack/swift/openstack-swift-object-reconstructor.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Object Reconstructor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-object-reconstructor /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-object-replicator.service
Normal file
14
openstack/swift/openstack-swift-object-replicator.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Object Replicator
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-object-replicator /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-object-updater.service
Normal file
14
openstack/swift/openstack-swift-object-updater.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Object Updater
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-object-updater /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-object.service
Normal file
14
openstack/swift/openstack-swift-object.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Object Server
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-object-server /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
14
openstack/swift/openstack-swift-proxy.service
Normal file
14
openstack/swift/openstack-swift-proxy.service
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Swift Proxy Server
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
Group=swift
|
||||||
|
WorkingDirectory=/var/lib/swift
|
||||||
|
PrivateTmp=yes
|
||||||
|
ExecStart=/usr/bin/swift-proxy-server /etc/swift/proxy-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
13
openstack/swift/openstack-swift.logrotate
Normal file
13
openstack/swift/openstack-swift.logrotate
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
/var/log/swift/*.log {
|
||||||
|
weekly
|
||||||
|
dateext
|
||||||
|
rotate 10
|
||||||
|
size 1M
|
||||||
|
missingok
|
||||||
|
compress
|
||||||
|
notifempty
|
||||||
|
copytruncate
|
||||||
|
su swift swift
|
||||||
|
minsize 100k
|
||||||
|
sharedscripts
|
||||||
|
}
|
5
openstack/swift/openstack-swift.tmpfiles
Normal file
5
openstack/swift/openstack-swift.tmpfiles
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
d /run/swift 0700 swift swift -
|
||||||
|
d /run/swift/account-server 0700 swift swift -
|
||||||
|
d /run/swift/container-server 0700 swift swift -
|
||||||
|
d /run/swift/object-server 0700 swift swift -
|
||||||
|
d /run/swift/proxy-server 0700 swift swift -
|
417
openstack/swift/swift.spec.j2
Normal file
417
openstack/swift/swift.spec.j2
Normal file
@@ -0,0 +1,417 @@
|
|||||||
|
{% set pypi_name = 'swift' %}
|
||||||
|
{% set source = fetch_source('https://tarballs.openstack.org/swift/swift-master.tar.gz') %}
|
||||||
|
{% set upstream_version = upstream_version() %}
|
||||||
|
{% set rpm_release = '1' %}
|
||||||
|
%define groupname {{ pypi_name }}
|
||||||
|
%define username {{ pypi_name }}
|
||||||
|
Name: {{ py2name() }}
|
||||||
|
Version: {{ py2rpmversion() }}
|
||||||
|
Release: {{ py2rpmrelease() }}
|
||||||
|
Summary: OpenStack Storage (Swift)
|
||||||
|
License: {{ license('Apache-2.0') }}
|
||||||
|
URL: http://launchpad.net/swift
|
||||||
|
Source0: {{ source|basename }}
|
||||||
|
Source1: %{name}-account.service
|
||||||
|
Source2: %{name}-account-auditor.service
|
||||||
|
Source3: %{name}-account-reaper.service
|
||||||
|
Source4: %{name}-account-replicator.service
|
||||||
|
Source5: %{name}-container.service
|
||||||
|
Source6: %{name}-container-auditor.service
|
||||||
|
Source7: %{name}-container-replicator.service
|
||||||
|
Source8: %{name}-container-updater.service
|
||||||
|
Source9: %{name}-container-sync.service
|
||||||
|
Source10: %{name}-object.service
|
||||||
|
Source11: %{name}-object-replicator.service
|
||||||
|
Source12: %{name}-object-expirer.service
|
||||||
|
Source13: %{name}-object-updater.service
|
||||||
|
Source14: %{name}-object-auditor.service
|
||||||
|
Source15: %{name}-object-reconstructor.service
|
||||||
|
Source16: %{name}-proxy.service
|
||||||
|
Source20: %{name}.logrotate
|
||||||
|
Source30: %{name}.tmpfiles
|
||||||
|
BuildRequires: crudini
|
||||||
|
BuildRequires: fdupes
|
||||||
|
BuildRequires: openstack-macros
|
||||||
|
BuildRequires: {{ py3('pbr') }}
|
||||||
|
BuildRequires: {{ py3('setuptools') }}
|
||||||
|
Requires: logrotate
|
||||||
|
Requires: python3-{{ pypi_name }} = %{version}-%{release}
|
||||||
|
Requires: rsync
|
||||||
|
BuildArch: noarch
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
BuildRequires: systemd-rpm-macros
|
||||||
|
Requires(pre): pwdutils
|
||||||
|
%{?systemd_requires}
|
||||||
|
%else
|
||||||
|
BuildRequires: systemd
|
||||||
|
Requires(post): systemd
|
||||||
|
Requires(postun): systemd
|
||||||
|
Requires(pre): shadow-utils
|
||||||
|
Requires(preun): systemd
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
OpenStack Object Storage (swift) aggregates commodity servers to work
|
||||||
|
together in clusters for reliable, redundant, and large-scale storage
|
||||||
|
of static objects. Objects are written to multiple hardware devices in
|
||||||
|
the data center, with the OpenStack software responsible for ensuring
|
||||||
|
data replication and integrity across the cluster. Storage clusters can
|
||||||
|
scale horizontally by adding new nodes, which are automatically
|
||||||
|
configured. Should a node fail, OpenStack works to replicate its
|
||||||
|
content from other active nodes. Because OpenStack uses software logic
|
||||||
|
to ensure data replication and distribution across different devices,
|
||||||
|
inexpensive commodity hard drives and servers can be used in lieu of
|
||||||
|
more expensive equipment.
|
||||||
|
|
||||||
|
%package -n python3-{{ pypi_name }}
|
||||||
|
Summary: OpenStack Storage (Swift) - Python module
|
||||||
|
Requires: {{ py3('PasteDeploy') }}
|
||||||
|
Requires: {{ py3('PyECLib') }}
|
||||||
|
Requires: {{ py3('cryptography') }}
|
||||||
|
Requires: {{ py3('dnspython') }}
|
||||||
|
Requires: {{ py3('eventlet') }}
|
||||||
|
Requires: {{ py3('greenlet') }}
|
||||||
|
Requires: {{ py3('netifaces') }}
|
||||||
|
Requires: {{ py3('pbr') }}
|
||||||
|
Requires: {{ py3('simplejson') }}
|
||||||
|
Requires: {{ py3('six') }}
|
||||||
|
Requires: {{ py3('python-swiftclient') }}
|
||||||
|
Requires: {{ py3('xattr') }}
|
||||||
|
|
||||||
|
%description -n python3-swift
|
||||||
|
This package contains the core Python module of OpenStack Swift.
|
||||||
|
|
||||||
|
%package account
|
||||||
|
Summary: OpenStack Storage (Swift) - Account Server
|
||||||
|
Group: Productivity/Clustering/Computing
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description account
|
||||||
|
OpenStack Object Storage (swift) aggregates commodity servers to work
|
||||||
|
together in clusters for reliable, redundant, and large-scale storage
|
||||||
|
of static objects.
|
||||||
|
|
||||||
|
This package contains the openstack-swift account server.
|
||||||
|
|
||||||
|
%package container
|
||||||
|
Summary: OpenStack Storage (Swift) - Container Server
|
||||||
|
Group: Productivity/Clustering/Computing
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description container
|
||||||
|
OpenStack Object Storage (swift) aggregates commodity servers to work
|
||||||
|
together in clusters for reliable, redundant, and large-scale storage
|
||||||
|
of static objects.
|
||||||
|
|
||||||
|
This package contains the openstack-swift container server.
|
||||||
|
|
||||||
|
%package object
|
||||||
|
Summary: OpenStack Storage (Swift) - Object Server
|
||||||
|
Group: Productivity/Clustering/Computing
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description object
|
||||||
|
OpenStack Object Storage (swift) aggregates commodity servers to work
|
||||||
|
together in clusters for reliable, redundant, and large-scale storage
|
||||||
|
of static objects.
|
||||||
|
|
||||||
|
This package contains the openstack-swift object server.
|
||||||
|
|
||||||
|
%package proxy
|
||||||
|
Summary: OpenStack Storage (Swift) - Proxy Server
|
||||||
|
Group: Productivity/Clustering/Computing
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
Requires: memcached
|
||||||
|
|
||||||
|
%description proxy
|
||||||
|
OpenStack Object Storage (swift) aggregates commodity servers to work
|
||||||
|
together in clusters for reliable, redundant, and large-scale storage
|
||||||
|
of static objects.
|
||||||
|
|
||||||
|
This package contains the openstack-swift proxy server.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n {{ pypi_name }}-{{ upstream_version }}
|
||||||
|
%py_req_cleanup
|
||||||
|
|
||||||
|
%build
|
||||||
|
%{py3_build}
|
||||||
|
|
||||||
|
%install
|
||||||
|
%{py3_install}
|
||||||
|
|
||||||
|
### directories
|
||||||
|
install -d -m 750 %{buildroot}%{_localstatedir}/cache/{{ pypi_name }}
|
||||||
|
install -d -m 750 %{buildroot}%{_localstatedir}/lib/{{ pypi_name }}
|
||||||
|
install -d -m 750 %{buildroot}%{_localstatedir}/log/{{ pypi_name }}
|
||||||
|
install -D -m 644 %{SOURCE30} %{buildroot}/%_tmpfilesdir/%{name}.conf
|
||||||
|
|
||||||
|
# systemd unit files
|
||||||
|
mkdir -p %{buildroot}%{_unitdir}
|
||||||
|
install -p -D -m 444 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}-account.service
|
||||||
|
install -p -D -m 444 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}-account-auditor.service
|
||||||
|
install -p -D -m 444 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}-account-reaper.service
|
||||||
|
install -p -D -m 444 %{SOURCE4} %{buildroot}%{_unitdir}/%{name}-account-replicator.service
|
||||||
|
install -p -D -m 444 %{SOURCE5} %{buildroot}%{_unitdir}/%{name}-container.service
|
||||||
|
install -p -D -m 444 %{SOURCE6} %{buildroot}%{_unitdir}/%{name}-container-auditor.service
|
||||||
|
install -p -D -m 444 %{SOURCE7} %{buildroot}%{_unitdir}/%{name}-container-replicator.service
|
||||||
|
install -p -D -m 444 %{SOURCE8} %{buildroot}%{_unitdir}/%{name}-container-updater.service
|
||||||
|
install -p -D -m 444 %{SOURCE9} %{buildroot}%{_unitdir}/%{name}-container-sync.service
|
||||||
|
install -p -D -m 444 %{SOURCE10} %{buildroot}%{_unitdir}/%{name}-object.service
|
||||||
|
install -p -D -m 444 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}-object-replicator.service
|
||||||
|
install -p -D -m 444 %{SOURCE12} %{buildroot}%{_unitdir}/%{name}-object-expirer.service
|
||||||
|
install -p -D -m 444 %{SOURCE13} %{buildroot}%{_unitdir}/%{name}-object-updater.service
|
||||||
|
install -p -D -m 444 %{SOURCE14} %{buildroot}%{_unitdir}/%{name}-object-auditor.service
|
||||||
|
install -p -D -m 444 %{SOURCE15} %{buildroot}%{_unitdir}/%{name}-object-reconstructor.service
|
||||||
|
install -p -D -m 444 %{SOURCE16} %{buildroot}%{_unitdir}/%{name}-proxy.service
|
||||||
|
|
||||||
|
# install symlinks on SUSE
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
mkdir -p %{buildroot}%{_sbindir}
|
||||||
|
for server in account account-auditor account-reaper account-replicator container container-auditor container-replicator container-updater container-sync object object-replicator object-expirer object-updater object-auditor object-reconstructor proxy; do
|
||||||
|
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}-$server
|
||||||
|
done
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Install manpages
|
||||||
|
install -d %{buildroot}%{_mandir}/man{1,5}/
|
||||||
|
install -m 0644 doc/manpages/*.1 %{buildroot}%{_mandir}/man1/
|
||||||
|
install -m 0644 doc/manpages/*.5 %{buildroot}%{_mandir}/man5/
|
||||||
|
|
||||||
|
# Remove tests
|
||||||
|
rm -fr %{buildroot}/%{python3_sitelib}/test
|
||||||
|
|
||||||
|
# Misc other
|
||||||
|
install -d -m 755 %{buildroot}%{_sysconfdir}/{{ pypi_name }}
|
||||||
|
for c in account-server container-server dispersion object-expirer object-server proxy-server swift; do
|
||||||
|
install -m 644 etc/$c.conf-sample %{buildroot}%{_sysconfdir}/swift/$c.conf
|
||||||
|
done
|
||||||
|
for c in account-server container-server object-expirer object-server proxy-server ; do
|
||||||
|
crudini --set %{buildroot}%{_sysconfdir}/swift/$c.conf DEFAULT user %{username}
|
||||||
|
done
|
||||||
|
crudini --set %{buildroot}%{_sysconfdir}/swift/dispersion.conf dispersion auth_user %{username}
|
||||||
|
# NOTE(saschpe): dispersion checks for localhost:8080/auth... by default...
|
||||||
|
crudini --set %{buildroot}%{_sysconfdir}/swift/proxy-server.conf DEFAULT bind_port 8080
|
||||||
|
|
||||||
|
install -p -D -m 644 %{SOURCE20} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
|
||||||
|
|
||||||
|
%fdupes %{buildroot}%{python3_sitelib}/swift
|
||||||
|
|
||||||
|
%pre
|
||||||
|
%openstack_pre_user_group_create %{username} %{groupname}
|
||||||
|
|
||||||
|
%post
|
||||||
|
%tmpfiles_create %{_tmpfilesdir}/%{name}.conf
|
||||||
|
|
||||||
|
%post account
|
||||||
|
%systemd_post %{name}-account.service
|
||||||
|
%systemd_post %{name}-account-auditor.service
|
||||||
|
%systemd_post %{name}-account-reaper.service
|
||||||
|
%systemd_post %{name}-account-replicator.service
|
||||||
|
|
||||||
|
%preun account
|
||||||
|
%systemd_preun %{name}-account.service
|
||||||
|
%systemd_preun %{name}-account-auditor.service
|
||||||
|
%systemd_preun %{name}-account-reaper.service
|
||||||
|
%systemd_preun %{name}-account-replicator.service
|
||||||
|
|
||||||
|
|
||||||
|
%postun account
|
||||||
|
%systemd_postun_with_restart %{name}-account.service
|
||||||
|
%systemd_postun_with_restart %{name}-account-auditor.service
|
||||||
|
%systemd_postun_with_restart %{name}-account-reaper.service
|
||||||
|
%systemd_postun_with_restart %{name}-account-replicator.service
|
||||||
|
|
||||||
|
|
||||||
|
%post container
|
||||||
|
%systemd_post %{name}-container.service
|
||||||
|
%systemd_post %{name}-container-auditor.service
|
||||||
|
%systemd_post %{name}-container-reaper.service
|
||||||
|
%systemd_post %{name}-container-replicator.service
|
||||||
|
%systemd_post %{name}-container-sync.service
|
||||||
|
|
||||||
|
%preun container
|
||||||
|
%systemd_preun %{name}-container.service
|
||||||
|
%systemd_preun %{name}-container-auditor.service
|
||||||
|
%systemd_preun %{name}-container-reaper.service
|
||||||
|
%systemd_preun %{name}-container-replicator.service
|
||||||
|
%systemd_preun %{name}-container-sync.service
|
||||||
|
|
||||||
|
%postun container
|
||||||
|
%systemd_postun_with_restart %{name}-container.service
|
||||||
|
%systemd_postun_with_restart %{name}-container-auditor.service
|
||||||
|
%systemd_postun_with_restart %{name}-container-reaper.service
|
||||||
|
%systemd_postun_with_restart %{name}-container-replicator.service
|
||||||
|
%systemd_postun_with_restart %{name}-container-sync.service
|
||||||
|
|
||||||
|
%post object
|
||||||
|
%systemd_post %{name}-object.service
|
||||||
|
%systemd_post %{name}-object-replicator.service
|
||||||
|
%systemd_post %{name}-object-expirer.service
|
||||||
|
%systemd_post %{name}-object-updater.service
|
||||||
|
%systemd_post %{name}-object-auditor.service
|
||||||
|
%systemd_post %{name}-object-reconstructor.service
|
||||||
|
|
||||||
|
%preun object
|
||||||
|
%systemd_preun %{name}-object.service
|
||||||
|
%systemd_preun %{name}-object-replicator.service
|
||||||
|
%systemd_preun %{name}-object-expirer.service
|
||||||
|
%systemd_preun %{name}-object-updater.service
|
||||||
|
%systemd_preun %{name}-object-auditor.service
|
||||||
|
%systemd_preun %{name}-object-reconstructor.service
|
||||||
|
|
||||||
|
%postun object
|
||||||
|
%systemd_postun_with_restart %{name}-object.service
|
||||||
|
%systemd_postun_with_restart %{name}-object-replicator.service
|
||||||
|
%systemd_postun_with_restart %{name}-object-expirer.service
|
||||||
|
%systemd_postun_with_restart %{name}-object-updater.service
|
||||||
|
%systemd_postun_with_restart %{name}-object-auditor.service
|
||||||
|
%systemd_postun_with_restart %{name}-object-reconstructor.service
|
||||||
|
|
||||||
|
%post proxy
|
||||||
|
%systemd_post %{name}-proxy.service
|
||||||
|
|
||||||
|
%preun proxy
|
||||||
|
%systemd_preun %{name}-proxy.service
|
||||||
|
|
||||||
|
%postun proxy
|
||||||
|
%systemd_postun_with_restart %{name}-proxy.service
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license LICENSE
|
||||||
|
%doc README.rst
|
||||||
|
%_tmpfilesdir/%{name}.conf
|
||||||
|
%dir %attr(0750, %{username}, %{groupname}) %{_localstatedir}/log/{{ pypi_name }}
|
||||||
|
%dir %attr(0755, %{username}, %{groupname}) %{_sysconfdir}/{{ pypi_name }}
|
||||||
|
%dir %attr(0750, %{username}, %{groupname}) %{_localstatedir}/lib/{{ pypi_name }}
|
||||||
|
%dir %attr(0750, %{username}, %{groupname}) %{_localstatedir}/cache/{{ pypi_name }}
|
||||||
|
%{_bindir}/swift-account-audit
|
||||||
|
%{_bindir}/swift-dispersion-populate
|
||||||
|
%{_bindir}/swift-dispersion-report
|
||||||
|
%{_bindir}/swift-drive-audit
|
||||||
|
%{_bindir}/swift-form-signature
|
||||||
|
%{_bindir}/swift-get-nodes
|
||||||
|
%{_bindir}/swift-init
|
||||||
|
%{_bindir}/swift-config
|
||||||
|
%{_bindir}/swift-oldies
|
||||||
|
%{_bindir}/swift-orphans
|
||||||
|
%{_bindir}/swift-recon
|
||||||
|
%{_bindir}/swift-recon-cron
|
||||||
|
%{_bindir}/swift-ring-builder
|
||||||
|
%{_bindir}/swift-ring-builder-analyzer
|
||||||
|
%{_bindir}/swift-ring-composer
|
||||||
|
%{_bindir}/swift-manage-shard-ranges
|
||||||
|
%{_mandir}/man1/swift-account-audit.1*
|
||||||
|
%{_mandir}/man1/swift-config.1*
|
||||||
|
%{_mandir}/man1/swift-dispersion-populate.1*
|
||||||
|
%{_mandir}/man1/swift-dispersion-report.1*
|
||||||
|
%{_mandir}/man1/swift-drive-audit.1*
|
||||||
|
%{_mandir}/man1/swift-form-signature.1*
|
||||||
|
%{_mandir}/man1/swift-get-nodes.1*
|
||||||
|
%{_mandir}/man1/swift-oldies.1*
|
||||||
|
%{_mandir}/man1/swift-init.1*
|
||||||
|
%{_mandir}/man1/swift-orphans.1*
|
||||||
|
%{_mandir}/man1/swift-recon.1*
|
||||||
|
%{_mandir}/man1/swift-recon-cron.1*
|
||||||
|
%{_mandir}/man1/swift-ring-builder.1*
|
||||||
|
%{_mandir}/man1/swift-ring-builder-analyzer.1*
|
||||||
|
%{_mandir}/man1/swift-ring-composer.1*
|
||||||
|
%{_mandir}/man5/dispersion.conf.5*
|
||||||
|
%{_mandir}/man5/swift.conf.5*
|
||||||
|
%config(noreplace) %{_sysconfdir}/swift/swift.conf
|
||||||
|
%config(noreplace) %attr(0400, %{username}, %{groupname}) %{_sysconfdir}/swift/dispersion.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
|
||||||
|
|
||||||
|
%files -n python3-{{ pypi_name }}
|
||||||
|
%license LICENSE
|
||||||
|
%{python3_sitelib}/swift
|
||||||
|
%{python3_sitelib}/swift-2.*.egg-info
|
||||||
|
|
||||||
|
%files account
|
||||||
|
%license LICENSE
|
||||||
|
%{_unitdir}/%{name}-account*.service
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
%{_sbindir}/rc%{name}-account*
|
||||||
|
%endif
|
||||||
|
%config(noreplace) %{_sysconfdir}/swift/account-server.conf
|
||||||
|
%{_bindir}/swift-account-auditor
|
||||||
|
%{_bindir}/swift-account-info
|
||||||
|
%{_bindir}/swift-account-reaper
|
||||||
|
%{_bindir}/swift-account-replicator
|
||||||
|
%{_bindir}/swift-account-server
|
||||||
|
%{_mandir}/man1/swift-account-auditor.1*
|
||||||
|
%{_mandir}/man1/swift-account-info.1*
|
||||||
|
%{_mandir}/man1/swift-account-reaper.1*
|
||||||
|
%{_mandir}/man1/swift-account-replicator.1*
|
||||||
|
%{_mandir}/man1/swift-account-server.1*
|
||||||
|
%{_mandir}/man5/account-server.conf.5*
|
||||||
|
|
||||||
|
%files container
|
||||||
|
%license LICENSE
|
||||||
|
%{_unitdir}/%{name}-container*.service
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
%{_sbindir}/rc%{name}-container*
|
||||||
|
%endif
|
||||||
|
%config(noreplace) %{_sysconfdir}/swift/container-server.conf
|
||||||
|
%{_bindir}/swift-container-auditor
|
||||||
|
%{_bindir}/swift-container-deleter
|
||||||
|
%{_bindir}/swift-container-reconciler
|
||||||
|
%{_bindir}/swift-container-info
|
||||||
|
%{_bindir}/swift-container-server
|
||||||
|
%{_bindir}/swift-container-replicator
|
||||||
|
%{_bindir}/swift-container-updater
|
||||||
|
%{_bindir}/swift-container-sync
|
||||||
|
%{_bindir}/swift-container-sharder
|
||||||
|
%{_bindir}/swift-reconciler-enqueue
|
||||||
|
%{_mandir}/man1/swift-container-auditor.1*
|
||||||
|
%{_mandir}/man1/swift-container-info.1*
|
||||||
|
%{_mandir}/man1/swift-container-server.1*
|
||||||
|
%{_mandir}/man1/swift-container-sync.1*
|
||||||
|
%{_mandir}/man1/swift-container-reconciler.1*
|
||||||
|
%{_mandir}/man1/swift-container-replicator.1*
|
||||||
|
%{_mandir}/man1/swift-container-updater.1*
|
||||||
|
%{_mandir}/man1/swift-reconciler-enqueue.1*
|
||||||
|
%{_mandir}/man5/container-server.conf.5*
|
||||||
|
%{_mandir}/man5/container-sync-realms.conf.5*
|
||||||
|
%{_mandir}/man5/container-reconciler.conf.5*
|
||||||
|
|
||||||
|
%files object
|
||||||
|
%license LICENSE
|
||||||
|
%doc etc/rsyncd.conf-sample
|
||||||
|
%{_unitdir}/%{name}-object*.service
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
%{_sbindir}/rc%{name}-object*
|
||||||
|
%endif
|
||||||
|
%config(noreplace) %{_sysconfdir}/swift/object-server.conf
|
||||||
|
%{_sysconfdir}/swift/object-expirer.conf
|
||||||
|
%{_bindir}/swift-object-auditor
|
||||||
|
%{_bindir}/swift-object-expirer
|
||||||
|
%{_bindir}/swift-object-info
|
||||||
|
%{_bindir}/swift-object-reconstructor
|
||||||
|
%{_bindir}/swift-object-replicator
|
||||||
|
%{_bindir}/swift-object-relinker
|
||||||
|
%{_bindir}/swift-object-server
|
||||||
|
%{_bindir}/swift-object-updater
|
||||||
|
%{_mandir}/man1/swift-object-auditor.1*
|
||||||
|
%{_mandir}/man1/swift-object-expirer.1*
|
||||||
|
%{_mandir}/man1/swift-object-info.1*
|
||||||
|
%{_mandir}/man1/swift-object-reconstructor.1*
|
||||||
|
%{_mandir}/man1/swift-object-replicator.1*
|
||||||
|
%{_mandir}/man1/swift-object-server.1*
|
||||||
|
%{_mandir}/man1/swift-object-updater.1*
|
||||||
|
%{_mandir}/man1/swift-object-relinker.1*
|
||||||
|
%{_mandir}/man5/object-expirer.conf.5*
|
||||||
|
%{_mandir}/man5/object-server.conf.5*
|
||||||
|
|
||||||
|
%files proxy
|
||||||
|
%license LICENSE
|
||||||
|
%{_unitdir}/%{name}-proxy.service
|
||||||
|
%if 0%{?suse_version}
|
||||||
|
%{_sbindir}/rc%{name}-proxy
|
||||||
|
%endif
|
||||||
|
%config(noreplace) %{_sysconfdir}/swift/proxy-server.conf
|
||||||
|
%{_bindir}/swift-proxy-server
|
||||||
|
%{_mandir}/man1/swift-proxy-server.1*
|
||||||
|
%{_mandir}/man5/proxy-server.conf.5*
|
||||||
|
|
||||||
|
%changelog
|
Reference in New Issue
Block a user