Move scripts for swift to docker_templates

Change-Id: Ia1bcc94fd58bbfec980bfacbd7acb885a17f9056
Partially-Implements: blueprint remove-docker-dir
This commit is contained in:
Steven Dake 2015-08-27 19:03:59 -07:00
parent eef32f0353
commit 26d0d8d2fb
40 changed files with 468 additions and 489 deletions

View File

@ -1 +0,0 @@
../../../../../docker/common/swift/swift-base/build-swift-ring.py

View File

@ -1 +0,0 @@
../../../../../docker/common/swift/swift-base/build-swift-ring.py

View File

@ -1,19 +0,0 @@
#!/bin/bash
if [[ -f /opt/kolla/swift/swift.conf ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/
chown swift: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/account.ring.gz" ]]; then
cp /opt/kolla/swift/account.ring.gz /etc/swift/account.ring.gz
chown swift: /etc/swift/account.ring.gz
chmod 0640 /etc/swift/account.ring.gz
fi
if [[ -f /opt/kolla/swift-account-server/account-server.conf ]]; then
cp /opt/kolla/swift-account-server/account-server.conf /etc/swift/
chown swift: /etc/swift/account-server.conf
chmod 0640 /etc/swift/account-server.conf
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-account-server"
ARGS="/etc/swift/account-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,93 +0,0 @@
#!/usr/bin/env python
# Copyright 2015 Paul Bourke
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""
This script is a simple wrapper used to create and rebalance Swift ring files.
"""
import argparse
import subprocess
import sys
def setup_args():
parser = argparse.ArgumentParser()
parser.add_argument("-f", "--ring-file",
required=True,
help="Path to ring file")
parser.add_argument("-p", "--part-power",
required=True,
help="Part power")
parser.add_argument("-r", "--num-replicas",
required=True,
help="Number of replicas")
parser.add_argument("-m", "--min-part-hours",
required=True,
help="Min part hours")
parser.add_argument("-H", "--hosts",
required=True,
help="Hosts in the ring, comma delimited")
parser.add_argument("-w", "--weights",
required=True,
help="Weight of each host, comma delimited")
parser.add_argument("-d", "--devices",
required=True,
help="Device on each host, comma delimited")
parser.add_argument("-z", "--zones",
required=True,
help="Zone of each host, comma delimited")
return parser.parse_args()
def run_cmd(cmd):
print(' '.join(cmd))
subprocess.call(cmd)
def run(args):
hosts = args.hosts.split(',')
weights = args.weights.split(',')
zones = args.zones.split(',')
devices = args.devices.split(',')
if not (len(hosts) == len(weights) == len(zones) == len(devices)):
print('Error: an equal amount of hosts, devices, weights, '
'and zones are required')
sys.exit(1)
run_cmd(['/usr/bin/swift-ring-builder',
args.ring_file,
'create',
args.part_power,
args.num_replicas,
args.min_part_hours])
for i in xrange(len(hosts)):
run_cmd(['/usr/bin/swift-ring-builder',
args.ring_file,
'add',
'z{}-{}/{}'.format(zones[i], hosts[i], devices[i]),
weights[i]])
run_cmd(['/usr/bin/swift-ring-builder', args.ring_file, 'rebalance'])
def main():
args = setup_args()
run(args)
if __name__ == "__main__":
main()

View File

@ -1,3 +0,0 @@
#!/bin/bash
chown -R swift: /srv/node

View File

@ -1,21 +0,0 @@
#!/bin/bash
OWNER="swift"
if [[ -f "/opt/kolla/swift/swift.conf" ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/swift.conf
chown ${OWNER}: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/container.ring.gz" ]]; then
cp /opt/kolla/swift/container.ring.gz /etc/swift/container.ring.gz
chown ${OWNER}: /etc/swift/container.ring.gz
chmod 0640 /etc/swift/container.ring.gz
fi
if [[ -f "/opt/kolla/swift-container-server/container-server.conf" ]]; then
cp /opt/kolla/swift-container-server/container-server.conf /etc/swift/container-server.conf
chown ${OWNER}: /etc/swift/container-server.conf
chmod 0640 /etc/swift/container-server.conf
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-container-server"
ARGS="/etc/swift/container-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,18 +0,0 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_SERVER="/opt/kolla/swift/object-server.conf"
TARGET_OBJECT_SERVER="/etc/swift/object-server.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_SERVER" ]]; then
cp $SOURCE_OBJECT_SERVER $TARGET_OBJECT_SERVER
chown ${OWNER}: $TARGET_OBJECT_SERVER
chmod 0640 $TARGET_OBJECT_SERVER
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-auditor"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,72 +0,0 @@
#!/bin/bash
. /opt/kolla/kolla-common.sh
check_required_vars \
SWIFT_CONTAINER_SVC_RING_DEVICES \
SWIFT_CONTAINER_SVC_RING_HOSTS \
SWIFT_CONTAINER_SVC_RING_MIN_PART_HOURS \
SWIFT_CONTAINER_SVC_RING_NAME \
SWIFT_CONTAINER_SVC_RING_PART_POWER \
SWIFT_CONTAINER_SVC_RING_REPLICAS \
SWIFT_CONTAINER_SVC_RING_WEIGHTS \
SWIFT_CONTAINER_SVC_RING_ZONES \
SWIFT_DIR \
SWIFT_OBJECT_SVC_BIND_IP \
SWIFT_OBJECT_SVC_BIND_PORT \
SWIFT_OBJECT_SVC_DEVICES \
SWIFT_OBJECT_SVC_MOUNT_CHECK \
SWIFT_OBJECT_SVC_PIPELINE \
SWIFT_OBJECT_SVC_RING_DEVICES \
SWIFT_OBJECT_SVC_RING_HOSTS \
SWIFT_OBJECT_SVC_RING_MIN_PART_HOURS \
SWIFT_OBJECT_SVC_RING_NAME \
SWIFT_OBJECT_SVC_RING_PART_POWER \
SWIFT_OBJECT_SVC_RING_REPLICAS \
SWIFT_OBJECT_SVC_RING_WEIGHTS \
SWIFT_OBJECT_SVC_RING_ZONES \
SWIFT_USER
cfg=/etc/swift/object-server.conf
crudini --set $cfg DEFAULT bind_ip "${SWIFT_OBJECT_SVC_BIND_IP}"
crudini --set $cfg DEFAULT bind_port "${SWIFT_OBJECT_SVC_BIND_PORT}"
crudini --set $cfg DEFAULT user "${SWIFT_USER}"
crudini --set $cfg DEFAULT swift_dir "${SWIFT_DIR}"
crudini --set $cfg DEFAULT devices "${SWIFT_OBJECT_SVC_DEVICES}"
crudini --set $cfg DEFAULT mount_check "${SWIFT_OBJECT_SVC_MOUNT_CHECK}"
crudini --set $cfg pipeline:main pipeline "${SWIFT_OBJECT_SVC_PIPELINE}"
# NOTE(pbourke): some services require a section in the conf, even if empty
crudini --set $cfg object-expirer
# Create swift user and group if they don't exist
id -u swift &>/dev/null || useradd --user-group swift
# Ensure proper ownership of the mount point directory structure
chown -R swift:swift /srv/node
# TODO(pbourke): does this need to be on a data vol?
mkdir -p /var/cache/swift
chown -R swift:swift /var/cache/swift
python /opt/kolla/build-swift-ring.py \
-f ${SWIFT_OBJECT_SVC_RING_NAME} \
-p ${SWIFT_OBJECT_SVC_RING_PART_POWER} \
-r ${SWIFT_OBJECT_SVC_RING_REPLICAS} \
-m ${SWIFT_OBJECT_SVC_RING_MIN_PART_HOURS} \
-H ${SWIFT_OBJECT_SVC_RING_HOSTS} \
-w ${SWIFT_OBJECT_SVC_RING_WEIGHTS} \
-d ${SWIFT_OBJECT_SVC_RING_DEVICES} \
-z ${SWIFT_OBJECT_SVC_RING_ZONES}
python /opt/kolla/build-swift-ring.py \
-f ${SWIFT_CONTAINER_SVC_RING_NAME} \
-p ${SWIFT_CONTAINER_SVC_RING_PART_POWER} \
-r ${SWIFT_CONTAINER_SVC_RING_REPLICAS} \
-m ${SWIFT_CONTAINER_SVC_RING_MIN_PART_HOURS} \
-H ${SWIFT_CONTAINER_SVC_RING_HOSTS} \
-w ${SWIFT_CONTAINER_SVC_RING_WEIGHTS} \
-d ${SWIFT_CONTAINER_SVC_RING_DEVICES} \
-z ${SWIFT_CONTAINER_SVC_RING_ZONES}

View File

@ -1,18 +0,0 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_EXPIRER="/opt/kolla/swift/object-expirer.conf"
TARGET_OBJECT_EXPIRER="/etc/swift/object-expirer.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_EXPIRER" ]]; then
cp $SOURCE_OBJECT_EXPIRER $TARGET_OBJECT_EXPIRER
chown ${OWNER}: $TARGET_OBJECT_EXPIRER
chmod 0640 $TARGET_OBJECT_EXPIRER
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-expirer"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,18 +0,0 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_SERVER="/opt/kolla/swift/object-server.conf"
TARGET_OBJECT_SERVER="/etc/swift/object-server.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_SERVER" ]]; then
cp $SOURCE_OBJECT_SERVER $TARGET_OBJECT_SERVER
chown ${OWNER}: $TARGET_OBJECT_SERVER
chmod 0640 $TARGET_OBJECT_SERVER
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-replicator"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,27 +0,0 @@
#!/bin/bash
OWNER="swift"
if [[ -f "/opt/kolla/swift/swift.conf" ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/swift.conf
chown ${OWNER}: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/object.ring.gz" ]]; then
cp /opt/kolla/swift/object.ring.gz /etc/swift/object.ring.gz
chown ${OWNER}: /etc/swift/object.ring.gz
chmod 0640 /etc/swift/object.ring.gz
fi
if [[ -f "/opt/kolla/swift/container.ring.gz" ]]; then
cp /opt/kolla/swift/container.ring.gz /etc/swift/container.ring.gz
chown ${OWNER}: /etc/swift/container.ring.gz
chmod 0640 /etc/swift/container.ring.gz
fi
if [[ -f "/opt/kolla/swift-object-server/object-server.conf" ]]; then
cp /opt/kolla/swift-object-server/object-server.conf /etc/swift/object-server.conf
chown ${OWNER}: /etc/swift/object-server.conf
chmod 0640 /etc/swift/object-server.conf
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-server"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,18 +0,0 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_SERVER="/opt/kolla/swift/object-server.conf"
TARGET_OBJECT_SERVER="/etc/swift/object-server.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_SERVER" ]]; then
cp $SOURCE_OBJECT_SERVER $TARGET_OBJECT_SERVER
chown ${OWNER}: $TARGET_OBJECT_SERVER
chmod 0640 $TARGET_OBJECT_SERVER
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-updater"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1,33 +0,0 @@
#!/bin/bash
OWNER="swift"
if [[ -f "/opt/kolla/swift/swift.conf" ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/swift.conf
chown ${OWNER}: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/object.ring.gz" ]]; then
cp /opt/kolla/swift/object.ring.gz /etc/swift/object.ring.gz
chown ${OWNER}: /etc/swift/object.ring.gz
chmod 0640 /etc/swift/object.ring.gz
fi
if [[ -f "/opt/kolla/swift/container.ring.gz" ]]; then
cp /opt/kolla/swift/container.ring.gz /etc/swift/container.ring.gz
chown ${OWNER}: /etc/swift/container.ring.gz
chmod 0640 /etc/swift/container.ring.gz
fi
if [[ -f "/opt/kolla/swift/account.ring.gz" ]]; then
cp /opt/kolla/swift/account.ring.gz /etc/swift/account.ring.gz
chown ${OWNER}: /etc/swift/account.ring.gz
chmod 0640 /etc/swift/account.ring.gz
fi
if [[ -f "/opt/kolla/swift-proxy-server/proxy-server.conf" ]]; then
cp /opt/kolla/swift-proxy-server/proxy-server.conf /etc/swift/proxy-server.conf
chown ${OWNER}: /etc/swift/proxy-server.conf
chmod 0640 /etc/swift/proxy-server.conf
fi

View File

@ -1,16 +0,0 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-proxy-server"
ARGS="/etc/swift/proxy-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-account-server/config-external.sh

View File

@ -0,0 +1,19 @@
#!/bin/bash
if [[ -f /opt/kolla/swift/swift.conf ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/
chown swift: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/account.ring.gz" ]]; then
cp /opt/kolla/swift/account.ring.gz /etc/swift/account.ring.gz
chown swift: /etc/swift/account.ring.gz
chmod 0640 /etc/swift/account.ring.gz
fi
if [[ -f /opt/kolla/swift-account-server/account-server.conf ]]; then
cp /opt/kolla/swift-account-server/account-server.conf /etc/swift/
chown swift: /etc/swift/account-server.conf
chmod 0640 /etc/swift/account-server.conf
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-account-server/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-account-server"
ARGS="/etc/swift/account-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-base/build-swift-ring.py

View File

@ -0,0 +1,93 @@
#!/usr/bin/env python
# Copyright 2015 Paul Bourke
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""
This script is a simple wrapper used to create and rebalance Swift ring files.
"""
import argparse
import subprocess
import sys
def setup_args():
parser = argparse.ArgumentParser()
parser.add_argument("-f", "--ring-file",
required=True,
help="Path to ring file")
parser.add_argument("-p", "--part-power",
required=True,
help="Part power")
parser.add_argument("-r", "--num-replicas",
required=True,
help="Number of replicas")
parser.add_argument("-m", "--min-part-hours",
required=True,
help="Min part hours")
parser.add_argument("-H", "--hosts",
required=True,
help="Hosts in the ring, comma delimited")
parser.add_argument("-w", "--weights",
required=True,
help="Weight of each host, comma delimited")
parser.add_argument("-d", "--devices",
required=True,
help="Device on each host, comma delimited")
parser.add_argument("-z", "--zones",
required=True,
help="Zone of each host, comma delimited")
return parser.parse_args()
def run_cmd(cmd):
print(' '.join(cmd))
subprocess.call(cmd)
def run(args):
hosts = args.hosts.split(',')
weights = args.weights.split(',')
zones = args.zones.split(',')
devices = args.devices.split(',')
if not (len(hosts) == len(weights) == len(zones) == len(devices)):
print('Error: an equal amount of hosts, devices, weights, '
'and zones are required')
sys.exit(1)
run_cmd(['/usr/bin/swift-ring-builder',
args.ring_file,
'create',
args.part_power,
args.num_replicas,
args.min_part_hours])
for i in xrange(len(hosts)):
run_cmd(['/usr/bin/swift-ring-builder',
args.ring_file,
'add',
'z{}-{}/{}'.format(zones[i], hosts[i], devices[i]),
weights[i]])
run_cmd(['/usr/bin/swift-ring-builder', args.ring_file, 'rebalance'])
def main():
args = setup_args()
run(args)
if __name__ == "__main__":
main()

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-base/config-swift.sh

View File

@ -0,0 +1,3 @@
#!/bin/bash
chown -R swift: /srv/node

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-container-server/config-external.sh

View File

@ -0,0 +1,21 @@
#!/bin/bash
OWNER="swift"
if [[ -f "/opt/kolla/swift/swift.conf" ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/swift.conf
chown ${OWNER}: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/container.ring.gz" ]]; then
cp /opt/kolla/swift/container.ring.gz /etc/swift/container.ring.gz
chown ${OWNER}: /etc/swift/container.ring.gz
chmod 0640 /etc/swift/container.ring.gz
fi
if [[ -f "/opt/kolla/swift-container-server/container-server.conf" ]]; then
cp /opt/kolla/swift-container-server/container-server.conf /etc/swift/container-server.conf
chown ${OWNER}: /etc/swift/container-server.conf
chmod 0640 /etc/swift/container-server.conf
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-container-server/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-container-server"
ARGS="/etc/swift/container-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-auditor/config-external.sh

View File

@ -0,0 +1,18 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_SERVER="/opt/kolla/swift/object-server.conf"
TARGET_OBJECT_SERVER="/etc/swift/object-server.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_SERVER" ]]; then
cp $SOURCE_OBJECT_SERVER $TARGET_OBJECT_SERVER
chown ${OWNER}: $TARGET_OBJECT_SERVER
chmod 0640 $TARGET_OBJECT_SERVER
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-auditor/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-auditor"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-base/config-swift-object.sh

View File

@ -0,0 +1,72 @@
#!/bin/bash
. /opt/kolla/kolla-common.sh
check_required_vars \
SWIFT_CONTAINER_SVC_RING_DEVICES \
SWIFT_CONTAINER_SVC_RING_HOSTS \
SWIFT_CONTAINER_SVC_RING_MIN_PART_HOURS \
SWIFT_CONTAINER_SVC_RING_NAME \
SWIFT_CONTAINER_SVC_RING_PART_POWER \
SWIFT_CONTAINER_SVC_RING_REPLICAS \
SWIFT_CONTAINER_SVC_RING_WEIGHTS \
SWIFT_CONTAINER_SVC_RING_ZONES \
SWIFT_DIR \
SWIFT_OBJECT_SVC_BIND_IP \
SWIFT_OBJECT_SVC_BIND_PORT \
SWIFT_OBJECT_SVC_DEVICES \
SWIFT_OBJECT_SVC_MOUNT_CHECK \
SWIFT_OBJECT_SVC_PIPELINE \
SWIFT_OBJECT_SVC_RING_DEVICES \
SWIFT_OBJECT_SVC_RING_HOSTS \
SWIFT_OBJECT_SVC_RING_MIN_PART_HOURS \
SWIFT_OBJECT_SVC_RING_NAME \
SWIFT_OBJECT_SVC_RING_PART_POWER \
SWIFT_OBJECT_SVC_RING_REPLICAS \
SWIFT_OBJECT_SVC_RING_WEIGHTS \
SWIFT_OBJECT_SVC_RING_ZONES \
SWIFT_USER
cfg=/etc/swift/object-server.conf
crudini --set $cfg DEFAULT bind_ip "${SWIFT_OBJECT_SVC_BIND_IP}"
crudini --set $cfg DEFAULT bind_port "${SWIFT_OBJECT_SVC_BIND_PORT}"
crudini --set $cfg DEFAULT user "${SWIFT_USER}"
crudini --set $cfg DEFAULT swift_dir "${SWIFT_DIR}"
crudini --set $cfg DEFAULT devices "${SWIFT_OBJECT_SVC_DEVICES}"
crudini --set $cfg DEFAULT mount_check "${SWIFT_OBJECT_SVC_MOUNT_CHECK}"
crudini --set $cfg pipeline:main pipeline "${SWIFT_OBJECT_SVC_PIPELINE}"
# NOTE(pbourke): some services require a section in the conf, even if empty
crudini --set $cfg object-expirer
# Create swift user and group if they don't exist
id -u swift &>/dev/null || useradd --user-group swift
# Ensure proper ownership of the mount point directory structure
chown -R swift:swift /srv/node
# TODO(pbourke): does this need to be on a data vol?
mkdir -p /var/cache/swift
chown -R swift:swift /var/cache/swift
python /opt/kolla/build-swift-ring.py \
-f ${SWIFT_OBJECT_SVC_RING_NAME} \
-p ${SWIFT_OBJECT_SVC_RING_PART_POWER} \
-r ${SWIFT_OBJECT_SVC_RING_REPLICAS} \
-m ${SWIFT_OBJECT_SVC_RING_MIN_PART_HOURS} \
-H ${SWIFT_OBJECT_SVC_RING_HOSTS} \
-w ${SWIFT_OBJECT_SVC_RING_WEIGHTS} \
-d ${SWIFT_OBJECT_SVC_RING_DEVICES} \
-z ${SWIFT_OBJECT_SVC_RING_ZONES}
python /opt/kolla/build-swift-ring.py \
-f ${SWIFT_CONTAINER_SVC_RING_NAME} \
-p ${SWIFT_CONTAINER_SVC_RING_PART_POWER} \
-r ${SWIFT_CONTAINER_SVC_RING_REPLICAS} \
-m ${SWIFT_CONTAINER_SVC_RING_MIN_PART_HOURS} \
-H ${SWIFT_CONTAINER_SVC_RING_HOSTS} \
-w ${SWIFT_CONTAINER_SVC_RING_WEIGHTS} \
-d ${SWIFT_CONTAINER_SVC_RING_DEVICES} \
-z ${SWIFT_CONTAINER_SVC_RING_ZONES}

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-expirer/config-external.sh

View File

@ -0,0 +1,18 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_EXPIRER="/opt/kolla/swift/object-expirer.conf"
TARGET_OBJECT_EXPIRER="/etc/swift/object-expirer.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_EXPIRER" ]]; then
cp $SOURCE_OBJECT_EXPIRER $TARGET_OBJECT_EXPIRER
chown ${OWNER}: $TARGET_OBJECT_EXPIRER
chmod 0640 $TARGET_OBJECT_EXPIRER
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-expirer/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-expirer"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-replicator/config-external.sh

