| --- |
| # Installs the single node cord-pod XOS configuration, using Juju to provision |
| # the OpenStack installation inside of VM's on the head node. |
| # |
| # This is used by `scripts/single-node-pod.sh` for E2E testing. |
| |
| - name: Include vars |
| hosts: all |
| tasks: |
| - name: Include variables |
| include_vars: "{{ item }}" |
| with_items: |
| - vars/cord_defaults.yml |
| - vars/cord.yml |
| - vars/example_keystone.yml |
| |
| - name: DNS Server and apt-cacher-ng Setup |
| hosts: head |
| become: yes |
| roles: |
| - { role: dns-nsd, when: not on_maas } |
| - { role: dns-unbound, when: not on_maas } |
| - apt-cacher-ng |
| |
| - name: Configure all hosts to use DNS server |
| hosts: all |
| become: yes |
| roles: |
| - { role: dns-configure, when: not on_maas } |
| |
| - name: Prep systems |
| hosts: all |
| become: yes |
| roles: |
| - common-prep |
| - { role: cloudlab-prep, when: on_cloudlab } |
| |
| - name: Configure head node, create VM's |
| hosts: head |
| roles: |
| - { role: head-prep, become: yes } |
| - { role: config-virt, become: yes } |
| - create-lxd |
| - create-vms |
| |
| - name: Start OpenStack install |
| hosts: head |
| roles: |
| - juju-setup |
| |
| - name: XOS setup |
| hosts: head |
| roles: |
| - { role: xos-build, when: xos_container_rebuild } |
| - xos-install |
| |
| - name: Finish OpenStack install |
| hosts: head |
| roles: |
| - juju-finish |
| |
| - name: Set up VMs |
| hosts: head |
| roles: |
| - onos-vm-install |
| |
| - name: Start ONOS and XOS |
| hosts: head |
| roles: |
| - docker-compose |
| - xos-config |
| - xos-head-start |
| |
| - name: Set up Automated Compute Node Provisioning |
| hosts: head |
| roles: |
| - { role: automation-integration, when: on_maas } |
| |
| - name: Prologue |
| hosts: head |
| roles: |
| - head-prologue |