5cb375645c
Add a new variable 'kolla_devmode', which when enabled, clones and bindmounts service source code into the containers. This commit adds the relevant changes for Heat, more services can be added and built upon. Usage: * Set 'kolla_devmode: yes' * Code is cloned to /opt/stack/{{ project_name }} on target node(s) * Users can develop in these repos, and simply restart the container to pick up / test changes. Debugging can be done from the host via 'remote_pdb'[0]. [0] https://pypi.python.org/pypi/remote-pdb Implements: blueprint mount-sources Change-Id: Ic0431b10d723bf84eeefc72039376fe0058dd902
70 lines
3.1 KiB
YAML
70 lines
3.1 KiB
YAML
---
|
|
- name: Restart heat-api container
|
|
vars:
|
|
service_name: "heat-api"
|
|
service: "{{ heat_services[service_name] }}"
|
|
config_json: "{{ heat_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
heat_conf: "{{ heat_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ heat_policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
heat_api_container: "{{ check_heat_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes|reject('equalto', '')|list }}"
|
|
when:
|
|
- action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or heat_conf.changed | bool
|
|
or policy_json.changed | bool
|
|
or heat_api_container.changed | bool
|
|
|
|
- name: Restart heat-api-cfn container
|
|
vars:
|
|
service_name: "heat-api-cfn"
|
|
service: "{{ heat_services[service_name] }}"
|
|
config_json: "{{ heat_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
heat_conf: "{{ heat_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ heat_policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
heat_api_cfn_container: "{{ check_heat_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes|reject('equalto', '')|list }}"
|
|
when:
|
|
- action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or heat_conf.changed | bool
|
|
or policy_json.changed | bool
|
|
or heat_api_cfn_container.changed | bool
|
|
|
|
- name: Restart heat-engine container
|
|
vars:
|
|
service_name: "heat-engine"
|
|
service: "{{ heat_services[service_name] }}"
|
|
config_json: "{{ heat_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
heat_conf: "{{ heat_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ heat_policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
heat_engine_container: "{{ check_heat_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes|reject('equalto', '')|list }}"
|
|
when:
|
|
- action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or heat_conf.changed | bool
|
|
or policy_json.changed | bool
|
|
or heat_engine_container.changed | bool
|