View File

@ -0,0 +1,18 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_SERVER="/opt/kolla/swift/object-server.conf"
TARGET_OBJECT_SERVER="/etc/swift/object-server.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_SERVER" ]]; then
cp $SOURCE_OBJECT_SERVER $TARGET_OBJECT_SERVER
chown ${OWNER}: $TARGET_OBJECT_SERVER
chmod 0640 $TARGET_OBJECT_SERVER
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-replicator/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-replicator"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-server/config-external.sh

View File

@ -0,0 +1,27 @@
#!/bin/bash
OWNER="swift"
if [[ -f "/opt/kolla/swift/swift.conf" ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/swift.conf
chown ${OWNER}: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/object.ring.gz" ]]; then
cp /opt/kolla/swift/object.ring.gz /etc/swift/object.ring.gz
chown ${OWNER}: /etc/swift/object.ring.gz
chmod 0640 /etc/swift/object.ring.gz
fi
if [[ -f "/opt/kolla/swift/container.ring.gz" ]]; then
cp /opt/kolla/swift/container.ring.gz /etc/swift/container.ring.gz
chown ${OWNER}: /etc/swift/container.ring.gz
chmod 0640 /etc/swift/container.ring.gz
fi
if [[ -f "/opt/kolla/swift-object-server/object-server.conf" ]]; then
cp /opt/kolla/swift-object-server/object-server.conf /etc/swift/object-server.conf
chown ${OWNER}: /etc/swift/object-server.conf
chmod 0640 /etc/swift/object-server.conf
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-server/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-server"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-updater/config-external.sh

View File

@ -0,0 +1,18 @@
#!/bin/bash
SOURCE="/opt/kolla/swift/swift.conf"
TARGET="/etc/swift/swift.conf"
SOURCE_OBJECT_SERVER="/opt/kolla/swift/object-server.conf"
TARGET_OBJECT_SERVER="/etc/swift/object-server.conf"
OWNER="swift"
if [[ -f "$SOURCE" ]]; then
cp $SOURCE $TARGET
chown ${OWNER}: $TARGET
chmod 0640 $TARGET
fi
if [[ -f "$SOURCE_OBJECT_SERVER" ]]; then
cp $SOURCE_OBJECT_SERVER $TARGET_OBJECT_SERVER
chown ${OWNER}: $TARGET_OBJECT_SERVER
chmod 0640 $TARGET_OBJECT_SERVER
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-object-updater/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-object-updater"
ARGS="/etc/swift/object-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-proxy-server/config-external.sh

View File

@ -0,0 +1,33 @@
#!/bin/bash
OWNER="swift"
if [[ -f "/opt/kolla/swift/swift.conf" ]]; then
cp /opt/kolla/swift/swift.conf /etc/swift/swift.conf
chown ${OWNER}: /etc/swift/swift.conf
chmod 0640 /etc/swift/swift.conf
fi
if [[ -f "/opt/kolla/swift/object.ring.gz" ]]; then
cp /opt/kolla/swift/object.ring.gz /etc/swift/object.ring.gz
chown ${OWNER}: /etc/swift/object.ring.gz
chmod 0640 /etc/swift/object.ring.gz
fi
if [[ -f "/opt/kolla/swift/container.ring.gz" ]]; then
cp /opt/kolla/swift/container.ring.gz /etc/swift/container.ring.gz
chown ${OWNER}: /etc/swift/container.ring.gz
chmod 0640 /etc/swift/container.ring.gz
fi
if [[ -f "/opt/kolla/swift/account.ring.gz" ]]; then
cp /opt/kolla/swift/account.ring.gz /etc/swift/account.ring.gz
chown ${OWNER}: /etc/swift/account.ring.gz
chmod 0640 /etc/swift/account.ring.gz
fi
if [[ -f "/opt/kolla/swift-proxy-server/proxy-server.conf" ]]; then
cp /opt/kolla/swift-proxy-server/proxy-server.conf /etc/swift/proxy-server.conf
chown ${OWNER}: /etc/swift/proxy-server.conf
chmod 0640 /etc/swift/proxy-server.conf
fi

View File

@ -1 +0,0 @@
../../../docker/common/swift/swift-proxy-server/start.sh

View File

@ -0,0 +1,16 @@
#!/bin/bash
set -o errexit
CMD="/usr/bin/swift-proxy-server"
ARGS="/etc/swift/proxy-server.conf --verbose"
# Loading common functions.
source /opt/kolla/kolla-common.sh
source /opt/kolla/config-swift.sh
# Execute config strategy
set_configs
exec $CMD $ARGS