blob: ef1e1697cbf0039d974ac8f895795e8356dfab81 [file] [log] [blame]
---
# 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 }
- create-lxd
- 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-cord-install
- onos-fabric-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