| 
									
										
										
										
											2019-06-29 16:21:47 +00:00
										 |  |  | - name: Create T-Pot name
 | 
					
						
							| 
									
										
										
										
											2019-07-02 08:44:58 +00:00
										 |  |  |   shell: echo t-pot-ansible-$(pwgen -ns 6 -1)
 | 
					
						
							| 
									
										
										
										
											2019-06-29 16:21:47 +00:00
										 |  |  |   register: tpot_name
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - name: Import OpenStack authentication variables
 | 
					
						
							|  |  |  |   include_vars:
 | 
					
						
							|  |  |  |     file: roles/deploy/vars/os_auth.yaml
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-08-13 09:16:02 +00:00
										 |  |  | - name: Create security group
 | 
					
						
							|  |  |  |   os_security_group:
 | 
					
						
							|  |  |  |     auth:
 | 
					
						
							|  |  |  |       auth_url: "{{ auth_url }}"
 | 
					
						
							|  |  |  |       username: "{{ username }}"
 | 
					
						
							|  |  |  |       password: "{{ password }}"
 | 
					
						
							|  |  |  |       project_name: "{{ project_name }}"
 | 
					
						
							|  |  |  |       os_user_domain_name: "{{ os_user_domain_name }}"
 | 
					
						
							|  |  |  |     name: sg-tpot-any
 | 
					
						
							|  |  |  |     description: tpot any-any
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-08-13 10:31:46 +00:00
										 |  |  | - name: Add rules to security group
 | 
					
						
							|  |  |  |   os_security_group_rule:
 | 
					
						
							|  |  |  |     auth:
 | 
					
						
							|  |  |  |       auth_url: "{{ auth_url }}"
 | 
					
						
							|  |  |  |       username: "{{ username }}"
 | 
					
						
							|  |  |  |       password: "{{ password }}"
 | 
					
						
							|  |  |  |       project_name: "{{ project_name }}"
 | 
					
						
							|  |  |  |       os_user_domain_name: "{{ os_user_domain_name }}"
 | 
					
						
							|  |  |  |     security_group: sg-tpot-any
 | 
					
						
							|  |  |  |     remote_ip_prefix: 0.0.0.0/0
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-08-13 12:00:19 +00:00
										 |  |  | - name: Create network
 | 
					
						
							|  |  |  |   os_network:
 | 
					
						
							|  |  |  |     auth:
 | 
					
						
							|  |  |  |       auth_url: "{{ auth_url }}"
 | 
					
						
							|  |  |  |       username: "{{ username }}"
 | 
					
						
							|  |  |  |       password: "{{ password }}"
 | 
					
						
							|  |  |  |       project_name: "{{ project_name }}"
 | 
					
						
							|  |  |  |       os_user_domain_name: "{{ os_user_domain_name }}"
 | 
					
						
							|  |  |  |     name: network-tpot
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - name: Create subnet
 | 
					
						
							|  |  |  |   os_subnet:
 | 
					
						
							|  |  |  |     auth:
 | 
					
						
							|  |  |  |       auth_url: "{{ auth_url }}"
 | 
					
						
							|  |  |  |       username: "{{ username }}"
 | 
					
						
							|  |  |  |       password: "{{ password }}"
 | 
					
						
							|  |  |  |       project_name: "{{ project_name }}"
 | 
					
						
							|  |  |  |       os_user_domain_name: "{{ os_user_domain_name }}"
 | 
					
						
							|  |  |  |     network_name: network-tpot
 | 
					
						
							|  |  |  |     name: subnet-tpot
 | 
					
						
							|  |  |  |     cidr: 192.168.0.0/24
 | 
					
						
							|  |  |  |     dns_nameservers:
 | 
					
						
							|  |  |  |       - 1.1.1.1
 | 
					
						
							|  |  |  |       - 8.8.8.8
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - name: Create router
 | 
					
						
							|  |  |  |   os_router:
 | 
					
						
							|  |  |  |     auth:
 | 
					
						
							|  |  |  |       auth_url: "{{ auth_url }}"
 | 
					
						
							|  |  |  |       username: "{{ username }}"
 | 
					
						
							|  |  |  |       password: "{{ password }}"
 | 
					
						
							|  |  |  |       project_name: "{{ project_name }}"
 | 
					
						
							|  |  |  |       os_user_domain_name: "{{ os_user_domain_name }}"
 | 
					
						
							|  |  |  |     name: router-tpot
 | 
					
						
							|  |  |  |     interfaces:
 | 
					
						
							|  |  |  |       - subnet-tpot
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-06-29 16:21:47 +00:00
										 |  |  | - name: Launch an instance
 | 
					
						
							|  |  |  |   os_server:
 | 
					
						
							|  |  |  |     auth:
 | 
					
						
							|  |  |  |       auth_url: "{{ auth_url }}"
 | 
					
						
							|  |  |  |       username: "{{ username }}"
 | 
					
						
							|  |  |  |       password: "{{ password }}"
 | 
					
						
							|  |  |  |       project_name: "{{ project_name }}"
 | 
					
						
							|  |  |  |       os_user_domain_name: "{{ os_user_domain_name }}"
 | 
					
						
							|  |  |  |     name: "{{ tpot_name.stdout }}"
 | 
					
						
							|  |  |  |     region_name: "{{ region_name }}"
 | 
					
						
							|  |  |  |     availability_zone: "{{ availability_zone }}"
 | 
					
						
							|  |  |  |     image: "{{ image }}"
 | 
					
						
							|  |  |  |     boot_from_volume: yes
 | 
					
						
							|  |  |  |     volume_size: "{{ volume_size }}"
 | 
					
						
							|  |  |  |     key_name: "{{ key_name }}"
 | 
					
						
							|  |  |  |     timeout: 200
 | 
					
						
							|  |  |  |     flavor: "{{ flavor }}"
 | 
					
						
							| 
									
										
										
										
											2019-08-13 10:31:46 +00:00
										 |  |  |     security_groups: sg-tpot-any
 | 
					
						
							| 
									
										
										
										
											2019-08-13 12:00:19 +00:00
										 |  |  |     network: network-tpot
 | 
					
						
							| 
									
										
										
										
											2019-06-29 16:21:47 +00:00
										 |  |  |   register: tpot
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | - name: Add instance to inventory
 | 
					
						
							|  |  |  |   add_host:
 | 
					
						
							|  |  |  |     hostname: "{{ tpot_name.stdout }}"
 | 
					
						
							|  |  |  |     ansible_host: "{{ tpot.server.public_v4 }}"
 | 
					
						
							|  |  |  |     groups: TPOT
 |