111 lines
4.8 KiB
YAML
111 lines
4.8 KiB
YAML
dsl_version: 0.1.0
|
|
service:
|
|
name: cinder-api
|
|
ports:
|
|
- {{ cinder.api_port }}
|
|
containers:
|
|
- name: cinder-api
|
|
image: cinder-api
|
|
pre:
|
|
- name: cinder-db-create
|
|
dependencies:
|
|
- {{ service.database }}
|
|
type: single
|
|
command:
|
|
mysql -u root -p{{ db.root_password }} -h {{ address(service.database) }} -e "create database {{ cinder.db.name }};
|
|
grant all privileges on {{ cinder.db.name }}.* to '{{ cinder.db.username }}'@'%' identified by '{{ cinder.db.password }}';"
|
|
- name: cinder-db-sync
|
|
files:
|
|
- cinder-conf
|
|
dependencies:
|
|
- cinder-db-create
|
|
type: single
|
|
command: cinder-manage db sync
|
|
- name: cinder-user-create
|
|
dependencies:
|
|
- keystone
|
|
type: single
|
|
command: openstack user create --domain default --password {{ cinder.password }} {{ cinder.username }}
|
|
- name: cinder-role-add
|
|
dependencies:
|
|
- cinder-user-create
|
|
type: single
|
|
command: openstack role add --project service --user {{ cinder.username }} admin
|
|
|
|
- name: cinder-service-create
|
|
dependencies:
|
|
- keystone
|
|
type: single
|
|
command: openstack service create --name cinder --description "OpenStack Cinder Service" volume
|
|
- name: cinder-public-endpoint-create
|
|
dependencies:
|
|
- cinder-service-create
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volume public {{ address('cinder-api', cinder.api_port, external=True, with_scheme=True) }}/v1/$\(project_id\)s
|
|
- name: cinder-internal-endpoint-create
|
|
dependencies:
|
|
- cinder-service-create
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volume internal {{ address('cinder-api', cinder.api_port, with_scheme=True) }}/v1/$\(project_id\)s
|
|
- name: cinder-admin-endpoint-create
|
|
dependencies:
|
|
- cinder-service-create
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volume admin {{ address('cinder-api', cinder.api_port, with_scheme=True) }}/v1/$\(project_id\)s
|
|
|
|
- name: cinder-service-create-v2
|
|
dependencies:
|
|
- keystone
|
|
type: single
|
|
command: openstack service create --name cinder --description "OpenStack Cinder Service V2" volumev2
|
|
- name: cinder-public-endpoint-create-v2
|
|
dependencies:
|
|
- cinder-service-create-v2
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volumev2 public {{ address('cinder-api', cinder.api_port, external=True, with_scheme=True) }}/v2/$\(project_id\)s
|
|
- name: cinder-internal-endpoint-create-v2
|
|
dependencies:
|
|
- cinder-service-create-v2
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volumev2 internal {{ address('cinder-api', cinder.api_port, with_scheme=True) }}/v2/$\(project_id\)s
|
|
- name: cinder-admin-endpoint-create-v2
|
|
dependencies:
|
|
- cinder-service-create-v2
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volumev2 admin {{ address('cinder-api', cinder.api_port, with_scheme=True) }}/v2/$\(project_id\)s
|
|
|
|
- name: cinder-service-create-v3
|
|
dependencies:
|
|
- keystone
|
|
type: single
|
|
command: openstack service create --name cinder --description "OpenStack Cinder Service V3" volumev3
|
|
- name: cinder-public-endpoint-create-v3
|
|
dependencies:
|
|
- cinder-service-create-v3
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volumev3 public {{ address('cinder-api', cinder.api_port, external=True, with_scheme=True) }}/v3/$\(project_id\)s
|
|
- name: cinder-internal-endpoint-create-v3
|
|
dependencies:
|
|
- cinder-service-create-v3
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volumev3 internal {{ address('cinder-api', cinder.api_port, with_scheme=True) }}/v3/$\(project_id\)s
|
|
- name: cinder-admin-endpoint-create-v3
|
|
dependencies:
|
|
- cinder-service-create-v3
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne volumev3 admin {{ address('cinder-api', cinder.api_port, with_scheme=True) }}/v3/$\(project_id\)s
|
|
|
|
daemon:
|
|
command: cinder-api --config-file /etc/cinder/cinder.conf
|
|
files:
|
|
- cinder-conf
|
|
dependencies:
|
|
- memcached
|
|
- "{{ messaging.dependencies[messaging.backend.rpc] }}"
|
|
- "{{ messaging.dependencies[messaging.backend.notifications] }}"
|
|
|
|
files:
|
|
cinder-conf:
|
|
path: /etc/cinder/cinder.conf
|
|
content: cinder.conf.j2
|