This repository has been archived by the owner on Feb 29, 2024. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Closes-bug: #1668935 Change-Id: I83a02735eb445e831bc74ec786f2bb42cd2f87d6
- Loading branch information
Showing
2 changed files
with
136 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
heat_template_version: pike | ||
|
||
description: > | ||
OpenStack containerized Tacker service | ||
parameters: | ||
DockerNamespace: | ||
description: namespace | ||
default: 'tripleoupstream' | ||
type: string | ||
DockerTackerImage: | ||
description: image | ||
default: 'centos-binary-tacker:latest' | ||
type: string | ||
DockerTackerConfigImage: | ||
description: image | ||
default: 'centos-binary-tacker:latest' | ||
type: string | ||
EndpointMap: | ||
default: {} | ||
description: Mapping of service endpoint -> protocol. Typically set | ||
via parameter_defaults in the resource registry. | ||
type: json | ||
ServiceNetMap: | ||
default: {} | ||
description: Mapping of service_name -> network name. Typically set | ||
via parameter_defaults in the resource registry. This | ||
mapping overrides those in ServiceNetMapDefaults. | ||
type: json | ||
DefaultPasswords: | ||
default: {} | ||
type: json | ||
RoleName: | ||
default: '' | ||
description: Role name on which the service is applied | ||
type: string | ||
RoleParameters: | ||
default: {} | ||
description: Parameters specific to the role | ||
type: json | ||
|
||
resources: | ||
|
||
ContainersCommon: | ||
type: ./containers-common.yaml | ||
|
||
TackerBase: | ||
type: ../../puppet/services/tacker.yaml | ||
properties: | ||
EndpointMap: {get_param: EndpointMap} | ||
ServiceNetMap: {get_param: ServiceNetMap} | ||
DefaultPasswords: {get_param: DefaultPasswords} | ||
RoleName: {get_param: RoleName} | ||
RoleParameters: {get_param: RoleParameters} | ||
|
||
outputs: | ||
role_data: | ||
description: Role data for the Tacker role. | ||
value: | ||
service_name: {get_attr: [TackerBase, role_data, service_name]} | ||
config_settings: | ||
map_merge: | ||
- get_attr: [TackerBase, role_data, config_settings] | ||
step_config: &step_config | ||
get_attr: [TackerBase, role_data, step_config] | ||
service_config_settings: {get_attr: [TackerBase, role_data, service_config_settings]} | ||
# BEGIN DOCKER SETTINGS | ||
puppet_config: | ||
config_volume: tacker | ||
puppet_tags: tacker_config | ||
step_config: *step_config | ||
config_image: | ||
list_join: | ||
- '/' | ||
- [ {get_param: DockerNamespace}, {get_param: DockerTackerConfigImage} ] | ||
kolla_config: | ||
/var/lib/kolla/config_files/tacker_api.json: | ||
command: /usr/bin/tacker-server --config-file=/etc/tacker/tacker.conf --log-file=/var/log/tacker/api.log | ||
permissions: | ||
- path: /var/log/tacker | ||
owner: tacker:tacker | ||
recurse: true | ||
docker_config: | ||
# db sync runs before permissions set by kolla_config | ||
step_3: | ||
tacker_init_logs: | ||
start_order: 0 | ||
image: &tacker_image | ||
list_join: | ||
- '/' | ||
- [ {get_param: DockerNamespace}, {get_param: DockerTackerImage} ] | ||
privileged: false | ||
user: root | ||
volumes: | ||
- /var/log/containers/tacker:/var/log/tacker | ||
command: ['/bin/bash', '-c', 'chown -R tacker:tacker /var/log/tacker'] | ||
tacker_db_sync: | ||
start_order: 1 | ||
image: *tacker_image | ||
net: host | ||
privileged: false | ||
detach: false | ||
user: root | ||
volumes: | ||
list_concat: | ||
- {get_attr: [ContainersCommon, volumes]} | ||
- | ||
- /var/lib/config-data/tacker/etc/:/etc/:ro | ||
- /var/log/containers/tacker:/var/log/tacker | ||
command: "/usr/bin/bootstrap_host_exec tacker su tacker -s /bin/bash -c 'tacker-db-manage --config-file /etc/tacker/tacker.conf upgrade head'" | ||
step_4: | ||
tacker_api: | ||
image: *tacker_image | ||
net: host | ||
privileged: false | ||
restart: always | ||
volumes: | ||
list_concat: | ||
- {get_attr: [ContainersCommon, volumes]} | ||
- | ||
- /var/lib/kolla/config_files/tacker_api.json:/var/lib/kolla/config_files/config.json:ro | ||
- /var/lib/config-data/tacker/etc/tacker/:/etc/tacker/:ro | ||
- /var/log/containers/tacker:/var/log/tacker | ||
environment: | ||
- KOLLA_CONFIG_STRATEGY=COPY_ALWAYS | ||
host_prep_tasks: | ||
- name: create persistent logs directory | ||
file: | ||
path: /var/log/containers/tacker | ||
state: directory | ||
upgrade_tasks: | ||
- name: Stop and disable tacker-server service | ||
tags: step2 | ||
service: name=openstack-tacker-server state=stopped enabled=no |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
resource_registry: | ||
OS::TripleO::Services::Tacker: ../../docker/services/tacker.yaml |