!1 openstack-swift: add spec and source package
From: @li-mingzhou Reviewed-by: Signed-off-by:
This commit is contained in:
commit
f8c77780e2
24
account-server.conf
Normal file
24
account-server.conf
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
[DEFAULT]
|
||||||
|
|
||||||
|
# Make sure your swift-ring-builder arguments match the bind_ip and bind_port.
|
||||||
|
# You almost certainly do not want to listen just on loopback unless testing.
|
||||||
|
# However, you want to keep port 6202 if SElinux is enabled.
|
||||||
|
bind_ip = 127.0.0.1
|
||||||
|
bind_port = 6202
|
||||||
|
|
||||||
|
workers = 2
|
||||||
|
|
||||||
|
[pipeline:main]
|
||||||
|
pipeline = recon account-server
|
||||||
|
|
||||||
|
[filter:recon]
|
||||||
|
use = egg:swift#recon
|
||||||
|
|
||||||
|
[app:account-server]
|
||||||
|
use = egg:swift#account
|
||||||
|
|
||||||
|
[account-replicator]
|
||||||
|
|
||||||
|
[account-auditor]
|
||||||
|
|
||||||
|
[account-reaper]
|
||||||
52
container-reconciler.conf
Normal file
52
container-reconciler.conf
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
[DEFAULT]
|
||||||
|
# swift_dir = /etc/swift
|
||||||
|
# user = swift
|
||||||
|
# You can specify default log routing here if you want:
|
||||||
|
# log_name = swift
|
||||||
|
# log_facility = LOG_LOCAL0
|
||||||
|
# log_level = INFO
|
||||||
|
# log_address = /dev/log
|
||||||
|
#
|
||||||
|
# comma separated list of functions to call to setup custom log handlers.
|
||||||
|
# functions get passed: conf, name, log_to_console, log_route, fmt, logger,
|
||||||
|
# adapted_logger
|
||||||
|
# log_custom_handlers =
|
||||||
|
#
|
||||||
|
# If set, log_udp_host will override log_address
|
||||||
|
# log_udp_host =
|
||||||
|
# log_udp_port = 514
|
||||||
|
#
|
||||||
|
# You can enable StatsD logging here:
|
||||||
|
# log_statsd_host = localhost
|
||||||
|
# log_statsd_port = 8125
|
||||||
|
# log_statsd_default_sample_rate = 1.0
|
||||||
|
# log_statsd_sample_rate_factor = 1.0
|
||||||
|
# log_statsd_metric_prefix =
|
||||||
|
|
||||||
|
[container-reconciler]
|
||||||
|
# The reconciler will re-attempt reconciliation if the source object is not
|
||||||
|
# available up to reclaim_age seconds before it gives up and deletes the entry
|
||||||
|
# in the queue.
|
||||||
|
# reclaim_age = 604800
|
||||||
|
# The cycle time of the daemon
|
||||||
|
# interval = 300
|
||||||
|
# Server errors from requests will be retried by default
|
||||||
|
# request_tries = 3
|
||||||
|
|
||||||
|
[pipeline:main]
|
||||||
|
pipeline = catch_errors proxy-logging cache proxy-server
|
||||||
|
|
||||||
|
[app:proxy-server]
|
||||||
|
use = egg:swift#proxy
|
||||||
|
# See proxy-server.conf-sample for options
|
||||||
|
|
||||||
|
[filter:cache]
|
||||||
|
use = egg:swift#memcache
|
||||||
|
# See proxy-server.conf-sample for options
|
||||||
|
|
||||||
|
[filter:proxy-logging]
|
||||||
|
use = egg:swift#proxy_logging
|
||||||
|
|
||||||
|
[filter:catch_errors]
|
||||||
|
use = egg:swift#catch_errors
|
||||||
|
# See proxy-server.conf-sample for options
|
||||||
29
container-server.conf
Normal file
29
container-server.conf
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
[DEFAULT]
|
||||||
|
|
||||||
|
# Make sure your swift-ring-builder arguments match the bind_ip and bind_port.
|
||||||
|
# You almost certainly do not want to listen just on loopback unless testing.
|
||||||
|
# However, you want to keep port 6201 if SElinux is enabled.
|
||||||
|
bind_ip = 127.0.0.1
|
||||||
|
bind_port = 6201
|
||||||
|
|
||||||
|
workers = 2
|
||||||
|
|
||||||
|
[pipeline:main]
|
||||||
|
pipeline = recon container-server
|
||||||
|
|
||||||
|
[filter:recon]
|
||||||
|
use = egg:swift#recon
|
||||||
|
|
||||||
|
[app:container-server]
|
||||||
|
use = egg:swift#container
|
||||||
|
|
||||||
|
[container-replicator]
|
||||||
|
|
||||||
|
[container-updater]
|
||||||
|
|
||||||
|
[container-auditor]
|
||||||
|
|
||||||
|
[container-sync]
|
||||||
|
|
||||||
|
[container-sharder]
|
||||||
|
|
||||||
47
internal-client.conf
Normal file
47
internal-client.conf
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
[DEFAULT]
|
||||||
|
# swift_dir = /etc/swift
|
||||||
|
# user = swift
|
||||||
|
# You can specify default log routing here if you want:
|
||||||
|
# log_name = swift
|
||||||
|
# log_facility = LOG_LOCAL0
|
||||||
|
# log_level = INFO
|
||||||
|
# log_address = /dev/log
|
||||||
|
#
|
||||||
|
# comma separated list of functions to call to setup custom log handlers.
|
||||||
|
# functions get passed: conf, name, log_to_console, log_route, fmt, logger,
|
||||||
|
# adapted_logger
|
||||||
|
# log_custom_handlers =
|
||||||
|
#
|
||||||
|
# If set, log_udp_host will override log_address
|
||||||
|
# log_udp_host =
|
||||||
|
# log_udp_port = 514
|
||||||
|
#
|
||||||
|
# You can enable StatsD logging here:
|
||||||
|
# log_statsd_host =
|
||||||
|
# log_statsd_port = 8125
|
||||||
|
# log_statsd_default_sample_rate = 1.0
|
||||||
|
# log_statsd_sample_rate_factor = 1.0
|
||||||
|
# log_statsd_metric_prefix =
|
||||||
|
|
||||||
|
[pipeline:main]
|
||||||
|
pipeline = catch_errors proxy-logging cache symlink proxy-server
|
||||||
|
|
||||||
|
[app:proxy-server]
|
||||||
|
use = egg:swift#proxy
|
||||||
|
account_autocreate = true
|
||||||
|
# See proxy-server.conf-sample for options
|
||||||
|
|
||||||
|
[filter:symlink]
|
||||||
|
use = egg:swift#symlink
|
||||||
|
# See proxy-server.conf-sample for options
|
||||||
|
|
||||||
|
[filter:cache]
|
||||||
|
use = egg:swift#memcache
|
||||||
|
# See proxy-server.conf-sample for options
|
||||||
|
|
||||||
|
[filter:proxy-logging]
|
||||||
|
use = egg:swift#proxy_logging
|
||||||
|
|
||||||
|
[filter:catch_errors]
|
||||||
|
use = egg:swift#catch_errors
|
||||||
|
# See proxy-server.conf-sample for options
|
||||||
20
object-expirer.conf
Normal file
20
object-expirer.conf
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
[DEFAULT]
|
||||||
|
|
||||||
|
[object-expirer]
|
||||||
|
# auto_create_account_prefix = .
|
||||||
|
|
||||||
|
[pipeline:main]
|
||||||
|
pipeline = catch_errors proxy-logging cache proxy-server
|
||||||
|
|
||||||
|
[app:proxy-server]
|
||||||
|
use = egg:swift#proxy
|
||||||
|
|
||||||
|
[filter:cache]
|
||||||
|
use = egg:swift#memcache
|
||||||
|
memcache_servers = 127.0.0.1:11211
|
||||||
|
|
||||||
|
[filter:catch_errors]
|
||||||
|
use = egg:swift#catch_errors
|
||||||
|
|
||||||
|
[filter:proxy-logging]
|
||||||
|
use = egg:swift#poxy_logging
|
||||||
26
object-server.conf
Normal file
26
object-server.conf
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
[DEFAULT]
|
||||||
|
|
||||||
|
# Make sure your swift-ring-builder arguments match the bind_ip and bind_port.
|
||||||
|
# You almost certainly do not want to listen just on loopback unless testing.
|
||||||
|
# However, you want to keep port 6200 if SElinux is enabled.
|
||||||
|
bind_ip = 127.0.0.1
|
||||||
|
bind_port = 6200
|
||||||
|
|
||||||
|
workers = 3
|
||||||
|
|
||||||
|
[pipeline:main]
|
||||||
|
pipeline = recon object-server
|
||||||
|
|
||||||
|
[filter:recon]
|
||||||
|
use = egg:swift#recon
|
||||||
|
|
||||||
|
[app:object-server]
|
||||||
|
use = egg:swift#object
|
||||||
|
|
||||||
|
[object-replicator]
|
||||||
|
|
||||||
|
[object-updater]
|
||||||
|
|
||||||
|
[object-auditor]
|
||||||
|
|
||||||
|
[object-reconstructor]
|
||||||
12
openstack-swift-account-auditor.service
Normal file
12
openstack-swift-account-auditor.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# After network.target just because.
|
||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Auditor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-auditor /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-account-auditor@.service
Normal file
11
openstack-swift-account-auditor@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Auditor instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-auditor /etc/swift/account-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-account-reaper.service
Normal file
11
openstack-swift-account-reaper.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Reaper
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-reaper /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-account-reaper@.service
Normal file
11
openstack-swift-account-reaper@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Reaper instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-reaper /etc/swift/account-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-account-replicator.service
Normal file
12
openstack-swift-account-replicator.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# After network.target just so replicator can talk to other nodes.
|
||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Replicator
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-replicator /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-account-replicator@.service
Normal file
11
openstack-swift-account-replicator@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Replicator instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-replicator /etc/swift/account-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-account.service
Normal file
12
openstack-swift-account.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Server
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-server /etc/swift/account-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-account@.service
Normal file
12
openstack-swift-account@.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Account Server instance %I
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-account-server /etc/swift/account-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-auditor.service
Normal file
11
openstack-swift-container-auditor.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Auditor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-auditor /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-auditor@.service
Normal file
11
openstack-swift-container-auditor@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Auditor instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-auditor /etc/swift/container-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-reconciler.service
Normal file
11
openstack-swift-container-reconciler.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Reconciler
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-reconciler /etc/swift/container-reconciler.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-container-replicator.service
Normal file
12
openstack-swift-container-replicator.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# After network.target just so replicator can talk to other nodes.
|
||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Replicator
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-replicator /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-replicator@.service
Normal file
11
openstack-swift-container-replicator@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Replicator instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-replicator /etc/swift/container-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-sharder.service
Normal file
11
openstack-swift-container-sharder.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Sharder
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-sharder /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-sync.service
Normal file
11
openstack-swift-container-sync.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Sync
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-sync /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-container-sync@.service
Normal file
12
openstack-swift-container-sync@.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container sync instance %I
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-sync /etc/swift/container-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-updater.service
Normal file
11
openstack-swift-container-updater.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Updater
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-updater /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-container-updater@.service
Normal file
11
openstack-swift-container-updater@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Updater instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-updater /etc/swift/container-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-container.service
Normal file
12
openstack-swift-container.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Server
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-server /etc/swift/container-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-container@.service
Normal file
12
openstack-swift-container@.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Container Server instance %I
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-container-server /etc/swift/container-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-object-auditor.service
Normal file
12
openstack-swift-object-auditor.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# After network.target just because.
|
||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Auditor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-auditor /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-object-auditor@.service
Normal file
11
openstack-swift-object-auditor@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Auditor instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-auditor /etc/swift/object-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-object-expirer.service
Normal file
11
openstack-swift-object-expirer.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Expirer
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-expirer /etc/swift/object-expirer.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-object-reconstructor.service
Normal file
12
openstack-swift-object-reconstructor.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# After network.target just so replicator can talk to other nodes.
|
||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Reconstructor
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-reconstructor /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-object-reconstructor@.service
Normal file
11
openstack-swift-object-reconstructor@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Reconstructor instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-reconstructor /etc/swift/object-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-object-replicator.service
Normal file
12
openstack-swift-object-replicator.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# After network.target just so replicator can talk to other nodes.
|
||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Replicator
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-replicator /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-object-replicator@.service
Normal file
11
openstack-swift-object-replicator@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Replicator instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-replicator /etc/swift/object-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-object-updater.service
Normal file
11
openstack-swift-object-updater.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Updater
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-updater /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
11
openstack-swift-object-updater@.service
Normal file
11
openstack-swift-object-updater@.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Updater instance %I
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-updater /etc/swift/object-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-object.service
Normal file
12
openstack-swift-object.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Server
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-server /etc/swift/object-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-object@.service
Normal file
12
openstack-swift-object@.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Object Server instance %I
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-object-server /etc/swift/object-server/%i.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
12
openstack-swift-proxy.service
Normal file
12
openstack-swift-proxy.service
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenStack Object Storage (swift) - Proxy Server
|
||||||
|
Wants=network-online.target
|
||||||
|
After=syslog.target network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=swift
|
||||||
|
ExecStart=/usr/bin/swift-proxy-server /etc/swift/proxy-server.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
8
openstack-swift.logrotate
Normal file
8
openstack-swift.logrotate
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
/var/log/swift/swift.log
|
||||||
|
{
|
||||||
|
missingok
|
||||||
|
compress
|
||||||
|
postrotate
|
||||||
|
/bin/kill -HUP `cat /var/run/syslogd.pid 2>/dev/null` 2>/dev/null || true
|
||||||
|
endscript
|
||||||
|
}
|
||||||
5
openstack-swift.rsyslog
Normal file
5
openstack-swift.rsyslog
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# LOCAL2 is what Swift gets in RHOS and RDO if installed with Packstack (also,
|
||||||
|
# in docs). The breakout action prevents logging into /var/log/messages,
|
||||||
|
# bz#997983.
|
||||||
|
local2.* /var/log/swift/swift.log
|
||||||
|
& stop
|
||||||
569
openstack-swift.spec
Normal file
569
openstack-swift.spec
Normal file
@ -0,0 +1,569 @@
|
|||||||
|
%{!?upstream_version: %global upstream_version %{version}%{?milestone}}
|
||||||
|
%global with_doc 1
|
||||||
|
%global rhosp 0
|
||||||
|
|
||||||
|
%global common_desc \
|
||||||
|
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.
|
||||||
|
|
||||||
|
Name: openstack-swift
|
||||||
|
Version: 2.27.0
|
||||||
|
Release: 1
|
||||||
|
Summary: OpenStack Object Storage
|
||||||
|
License: ASL 2.0
|
||||||
|
URL: https://docs.openstack.org/swift/latest/
|
||||||
|
Source0: https://tarballs.openstack.org/swift/swift-%{upstream_version}.tar.gz
|
||||||
|
|
||||||
|
Source2: %{name}-account.service
|
||||||
|
Source21: %{name}-account@.service
|
||||||
|
Source22: account-server.conf
|
||||||
|
Source23: %{name}-account-replicator.service
|
||||||
|
Source24: %{name}-account-replicator@.service
|
||||||
|
Source25: %{name}-account-auditor.service
|
||||||
|
Source26: %{name}-account-auditor@.service
|
||||||
|
Source27: %{name}-account-reaper.service
|
||||||
|
Source28: %{name}-account-reaper@.service
|
||||||
|
Source4: %{name}-container.service
|
||||||
|
Source41: %{name}-container@.service
|
||||||
|
Source42: container-server.conf
|
||||||
|
Source43: %{name}-container-replicator.service
|
||||||
|
Source44: %{name}-container-replicator@.service
|
||||||
|
Source45: %{name}-container-auditor.service
|
||||||
|
Source46: %{name}-container-auditor@.service
|
||||||
|
Source47: %{name}-container-updater.service
|
||||||
|
Source48: %{name}-container-updater@.service
|
||||||
|
Source49: %{name}-container-sharder.service
|
||||||
|
# we seriously need to think about dropping the enumerated units - no sharder@
|
||||||
|
Source5: %{name}-object.service
|
||||||
|
Source51: %{name}-object@.service
|
||||||
|
Source52: object-server.conf
|
||||||
|
Source53: %{name}-object-replicator.service
|
||||||
|
Source54: %{name}-object-replicator@.service
|
||||||
|
Source55: %{name}-object-auditor.service
|
||||||
|
Source56: %{name}-object-auditor@.service
|
||||||
|
Source57: %{name}-object-updater.service
|
||||||
|
Source58: %{name}-object-updater@.service
|
||||||
|
Source59: %{name}-object-expirer.service
|
||||||
|
Source63: %{name}-container-reconciler.service
|
||||||
|
Source6: %{name}-proxy.service
|
||||||
|
Source61: proxy-server.conf
|
||||||
|
Source62: object-expirer.conf
|
||||||
|
Source64: container-reconciler.conf
|
||||||
|
Source20: %{name}.tmpfs
|
||||||
|
Source7: swift.conf
|
||||||
|
Source71: %{name}.rsyslog
|
||||||
|
Source72: %{name}.logrotate
|
||||||
|
Source73: %{name}-object-reconstructor.service
|
||||||
|
Source74: %{name}-object-reconstructor@.service
|
||||||
|
Source75: %{name}-container-sync.service
|
||||||
|
Source76: %{name}-container-sync@.service
|
||||||
|
Source77: internal-client.conf
|
||||||
|
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
BuildRequires: openstack-macros
|
||||||
|
BuildRequires: python3-devel
|
||||||
|
BuildRequires: python3-setuptools
|
||||||
|
BuildRequires: python3-pbr
|
||||||
|
BuildRequires: git-core
|
||||||
|
BuildRequires: /usr/bin/pathfix.py
|
||||||
|
|
||||||
|
BuildRequires: systemd
|
||||||
|
Obsoletes: openstack-swift-auth <= 1.4.0
|
||||||
|
|
||||||
|
# Required to compile translation files
|
||||||
|
BuildRequires: python3-babel
|
||||||
|
# Required to build docs: doxygen invokes actual code and its imports
|
||||||
|
BuildRequires: python3-keystoneclient
|
||||||
|
|
||||||
|
Requires: python3-swift = %{version}-%{release}
|
||||||
|
|
||||||
|
%description
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
%package -n python3-swift
|
||||||
|
Summary: Python libraries for the OpenStack Object Storage (Swift)
|
||||||
|
|
||||||
|
Provides: openstack-swift = %{version}-%{release}
|
||||||
|
Obsoletes: openstack-swift < %{version}-%{release}
|
||||||
|
%{?python_provide:%python_provide python3-swift}
|
||||||
|
|
||||||
|
Requires: python3-eventlet >= 0.25.0
|
||||||
|
Requires: python3-greenlet >= 0.3.2
|
||||||
|
Requires: python3-pyeclib >= 1.3.1
|
||||||
|
Requires: python3-cryptography >= 2.0.2
|
||||||
|
Requires: python3-oslo-config >= 2:5.1.0
|
||||||
|
Requires: python3-castellan >= 0.7.0
|
||||||
|
Requires: python3-requests >= 2.14.2
|
||||||
|
Requires: python3-six >= 1.10.0
|
||||||
|
|
||||||
|
Requires: python3-paste-deploy >= 1.3.3
|
||||||
|
Requires: python3-xattr >= 0.4
|
||||||
|
Requires: python3-netifaces >= 0.8
|
||||||
|
Requires: python3-lxml >= 3.4.1
|
||||||
|
|
||||||
|
%{?systemd_ordering}
|
||||||
|
|
||||||
|
Requires(pre): shadow-utils
|
||||||
|
|
||||||
|
%description -n python3-swift
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
This package contains the %{name} Python library.
|
||||||
|
|
||||||
|
%package account
|
||||||
|
Summary: Account services for Swift
|
||||||
|
|
||||||
|
Requires: python3-swift = %{version}-%{release}
|
||||||
|
Requires: rsync >= 3.0
|
||||||
|
|
||||||
|
%description account
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
This package contains the %{name} account server.
|
||||||
|
|
||||||
|
%package container
|
||||||
|
Summary: Container services for Swift
|
||||||
|
|
||||||
|
Requires: python3-swift = %{version}-%{release}
|
||||||
|
Requires: rsync >= 3.0
|
||||||
|
|
||||||
|
%description container
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
This package contains the %{name} container server.
|
||||||
|
|
||||||
|
%package object
|
||||||
|
Summary: Object services for Swift
|
||||||
|
|
||||||
|
Requires: python3-swift = %{version}-%{release}
|
||||||
|
Requires: rsync >= 3.0
|
||||||
|
|
||||||
|
%description object
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
This package contains the %{name} object server.
|
||||||
|
|
||||||
|
%package proxy
|
||||||
|
Summary: A proxy server for Swift
|
||||||
|
|
||||||
|
Requires: python3-swift = %{version}-%{release}
|
||||||
|
Requires: python3-keystoneclient
|
||||||
|
Requires: python3-keystonemiddleware
|
||||||
|
Requires: python3-ceilometermiddleware
|
||||||
|
|
||||||
|
%description proxy
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
This package contains the %{name} proxy server.
|
||||||
|
|
||||||
|
%package -n python3-swift-tests
|
||||||
|
Summary: Swift tests
|
||||||
|
Requires: python3-swift = %{version}-%{release}
|
||||||
|
%{?python_provide:%python_provide python3-swift-tests}
|
||||||
|
Provides: python-swift-tests = %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n python3-swift-tests
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
This package contains the %{name} test files.
|
||||||
|
|
||||||
|
%if 0%{?with_doc}
|
||||||
|
%package doc
|
||||||
|
Summary: Documentation for %{name}
|
||||||
|
|
||||||
|
BuildRequires: python3-sphinx >= 1.0
|
||||||
|
BuildRequires: python3-openstackdocstheme
|
||||||
|
BuildRequires: python3-sphinxcontrib-svg2pdfconverter
|
||||||
|
# Required for generating docs (otherwise py-modindex.html is missing)
|
||||||
|
BuildRequires: python3-eventlet
|
||||||
|
BuildRequires: python3-pyeclib
|
||||||
|
|
||||||
|
BuildRequires: python3-netifaces
|
||||||
|
BuildRequires: python3-paste-deploy
|
||||||
|
BuildRequires: python3-xattr
|
||||||
|
BuildRequires: python3-lxml
|
||||||
|
|
||||||
|
%description doc
|
||||||
|
%{common_desc}
|
||||||
|
|
||||||
|
This package contains documentation files for %{name}.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%prep
|
||||||
|
# Required for tarball sources verification
|
||||||
|
|
||||||
|
%autosetup -n swift-%{upstream_version} -S git
|
||||||
|
|
||||||
|
# Let RPM handle the dependencies
|
||||||
|
%py_req_cleanup
|
||||||
|
|
||||||
|
%build
|
||||||
|
%{py3_build}
|
||||||
|
# Generate i18n files
|
||||||
|
%{__python3} setup.py compile_catalog -d build/lib/swift/locale
|
||||||
|
|
||||||
|
%if 0%{?with_doc}
|
||||||
|
# Fails unless we create the build directory
|
||||||
|
mkdir -p doc/build
|
||||||
|
# Build docs
|
||||||
|
export PYTHONPATH=.
|
||||||
|
|
||||||
|
sphinx-build -b html doc/source doc/build/html
|
||||||
|
# Fix hidden-file-or-dir warning
|
||||||
|
rm -rf doc/build/html/.{doctrees,buildinfo}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%install
|
||||||
|
%{py3_install}
|
||||||
|
# systemd units
|
||||||
|
install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}-account.service
|
||||||
|
install -p -D -m 644 %{SOURCE21} %{buildroot}%{_unitdir}/%{name}-account@.service
|
||||||
|
install -p -D -m 644 %{SOURCE23} %{buildroot}%{_unitdir}/%{name}-account-replicator.service
|
||||||
|
install -p -D -m 644 %{SOURCE24} %{buildroot}%{_unitdir}/%{name}-account-replicator@.service
|
||||||
|
install -p -D -m 644 %{SOURCE25} %{buildroot}%{_unitdir}/%{name}-account-auditor.service
|
||||||
|
install -p -D -m 644 %{SOURCE26} %{buildroot}%{_unitdir}/%{name}-account-auditor@.service
|
||||||
|
install -p -D -m 644 %{SOURCE27} %{buildroot}%{_unitdir}/%{name}-account-reaper.service
|
||||||
|
install -p -D -m 644 %{SOURCE28} %{buildroot}%{_unitdir}/%{name}-account-reaper@.service
|
||||||
|
install -p -D -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/%{name}-container.service
|
||||||
|
install -p -D -m 644 %{SOURCE41} %{buildroot}%{_unitdir}/%{name}-container@.service
|
||||||
|
install -p -D -m 644 %{SOURCE43} %{buildroot}%{_unitdir}/%{name}-container-replicator.service
|
||||||
|
install -p -D -m 644 %{SOURCE44} %{buildroot}%{_unitdir}/%{name}-container-replicator@.service
|
||||||
|
install -p -D -m 644 %{SOURCE45} %{buildroot}%{_unitdir}/%{name}-container-auditor.service
|
||||||
|
install -p -D -m 644 %{SOURCE46} %{buildroot}%{_unitdir}/%{name}-container-auditor@.service
|
||||||
|
install -p -D -m 644 %{SOURCE47} %{buildroot}%{_unitdir}/%{name}-container-updater.service
|
||||||
|
install -p -D -m 644 %{SOURCE48} %{buildroot}%{_unitdir}/%{name}-container-updater@.service
|
||||||
|
install -p -D -m 644 %{SOURCE49} %{buildroot}%{_unitdir}/%{name}-container-sharder.service
|
||||||
|
install -p -D -m 644 %{SOURCE5} %{buildroot}%{_unitdir}/%{name}-object.service
|
||||||
|
install -p -D -m 644 %{SOURCE51} %{buildroot}%{_unitdir}/%{name}-object@.service
|
||||||
|
install -p -D -m 644 %{SOURCE53} %{buildroot}%{_unitdir}/%{name}-object-replicator.service
|
||||||
|
install -p -D -m 644 %{SOURCE54} %{buildroot}%{_unitdir}/%{name}-object-replicator@.service
|
||||||
|
install -p -D -m 644 %{SOURCE55} %{buildroot}%{_unitdir}/%{name}-object-auditor.service
|
||||||
|
install -p -D -m 644 %{SOURCE56} %{buildroot}%{_unitdir}/%{name}-object-auditor@.service
|
||||||
|
install -p -D -m 644 %{SOURCE57} %{buildroot}%{_unitdir}/%{name}-object-updater.service
|
||||||
|
install -p -D -m 644 %{SOURCE58} %{buildroot}%{_unitdir}/%{name}-object-updater@.service
|
||||||
|
install -p -D -m 644 %{SOURCE59} %{buildroot}%{_unitdir}/%{name}-object-expirer.service
|
||||||
|
install -p -D -m 644 %{SOURCE63} %{buildroot}%{_unitdir}/%{name}-container-reconciler.service
|
||||||
|
install -p -D -m 644 %{SOURCE6} %{buildroot}%{_unitdir}/%{name}-proxy.service
|
||||||
|
install -p -D -m 644 %{SOURCE73} %{buildroot}%{_unitdir}/%{name}-object-reconstructor.service
|
||||||
|
install -p -D -m 644 %{SOURCE74} %{buildroot}%{_unitdir}/%{name}-object-reconstructor@.service
|
||||||
|
install -p -D -m 644 %{SOURCE75} %{buildroot}%{_unitdir}/%{name}-container-sync.service
|
||||||
|
install -p -D -m 644 %{SOURCE76} %{buildroot}%{_unitdir}/%{name}-container-sync@.service
|
||||||
|
# Misc other
|
||||||
|
install -d -m 755 %{buildroot}%{_sysconfdir}/swift
|
||||||
|
install -d -m 755 %{buildroot}%{_sysconfdir}/swift/account-server
|
||||||
|
install -d -m 755 %{buildroot}%{_sysconfdir}/swift/container-server
|
||||||
|
install -d -m 755 %{buildroot}%{_sysconfdir}/swift/object-server
|
||||||
|
install -d -m 755 %{buildroot}%{_sysconfdir}/swift/proxy-server
|
||||||
|
# Config files
|
||||||
|
install -p -D -m 660 %{SOURCE22} %{buildroot}%{_sysconfdir}/swift/account-server.conf
|
||||||
|
install -p -D -m 660 %{SOURCE42} %{buildroot}%{_sysconfdir}/swift/container-server.conf
|
||||||
|
install -p -D -m 660 %{SOURCE52} %{buildroot}%{_sysconfdir}/swift/object-server.conf
|
||||||
|
install -p -D -m 660 %{SOURCE61} %{buildroot}%{_sysconfdir}/swift/proxy-server.conf
|
||||||
|
install -p -D -m 660 %{SOURCE62} %{buildroot}%{_sysconfdir}/swift/object-expirer.conf
|
||||||
|
install -p -D -m 660 %{SOURCE64} %{buildroot}%{_sysconfdir}/swift/container-reconciler.conf
|
||||||
|
install -p -D -m 660 %{SOURCE7} %{buildroot}%{_sysconfdir}/swift/swift.conf
|
||||||
|
install -p -D -m 660 %{SOURCE77} %{buildroot}%{_sysconfdir}/swift/internal-client.conf
|
||||||
|
# Install pid directory
|
||||||
|
install -d -m 755 %{buildroot}%{_localstatedir}/run/swift
|
||||||
|
install -d -m 755 %{buildroot}%{_localstatedir}/run/swift/account-server
|
||||||
|
install -d -m 755 %{buildroot}%{_localstatedir}/run/swift/container-server
|
||||||
|
install -d -m 755 %{buildroot}%{_localstatedir}/run/swift/object-server
|
||||||
|
install -d -m 755 %{buildroot}%{_localstatedir}/run/swift/proxy-server
|
||||||
|
# syslog
|
||||||
|
install -d -m 755 %{buildroot}%{_localstatedir}/log/swift
|
||||||
|
install -p -D -m 644 %{SOURCE71} %{buildroot}%{_sysconfdir}/rsyslog.d/openstack-swift.conf
|
||||||
|
install -p -D -m 644 %{SOURCE72} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-swift
|
||||||
|
# Swift run directories
|
||||||
|
install -p -D -m 644 %{SOURCE20} %{buildroot}%{_tmpfilesdir}/openstack-swift.conf
|
||||||
|
# Install recon directory
|
||||||
|
install -d -m 755 %{buildroot}%{_localstatedir}/cache/swift
|
||||||
|
# Install home directory
|
||||||
|
install -d -m 755 %{buildroot}%{_sharedstatedir}/swift
|
||||||
|
# man pages
|
||||||
|
install -d -m 755 %{buildroot}%{_mandir}/man5
|
||||||
|
for m in doc/manpages/*.5; do
|
||||||
|
install -p -m 0644 $m %{buildroot}%{_mandir}/man5
|
||||||
|
done
|
||||||
|
install -d -m 755 %{buildroot}%{_mandir}/man1
|
||||||
|
for m in doc/manpages/*.1; do
|
||||||
|
install -p -m 0644 $m %{buildroot}%{_mandir}/man1
|
||||||
|
done
|
||||||
|
|
||||||
|
# tests
|
||||||
|
mkdir -p %{buildroot}%{_datadir}/swift/test
|
||||||
|
cp -r test %{buildroot}%{python3_sitelib}/swift/test
|
||||||
|
|
||||||
|
# Remove unnecessary shebangs
|
||||||
|
sed -i '1{/^#!/d}' %{buildroot}%{python3_sitelib}/swift/test/probe/test_object_partpower_increase.py
|
||||||
|
sed -i '1{/^#!/d}' %{buildroot}%{python3_sitelib}/swift/test/functional/test_symlink.py
|
||||||
|
# Remove executable bit to avoid rpmlint failures
|
||||||
|
chmod -x %{buildroot}%{python3_sitelib}/swift/test/probe/test_object_partpower_increase.py
|
||||||
|
chmod -x %{buildroot}%{python3_sitelib}/swift/test/functional/test_symlink.py
|
||||||
|
|
||||||
|
# Install i18n files
|
||||||
|
install -d -m 755 %{buildroot}%{_datadir}
|
||||||
|
rm -f %{buildroot}%{python3_sitelib}/swift/locale/*/LC_*/swift*po
|
||||||
|
rm -f %{buildroot}%{python3_sitelib}/swift/locale/*pot
|
||||||
|
mv %{buildroot}%{python3_sitelib}/swift/locale %{buildroot}%{_datadir}/locale
|
||||||
|
|
||||||
|
# Fix shebangs for Python 3-only distros
|
||||||
|
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{python3_sitelib}/swift/test
|
||||||
|
|
||||||
|
# Find language files
|
||||||
|
%find_lang swift --all-name
|
||||||
|
|
||||||
|
%clean
|
||||||
|
rm -rf %{buildroot}
|
||||||
|
|
||||||
|
%pre -n python3-swift
|
||||||
|
getent group swift >/dev/null || groupadd -r swift -g 160
|
||||||
|
getent passwd swift >/dev/null || \
|
||||||
|
useradd -r -g swift -u 160 -d %{_sharedstatedir}/swift -s /sbin/nologin \
|
||||||
|
-c "OpenStack Swift Daemons" swift
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
%post account
|
||||||
|
%systemd_post %{name}-account.service
|
||||||
|
%systemd_post %{name}-account-replicator.service
|
||||||
|
%systemd_post %{name}-account-auditor.service
|
||||||
|
%systemd_post %{name}-account-reaper.service
|
||||||
|
|
||||||
|
%preun account
|
||||||
|
%systemd_preun %{name}-account.service
|
||||||
|
%systemd_preun %{name}-account-replicator.service
|
||||||
|
%systemd_preun %{name}-account-auditor.service
|
||||||
|
%systemd_preun %{name}-account-reaper.service
|
||||||
|
|
||||||
|
%postun account
|
||||||
|
%systemd_postun %{name}-account.service
|
||||||
|
%systemd_postun %{name}-account-replicator.service
|
||||||
|
%systemd_postun %{name}-account-auditor.service
|
||||||
|
%systemd_postun %{name}-account-reaper.service
|
||||||
|
|
||||||
|
%post container
|
||||||
|
%systemd_post %{name}-container.service
|
||||||
|
%systemd_post %{name}-container-replicator.service
|
||||||
|
%systemd_post %{name}-container-auditor.service
|
||||||
|
%systemd_post %{name}-container-updater.service
|
||||||
|
%systemd_post %{name}-container-sync.service
|
||||||
|
|
||||||
|
%preun container
|
||||||
|
%systemd_preun %{name}-container.service
|
||||||
|
%systemd_preun %{name}-container-replicator.service
|
||||||
|
%systemd_preun %{name}-container-auditor.service
|
||||||
|
%systemd_preun %{name}-container-updater.service
|
||||||
|
%systemd_preun %{name}-container-sync.service
|
||||||
|
|
||||||
|
%postun container
|
||||||
|
%systemd_postun %{name}-container.service
|
||||||
|
%systemd_postun %{name}-container-replicator.service
|
||||||
|
%systemd_postun %{name}-container-auditor.service
|
||||||
|
%systemd_postun %{name}-container-updater.service
|
||||||
|
%systemd_postun %{name}-container-sync.service
|
||||||
|
|
||||||
|
%post object
|
||||||
|
%systemd_post %{name}-object.service
|
||||||
|
%systemd_post %{name}-object-replicator.service
|
||||||
|
%systemd_post %{name}-object-reconstructor.service
|
||||||
|
%systemd_post %{name}-object-auditor.service
|
||||||
|
%systemd_post %{name}-object-updater.service
|
||||||
|
|
||||||
|
%preun object
|
||||||
|
%systemd_preun %{name}-object.service
|
||||||
|
%systemd_preun %{name}-object-replicator.service
|
||||||
|
%systemd_preun %{name}-object-reconstructor.service
|
||||||
|
%systemd_preun %{name}-object-auditor.service
|
||||||
|
%systemd_preun %{name}-object-updater.service
|
||||||
|
|
||||||
|
%postun object
|
||||||
|
%systemd_postun %{name}-object.service
|
||||||
|
%systemd_postun %{name}-object-replicator.service
|
||||||
|
%systemd_postun %{name}-object-reconstructor.service
|
||||||
|
%systemd_postun %{name}-object-auditor.service
|
||||||
|
%systemd_postun %{name}-object-updater.service
|
||||||
|
|
||||||
|
%post proxy
|
||||||
|
%systemd_post %{name}-proxy.service
|
||||||
|
%systemd_post %{name}-object-expirer.service
|
||||||
|
|
||||||
|
%preun proxy
|
||||||
|
%systemd_preun %{name}-proxy.service
|
||||||
|
%systemd_preun %{name}-object-expirer.service
|
||||||
|
|
||||||
|
%postun proxy
|
||||||
|
%systemd_postun %{name}-proxy.service
|
||||||
|
%systemd_postun %{name}-object-expirer.service
|
||||||
|
|
||||||
|
%post -n python3-swift
|
||||||
|
/usr/bin/kill -HUP `cat /var/run/syslogd.pid 2>/dev/null` 2>/dev/null || :
|
||||||
|
|
||||||
|
%files -n python3-swift -f swift.lang
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%license LICENSE
|
||||||
|
%doc README.rst
|
||||||
|
%doc etc/*-sample
|
||||||
|
%{_mandir}/man5/dispersion.conf.5*
|
||||||
|
%{_mandir}/man1/swift-account-audit.1*
|
||||||
|
%{_mandir}/man1/swift-ring-builder-analyzer.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-init.1*
|
||||||
|
%{_mandir}/man1/swift-oldies.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-composer.1*
|
||||||
|
%{_mandir}/man5/swift.conf.5*
|
||||||
|
%{_mandir}/man5/container-sync-realms.conf.5*
|
||||||
|
%{_tmpfilesdir}/openstack-swift.conf
|
||||||
|
%dir %attr(0755, swift, swift)%{_sysconfdir}/swift
|
||||||
|
%config(noreplace) %attr(640, root, swift) %{_sysconfdir}/swift/swift.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/rsyslog.d/openstack-swift.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/logrotate.d/openstack-swift
|
||||||
|
%dir %{_localstatedir}/log/swift
|
||||||
|
%dir %attr(0755, swift, root) %{_localstatedir}/run/swift
|
||||||
|
%dir %attr(0755, swift, swift) %{_localstatedir}/cache/swift
|
||||||
|
%dir %attr(0755, swift, root) %{_sharedstatedir}/swift
|
||||||
|
%dir %{python3_sitelib}/swift
|
||||||
|
%{_bindir}/swift-account-audit
|
||||||
|
%{_bindir}/swift-config
|
||||||
|
%{_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-manage-shard-ranges
|
||||||
|
%{_bindir}/swift-oldies
|
||||||
|
%{_bindir}/swift-orphans
|
||||||
|
%{_bindir}/swift-recon
|
||||||
|
%{_bindir}/swift-recon-cron
|
||||||
|
%{_bindir}/swift-reconciler-enqueue
|
||||||
|
%{_bindir}/swift-ring-builder
|
||||||
|
%{_bindir}/swift-ring-builder-analyzer
|
||||||
|
%{_bindir}/swift-ring-composer
|
||||||
|
%{python3_sitelib}/swift
|
||||||
|
%{python3_sitelib}/swift-%{upstream_version}-py?.*.egg-info
|
||||||
|
%exclude %{python3_sitelib}/swift/test
|
||||||
|
|
||||||
|
%files -n python3-swift-tests
|
||||||
|
%license LICENSE
|
||||||
|
%{python3_sitelib}/swift/test
|
||||||
|
|
||||||
|
%files account
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_mandir}/man5/account-server.conf.5*
|
||||||
|
%{_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*
|
||||||
|
%{_unitdir}/%{name}-account*.service
|
||||||
|
%dir %{_sysconfdir}/swift/account-server
|
||||||
|
%config(noreplace) %attr(640, swift, swift) %{_sysconfdir}/swift/account-server.conf
|
||||||
|
%dir %attr(0755, swift, root) %{_localstatedir}/run/swift/account-server
|
||||||
|
%{_bindir}/swift-account-auditor
|
||||||
|
%{_bindir}/swift-account-info
|
||||||
|
%{_bindir}/swift-account-reaper
|
||||||
|
%{_bindir}/swift-account-replicator
|
||||||
|
%{_bindir}/swift-account-server
|
||||||
|
|
||||||
|
%files container
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_mandir}/man5/container-server.conf.5*
|
||||||
|
%{_mandir}/man1/swift-container-auditor.1*
|
||||||
|
%{_mandir}/man1/swift-container-info.1*
|
||||||
|
%{_mandir}/man1/swift-container-replicator.1*
|
||||||
|
%{_mandir}/man1/swift-container-server.1*
|
||||||
|
%{_mandir}/man1/swift-container-sync.1*
|
||||||
|
%{_mandir}/man1/swift-container-updater.1*
|
||||||
|
%{_unitdir}/%{name}-container*.service
|
||||||
|
%dir %{_sysconfdir}/swift/container-server
|
||||||
|
%config(noreplace) %attr(640, swift, swift) %{_sysconfdir}/swift/container-server.conf
|
||||||
|
%config(noreplace) %attr(640, swift, swift) %{_sysconfdir}/swift/internal-client.conf
|
||||||
|
%dir %attr(0755, swift, root) %{_localstatedir}/run/swift/container-server
|
||||||
|
%{_bindir}/swift-container-auditor
|
||||||
|
%{_bindir}/swift-container-deleter
|
||||||
|
%{_bindir}/swift-container-info
|
||||||
|
%{_bindir}/swift-container-server
|
||||||
|
%{_bindir}/swift-container-replicator
|
||||||
|
%{_bindir}/swift-container-updater
|
||||||
|
%{_bindir}/swift-container-sync
|
||||||
|
%{_bindir}/swift-container-sharder
|
||||||
|
|
||||||
|
%files object
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_mandir}/man5/object-server.conf.5*
|
||||||
|
%{_mandir}/man1/swift-object-auditor.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*
|
||||||
|
%{_unitdir}/%{name}-object.service
|
||||||
|
%{_unitdir}/%{name}-object@.service
|
||||||
|
%{_unitdir}/%{name}-object-auditor.service
|
||||||
|
%{_unitdir}/%{name}-object-auditor@.service
|
||||||
|
%{_unitdir}/%{name}-object-replicator.service
|
||||||
|
%{_unitdir}/%{name}-object-replicator@.service
|
||||||
|
%{_unitdir}/%{name}-object-reconstructor.service
|
||||||
|
%{_unitdir}/%{name}-object-reconstructor@.service
|
||||||
|
%{_unitdir}/%{name}-object-updater.service
|
||||||
|
%{_unitdir}/%{name}-object-updater@.service
|
||||||
|
%dir %{_sysconfdir}/swift/object-server
|
||||||
|
%config(noreplace) %attr(640, swift, swift) %{_sysconfdir}/swift/object-server.conf
|
||||||
|
%dir %attr(0755, swift, root) %{_localstatedir}/run/swift/object-server
|
||||||
|
%{_bindir}/swift-object-auditor
|
||||||
|
%{_bindir}/swift-object-info
|
||||||
|
%{_bindir}/swift-object-replicator
|
||||||
|
%{_bindir}/swift-object-relinker
|
||||||
|
%{_bindir}/swift-object-server
|
||||||
|
%{_bindir}/swift-object-updater
|
||||||
|
%{_bindir}/swift-object-reconstructor
|
||||||
|
|
||||||
|
%files proxy
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_mandir}/man5/object-expirer.conf.5*
|
||||||
|
%{_mandir}/man5/proxy-server.conf.5*
|
||||||
|
%{_mandir}/man5/container-reconciler.conf.5*
|
||||||
|
%{_mandir}/man1/swift-container-reconciler.1*
|
||||||
|
%{_mandir}/man1/swift-object-expirer.1*
|
||||||
|
%{_mandir}/man1/swift-proxy-server.1*
|
||||||
|
%{_mandir}/man1/swift-reconciler-enqueue.1*
|
||||||
|
%{_mandir}/man1/swift-object-relinker.1*
|
||||||
|
%{_unitdir}/%{name}-container-reconciler.service
|
||||||
|
%{_unitdir}/%{name}-object-expirer.service
|
||||||
|
%{_unitdir}/%{name}-proxy.service
|
||||||
|
%dir %{_sysconfdir}/swift/proxy-server
|
||||||
|
%config(noreplace) %attr(640, root, swift) %{_sysconfdir}/swift/container-reconciler.conf
|
||||||
|
%config(noreplace) %attr(640, root, swift) %{_sysconfdir}/swift/proxy-server.conf
|
||||||
|
%config(noreplace) %attr(640, root, swift) %{_sysconfdir}/swift/object-expirer.conf
|
||||||
|
%dir %attr(0755, swift, root) %{_localstatedir}/run/swift/proxy-server
|
||||||
|
%{_bindir}/swift-container-reconciler
|
||||||
|
%{_bindir}/swift-object-expirer
|
||||||
|
%{_bindir}/swift-proxy-server
|
||||||
|
|
||||||
|
%if 0%{?with_doc}
|
||||||
|
%files doc
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%doc doc/build/html
|
||||||
|
%license LICENSE
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Sat Jul 31 2021 OpenStack_SIG <openstack@openeuler.org> - 2.27.0-1
|
||||||
|
- openEuler build release
|
||||||
6
openstack-swift.tmpfs
Normal file
6
openstack-swift.tmpfs
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# swift needs a couple of directories in /run
|
||||||
|
d /run/swift 0755 swift root
|
||||||
|
d /run/swift/account-server 0755 swift root
|
||||||
|
d /run/swift/container-server 0755 swift root
|
||||||
|
d /run/swift/object-server 0755 swift root
|
||||||
|
d /run/swift/proxy-server 0755 swift root
|
||||||
95
proxy-server.conf
Normal file
95
proxy-server.conf
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
[DEFAULT]
|
||||||
|
bind_port = 8080
|
||||||
|
workers = 8
|
||||||
|
user = swift
|
||||||
|
|
||||||
|
[pipeline:main]
|
||||||
|
# Our traditional pipeline produces a cluster without any authentication,
|
||||||
|
# open to access by any client. This is almost always a very bad idea, and
|
||||||
|
# it's overridden by OSP Director, so it is likely to go away some time
|
||||||
|
# after Newton.
|
||||||
|
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk tempurl ratelimit copy container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server
|
||||||
|
|
||||||
|
# This sample pipeline uses tempauth and is used for SAIO dev work and
|
||||||
|
# testing. See below for a pipeline using keystone.
|
||||||
|
#pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk tempurl ratelimit tempauth copy container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server
|
||||||
|
|
||||||
|
# The following pipeline shows keystone integration. Comment out the one
|
||||||
|
# above and uncomment this one. Additional steps for integrating keystone are
|
||||||
|
# covered further below in the filter sections for authtoken and keystoneauth.
|
||||||
|
#pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk tempurl ratelimit authtoken keystone copy container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server
|
||||||
|
|
||||||
|
[app:proxy-server]
|
||||||
|
use = egg:swift#proxy
|
||||||
|
allow_account_management = true
|
||||||
|
account_autocreate = true
|
||||||
|
|
||||||
|
# This is a sample used for functional tests in SAIO. Contains well-known
|
||||||
|
# passwords.
|
||||||
|
#[filter:tempauth]
|
||||||
|
#use = egg:swift#tempauth
|
||||||
|
#user_admin_admin = admin .admin .reseller_admin
|
||||||
|
#user_test_tester = testing .admin
|
||||||
|
#user_test2_tester2 = testing2 .admin
|
||||||
|
#user_test_tester3 = testing3
|
||||||
|
#user_test5_tester5 = testing5 service
|
||||||
|
|
||||||
|
[filter:healthcheck]
|
||||||
|
use = egg:swift#healthcheck
|
||||||
|
|
||||||
|
[filter:cache]
|
||||||
|
use = egg:swift#memcache
|
||||||
|
memcache_servers = 127.0.0.1:11211
|
||||||
|
|
||||||
|
[filter:ratelimit]
|
||||||
|
use = egg:swift#ratelimit
|
||||||
|
|
||||||
|
[filter:catch_errors]
|
||||||
|
use = egg:swift#catch_errors
|
||||||
|
|
||||||
|
[filter:tempurl]
|
||||||
|
use = egg:swift#tempurl
|
||||||
|
|
||||||
|
[filter:proxy-logging]
|
||||||
|
use = egg:swift#proxy_logging
|
||||||
|
|
||||||
|
[filter:bulk]
|
||||||
|
use = egg:swift#bulk
|
||||||
|
|
||||||
|
[filter:slo]
|
||||||
|
use = egg:swift#slo
|
||||||
|
|
||||||
|
[filter:dlo]
|
||||||
|
use = egg:swift#dlo
|
||||||
|
|
||||||
|
[filter:container-quotas]
|
||||||
|
use = egg:swift#container_quotas
|
||||||
|
|
||||||
|
[filter:account-quotas]
|
||||||
|
use = egg:swift#account_quotas
|
||||||
|
|
||||||
|
[filter:gatekeeper]
|
||||||
|
use = egg:swift#gatekeeper
|
||||||
|
|
||||||
|
[filter:container_sync]
|
||||||
|
use = egg:swift#container_sync
|
||||||
|
|
||||||
|
[filter:versioned_writes]
|
||||||
|
use = egg:swift#versioned_writes
|
||||||
|
|
||||||
|
[filter:copy]
|
||||||
|
use = egg:swift#copy
|
||||||
|
object_post_as_copy = false
|
||||||
|
|
||||||
|
[filter:keystone]
|
||||||
|
use = egg:swift#keystoneauth
|
||||||
|
operator_roles = admin, SwiftOperator
|
||||||
|
cache = swift.cache
|
||||||
|
|
||||||
|
[filter:authtoken]
|
||||||
|
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
|
||||||
|
project_name = %SERVICE_TENANT_NAME%
|
||||||
|
username = %SERVICE_USER%
|
||||||
|
password = %SERVICE_PASSWORD%
|
||||||
|
auth_url = http://127.0.0.1:5000
|
||||||
|
signing_dir = /tmp/keystone-signing-swift
|
||||||
BIN
swift-2.27.0.tar.gz
Normal file
BIN
swift-2.27.0.tar.gz
Normal file
Binary file not shown.
2
swift.conf
Normal file
2
swift.conf
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
[swift-hash]
|
||||||
|
swift_hash_path_suffix = %SWIFT_HASH_PATH_SUFFIX%
|
||||||
Loading…
x
Reference in New Issue
Block a user