102 lines
3.7 KiB
YAML
102 lines
3.7 KiB
YAML
dsl_version: 0.5.0
|
|
service:
|
|
name: designate-api
|
|
ports:
|
|
- {{ designate.api_port }}
|
|
containers:
|
|
- name: designate-api
|
|
image: designate-api
|
|
pre:
|
|
- name: designate-main-db-create
|
|
dependencies:
|
|
- database
|
|
type: single
|
|
command:
|
|
mysql -u root -p{{ db.root_password }} -h {{ address('database') }} -e "create database {{ designate.db.name.main_database }};
|
|
create user '{{ designate.db.username }}'@'%' identified by '{{ designate.db.password }}'
|
|
{% if db.tls.enabled %} require ssl {% endif %};
|
|
grant all privileges on {{ designate.db.name.main_database }}.* to '{{ designate.db.username }}'@'%' identified by '{{ designate.db.password }}'
|
|
{% if db.tls.enabled %} require ssl {% endif %};"
|
|
- name: designate-syncdb
|
|
dependencies:
|
|
- designate-main-db-create
|
|
files:
|
|
- designate-conf
|
|
type: single
|
|
command: designate-manage --config-file /etc/designate/designate.conf database sync
|
|
- name: designate-user-create
|
|
dependencies:
|
|
- keystone-create-domain
|
|
type: single
|
|
command: openstack user create --domain {{ service_account.domain }} --password {{ designate.password }} {{ designate.username }}
|
|
- name: designate-admin-role-add
|
|
dependencies:
|
|
- designate-user-create
|
|
- keystone-create-project
|
|
type: single
|
|
command: openstack role add --project {{ service_account.project }} --user {{ designate.username }} admin
|
|
- name: designate-service-create
|
|
dependencies:
|
|
- keystone-create-project
|
|
type: single
|
|
command: openstack service create --name designate --description "Designate Service" dns
|
|
- name: designate-public-endpoint-create
|
|
dependencies:
|
|
- designate-service-create
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne dns public {{ address('designate-api', designate.api_port, external=True, with_scheme=True) }}
|
|
- name: designate-internal-endpoint-create
|
|
dependencies:
|
|
- designate-service-create
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne dns internal {{ address('designate-api', designate.api_port, with_scheme=True) }}
|
|
- name: designate-admin-endpoint-create
|
|
dependencies:
|
|
- designate-service-create
|
|
type: single
|
|
command: openstack endpoint create --region RegionOne dns admin {{ address('designate-api', designate.api_port, with_scheme=True) }}
|
|
daemon:
|
|
dependencies:
|
|
- rpc
|
|
files:
|
|
- designate-conf
|
|
- api-paste
|
|
command: designate-api --config-file /etc/designate/designate.conf
|
|
# {% if designate.tls.enabled %}
|
|
- name: nginx-designate-api
|
|
image: nginx
|
|
daemon:
|
|
files:
|
|
- upstreams
|
|
- servers
|
|
- server-cert
|
|
- server-key
|
|
command: nginx
|
|
# {% endif %}
|
|
|
|
files:
|
|
designate-conf:
|
|
path: /etc/designate/designate.conf
|
|
content: designate.conf.j2
|
|
api-paste:
|
|
path: /etc/designate/api-paste.ini
|
|
content: api-paste.ini.j2
|
|
# {% if designate.tls.enabled %}
|
|
servers:
|
|
path: /etc/nginx/conf.d/servers.conf
|
|
content: nginx-api.conf.j2
|
|
perm: "0400"
|
|
upstreams:
|
|
path: /etc/nginx/conf.d/upstreams.conf
|
|
content: upstreams.conf.j2
|
|
perm: "0400"
|
|
server-cert:
|
|
path: /opt/ccp/etc/tls/server-cert.pem
|
|
content: server-cert.pem.j2
|
|
perm: "0400"
|
|
server-key:
|
|
path: /opt/ccp/etc/tls/server-key.pem
|
|
content: server-key.pem.j2
|
|
perm: "0400"
|
|
# {% endif %}
|