master
1---
2- hosts: dev.controller
3 tasks:
4 - name: Record public IP
5 shell: wget -qO- http://ipecho.net/plain ; echo
6 register: public_ip
7
8- hosts: dev.compute
9 vars:
10 host_ip: "{{ ansible_default_ipv4.address }}"
11 first_ip: "{{ hostvars['dev.controller'].ansible_default_ipv4.address }}"
12 first_public_ip: "{{ hostvars['dev.controller'].public_ip.stdout }}"
13 tasks:
14 - name: Install tools
15 apt: name={{item}} state=latest
16 sudo: yes
17 with_items:
18 - git
19 - htop
20 - vim
21
22 - name: Checkout DevStack
23 git:
24 repo: https://git.openstack.org/openstack-dev/devstack
25 dest: /home/ubuntu/devstack
26
27 - name: Setup local.conf
28 template:
29 src: local.conf.j2
30 dest: /home/ubuntu/devstack/local.conf
31
32 - name: UnStack (idempotency)
33 shell: ./unstack.sh chdir=/home/ubuntu/devstack
34 async: 120
35 poll: 5
36 ignore_errors: yes
37
38 - name: Install DevStack compute node (async)
39 shell: ./stack.sh chdir=/home/ubuntu/devstack
40 async: 900
41 poll: 5
42
43
44