---
# Play: set up head node
# Assumes basic /etc/ansible/hosts file
- hosts: cloudlab-head
  sudo: yes
  tasks:

  - apt: name={{ item }}
    with_items:
    - python-pycurl
    - software-properties-common

  - name: Add Juju repository
    apt_repository: repo="ppa:juju/stable"

  - name: Add Ansible repository
    apt_repository: repo="ppa:ansible/ansible"

  - name: Update Ansible cache
    apt: update_cache=yes

  - name: Install packages
    apt: name={{ item }} state=latest
    with_items:
    - ansible
    - uvtool
    - git
    - bzr
    - juju-core

  - name: Get juju-ansible git repo
    git: repo=https://github.com/cmars/juju-ansible.git
      dest=/usr/local/src/juju-ansible

  - name: Set up juju-ansible symlink
    file: dest=/usr/local/bin/juju-ansible
      src=/usr/local/src/juju-ansible/juju-ansible
      state=link

  - name: Set up juju-ansible-playbook symlink
    file: dest=/usr/local/bin/juju-ansible-playbook
      src=/usr/local/src/juju-ansible/juju-ansible
      state=link

  - name: Generate key to use in VMs
    user: name={{ ansible_env['SUDO_USER'] }} generate_ssh_key=yes

  - name: Set up extra space on CloudLab nodes
    shell: /usr/testbed/bin/mkextrafs /var/lib/uvtool/libvirt/images
      creates=/var/lib/uvtool/libvirt/images/lost+found

  - name: Add myself to libvirtd group
    user: name={{ ansible_env['SUDO_USER'] }}
      groups=libvirtd
      append=yes

  - name: Get trusty image for uvtool
    shell: uvt-simplestreams-libvirt sync --source http://cloud-images.ubuntu.com/daily release=trusty arch=amd64

  - name: Create VMs to host OpenCloud services
    sudo: no
    script: scripts/create-vms.sh

  - include: tasks/vm-ips.yml

  - name: Add VMs to /etc/hosts
    template: src=templates/etc/hosts.j2
      dest=/etc/hosts
    notify:
    - Reload dnsmasq

  - name: Set up /etc/ansible/hosts
    template: src=templates/etc/ansible/hosts.j2
      dest=/etc/ansible/hosts

  - name: Copy ansible.cfg to disable host key checking
    sudo: no
    copy: src=files/ansible.cfg
      dest={{ ansible_env['PWD'] }}/.ansible.cfg

  - name: Touch ~/.ssh/config
    sudo: no
    file: path={{ ansible_env['PWD'] }}/.ssh/config state=touch

  - name: Disable host key checking in SSH
    sudo: no
    lineinfile: dest={{ ansible_env['PWD'] }}/.ssh/config
      line="StrictHostKeyChecking no"

  - name: Test that we can log into every VM
    sudo: no
    shell: ansible services -m ping -u ubuntu

  handlers:
  - name: Reload dnsmasq
    shell: killall -HUP dnsmasq

# Play: Install services using Juju
- hosts: cloudlab-head
  vars:
    charm_src: /usr/local/src/charms/trusty
  tasks:
  - name: Initialize Juju
    sudo: no
    shell: juju generate-config
      creates={{ ansible_env['PWD'] }}/.juju/environments.yaml

  - shell: uvt-kvm ip juju
    register: juju_ip

  - name: Juju config file
    sudo: no
    template: src=templates/environments.yaml.j2
      dest={{ ansible_env['PWD'] }}/.juju/environments.yaml

  - name: Bootstrap Juju
    sudo: no
    shell: juju bootstrap
      creates={{ ansible_env['PWD'] }}/.juju/environments/manual.jenv

  # - pause: Break here and try rebooting Juju VM

  - name: Copy openstack.cfg for Juju
    sudo: yes
    copy: src=files/openstack.cfg
      dest=/usr/local/src/openstack.cfg

  - name: Check for /usr/local/src/charms/trusty
    sudo: yes
    file: path={{ charm_src }}
       state=directory
       mode=0755

  - name: Deploy OpenStack services with Juju
    script: scripts/juju-setup.py

  - name: Add all Juju relations between services
    script: scripts/juju-relations.py

  - pause: prompt="Wait for relations to be fully added"

# Play: Use libvirt hooks to set up iptables
- hosts: cloudlab-head
  sudo: yes
  tasks:
  - name: Enable port forwarding for services
    copy: src=files/{{ item }}
      dest={{ item }}
      mode=0755
    notify:
    - reload libvirt config
    - run qemu hook
    with_items:
    - /etc/libvirt/hooks/daemon
    - /etc/libvirt/hooks/qemu

  handlers:
  - name: reload libvirt config
    shell: killall -HUP libvirtd

  - name: run qemu hook
    shell: /etc/libvirt/hooks/qemu start start

# Play: Create credentials, set up some basic OpenStack
- hosts: cloudlab-head
  sudo: no
  tasks:

  - name: Get keystone admin password
    shell: juju run --unit=keystone/0 "sudo cat /var/lib/keystone/keystone.passwd"
    register: keystone_password

  - shell: uvt-kvm ip keystone
    register: keystone_ip

  - name: Create credentials
    template: src=templates/admin-openrc.sh.j2
     dest={{ ansible_env['PWD'] }}/admin-openrc.sh

  - name: Copy credentials to nova-cloud-controller
    shell: "scp admin-openrc.sh ubuntu@nova-cloud-controller:"

  - name: Copy network setup script
    sudo: yes
    copy: src=scripts/network-setup.sh
      dest=/usr/local/src/network-setup.sh
      mode=0644

  - name: Run network setup script
    shell: ansible nova-cloud-controller -m script -u ubuntu -a "/usr/local/src/network-setup.sh"

  - name: Get public key
    shell: cat {{ ansible_env['PWD'] }}/.ssh/id_rsa.pub
    register: sshkey

- hosts: cloudlab-compute
  sudo: yes
  vars:
    control_net: 192.168.122.0/24
    gateway: "{{ hostvars['ctl.install.xos-pg0.clemson.cloudlab.us']['ansible_default_ipv4']['address'] }}"
  tasks:
  - name: Install package needed by Juju
    apt: name=python-yaml state=present

  - name: Add key
    authorized_key: user="{{ ansible_env['SUDO_USER'] }}"
      key="{{ hostvars['ctl.install.xos-pg0.clemson.cloudlab.us']['sshkey']['stdout'] }}"

  - name: Add route via /etc/rc.local
    template: src=templates/etc/rc.local.cloudlab
      dest=/etc/rc.local
      mode=0755
    notify:
    - run /etc/rc.local

  - name: Touch ~/.ssh/config
    file: path=/var/lib/nova state=directory

  - name: Set up extra space on CloudLab nodes
    shell: /usr/testbed/bin/mkextrafs /var/lib/nova
      creates=/var/lib/nova/lost+found

  handlers:
  - name: run /etc/rc.local
    shell: /etc/rc.local
