diff options
| author | Sam Yaple <sam@yaple.net> | 2015-05-13 06:46:24 -0500 |
|---|---|---|
| committer | Sam Yaple <sam@yaple.net> | 2015-05-15 01:32:22 -0500 |
| commit | 13062e23e86b5d86020949754540460cb5b0b4fe (patch) | |
| tree | e0b3c8411418949a3d8df221da7c8cb2831b6d5d /docker/centos/binary/cinder | |
| parent | 354ba01c8f5c7e1695cbea3bfc07aee5b75e76d9 (diff) | |
| download | kolla-13062e23e86b5d86020949754540460cb5b0b4fe.tar.gz kolla-13062e23e86b5d86020949754540460cb5b0b4fe.zip | |
Restructure builds to allow more flexibility
As a restructure, nothing is changed from the original behaviour and
naming despite the file structure changing. The symlinks to build had
to be updated generating lots of "deleted" and "new_file".
The new structure is:
docker/${base_distro}/${type}/${container}
base_distro == centos, ubuntu, fedora, etc
type == source, binary, rdo
type rdo is a symlink to binary for backwards compatibility
Two new flags are added to the build-all script to support the ability
to support different base distros and a flag to support binary or source
containers.
There are several added folders that are empty to hold the directory
structure for future containers of these types.
To use a prefix other than centos-rdo- you can set PREFIX in the toplevel
directory .buildconf file
Change-Id: Ifc7bac0d827470f506c8b5c004a833da9ce13b90
Diffstat (limited to 'docker/centos/binary/cinder')
| -rw-r--r-- | docker/centos/binary/cinder/Dockerfile | 8 | ||||
| l--------- | docker/centos/binary/cinder/build | 1 | ||||
| -rwxr-xr-x | docker/centos/binary/cinder/start.sh | 145 |
3 files changed, 154 insertions, 0 deletions
diff --git a/docker/centos/binary/cinder/Dockerfile b/docker/centos/binary/cinder/Dockerfile new file mode 100644 index 000000000..3dd7eca59 --- /dev/null +++ b/docker/centos/binary/cinder/Dockerfile @@ -0,0 +1,8 @@ +FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%base:%%KOLLA_TAG%% +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +RUN yum -y install openstack-cinder && yum clean all + +ADD ./start.sh /start.sh +CMD ["/start.sh"] + diff --git a/docker/centos/binary/cinder/build b/docker/centos/binary/cinder/build new file mode 120000 index 000000000..8d652f7ee --- /dev/null +++ b/docker/centos/binary/cinder/build @@ -0,0 +1 @@ +../../../../tools/build-docker-image
\ No newline at end of file diff --git a/docker/centos/binary/cinder/start.sh b/docker/centos/binary/cinder/start.sh new file mode 100755 index 000000000..c0d796f02 --- /dev/null +++ b/docker/centos/binary/cinder/start.sh @@ -0,0 +1,145 @@ +#!/bin/bash -e + +: ${CINDER_DB_USER:=cinder} +: ${CINDER_DB_NAME:=cinder} +: ${KEYSTONE_AUTH_PROTOCOL:=http} +: ${CINDER_KEYSTONE_USER:=cinder} +: ${ADMIN_TENANT_NAME:=admin} + +if ! [ "$CINDER_DB_PASSWORD" ]; then + CINDER_DB_PASSWORD=$(openssl rand -hex 15) + export CINDER_DB_PASSWORD +fi + +check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ + CINDER_ADMIN_PASSWORD +fail_unless_db + +mysql -h ${MARIADB_SERVICE_HOST} -u root -p"${DB_ROOT_PASSWORD}" mysql <<EOF +CREATE DATABASE IF NOT EXISTS ${CINDER_DB_NAME}; +GRANT ALL PRIVILEGES ON glance* TO + '${CINDER_DB_USER}'@'%' IDENTIFIED BY '${CINDER_DB_PASSWORD}' +EOF + +#-----Cinder.conf setup----- + +# Cinder database +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + db_driver \ + "cinder.db" + +# Rabbit +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rabbit_host \ + "127.0.0.1" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rabbit_port \ + "5672" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rabbit_hosts \ + "127.0.0.1:5672" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rabbit_userid \ + "guest" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rabbit_password \ + "guest" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rabbit_virtual_host \ + "/" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rabbit_ha_queues \ + "False" + +# backend +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + rpc_backend \ + "cinder.openstack.common.rpc.impl_kombu" + +# control_exchange +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + control_exchange \ + "openstack" + +# osapi +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + osapi_volume_listen \ + "0.0.0.0" + +# api_paste_config +crudini --set /etc/cinder/cinder.conf \ + DEFUALT \ + api_paste_config \ + "/etc/cinder/api-paste.ini" + +# auth_strategy +crudini --set /etc/cinder/cinder.conf \ + DEFUALT \ + auth_strategy \ + "keystone" + +# debug +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + debug \ + "False" + +# verbose +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + verbose \ + "True" + +# logs +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + log_dir \ + "/var/log/cinder/" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + log_file \ + "/var/log/cinder/cinder.log" + +# use_sysloge +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + use_syslog \ + "False" + +# iscsi +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + iscsi_ip_address \ + "127.0.0.1" +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + iscsi_helper \ + "tgtadm" + +# volume_group +crudini --set /etc/cinder/cinder.conf \ + DEFAULT \ + volume_group \ + "cinder-volumes" + + +export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" +export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" + +/bin/keystone user-create --name ${CINDER_KEYSTONE_USER} --pass ${CINDER_ADMIN_PASSWORD} +/bin/keystone role-create --name ${CINDER_KEYSTONE_USER} +/bin/keystone user-role-add --user ${CINDER_KEYSTONE_USER} --role admin --tenant ${ADMIN_TENANT_NAME} + +exec /usr/bin/cinder-all + |
