| - name: Run devstack on the controller |
| include_role: |
| name: run-devstack |
| when: inventory_hostname == 'controller' |
| |
| - name: Setup devstack on sub-nodes |
| block: |
| |
| - name: Distribute the build sshkey for the user "stack" |
| include_role: |
| name: copy-build-sshkey |
| vars: |
| copy_sshkey_target_user: 'stack' |
| |
| - name: Sync CA data to subnodes (when any) |
| # Only do this if the tls-proxy service is defined and enabled |
| include_role: |
| name: sync-devstack-data |
| when: devstack_services['tls-proxy']|default(false) |
| |
| - name: Sync controller ceph.conf and key rings to subnode |
| include_role: |
| name: sync-controller-ceph-conf-and-keys |
| when: devstack_plugins is defined and 'devstack-plugin-ceph' in devstack_plugins |
| |
| - name: Run devstack on the sub-nodes |
| include_role: |
| name: run-devstack |
| when: inventory_hostname in groups['subnode'] |
| |
| - name: Discover hosts |
| # Discovers compute nodes (subnodes) and maps them to cells. Only run |
| # on the controller node. |
| # NOTE(mriedem): We want to remove this if/when nova supports |
| # auto-registration of computes with cells, but that's not happening in |
| # Ocata. |
| # NOTE(andreaf) This is taken (NOTE included) from the discover_hosts |
| # function in devstack gate. Since this is now in devstack, which is |
| # branched, we know that the discover_hosts tool exists. |
| become: true |
| become_user: stack |
| shell: ./tools/discover_hosts.sh |
| args: |
| chdir: "{{ devstack_base_dir }}/devstack" |
| when: inventory_hostname == 'controller' |
| |
| when: |
| - '"controller" in hostvars' |
| - '"subnode" in groups' |