---
- include: pull.yml

# Pin release version
- include: config.yml
  vars:
    pin_release_version: "{{ openstack_previous_release_name }}"

- include: bootstrap_service.yml

# TODO(donghm): Flush_handlers to restart ironic services
# should be run in serial nodes to decrease downtime. Update when
# the module ansible strategy for rolling upgrade is finished.

# Restart ironic services with pinned release version
- name: Flush handlers
  meta: flush_handlers

# Unpin version
- include: config.yml

# Restart ironic services with unpinned release version
- name: Flush handlers
  meta: flush_handlers

- name: Running Ironic online data migration
  vars:
    ironic_api: "{{ ironic_services['ironic-api'] }}"
  kolla_docker:
    action: "start_container"
    common_options: "{{ docker_common_options }}"
    detach: False
    environment:
      KOLLA_OSM:
      KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
    image: "{{ ironic_api.image }}"
    labels:
      BOOTSTRAP:
    name: "bootstrap_ironic"
    restart_policy: "never"
    volumes: "{{ ironic_api.volumes }}"
  run_once: True
  delegate_to: "{{ groups[ironic_api.group][0] }}"
  when: inventory_hostname in groups[ironic_api.group]
