| --- |
| - hosts: 127.0.0.1 |
| connection: local |
| tasks: |
| - os_network: |
| name: {{ name }} |
| shared: true |
| {% if not delete -%} |
| state: present |
| {% else -%} |
| state: absent |
| {% endif -%} |
| auth: |
| auth_url: {{ endpoint }} |
| username: {{ admin_user }} |
| password: {{ admin_password }} |
| project_name: {{ admin_project }} |
| |
| {% if not delete %} |
| - os_subnet: |
| name: {{ subnet_name }} |
| network_name: {{ name }} |
| {% if not delete -%} |
| state: present |
| cidr: {{ cidr }} |
| dns_nameservers: 8.8.8.8 |
| {% if use_vtn -%} |
| gateway_ip: {{ gateway }} |
| {% endif -%} |
| {% if start_ip -%} |
| allocation_pool_start: {{ start_ip }} |
| {% endif -%} |
| {% if end_ip -%} |
| allocation_pool_end: {{ end_ip }} |
| {% endif -%} |
| {% else -%} |
| state: absent |
| {% endif -%} |
| auth: |
| auth_url: {{ endpoint }} |
| username: {{ admin_user }} |
| password: {{ admin_password }} |
| project_name: {{ admin_project }} |
| |
| {% if not use_vtn -%} |
| # until we get 'no-gateway-ip' arg to os_subnet, in Ansible 2.2 |
| # https://github.com/ansible/ansible-modules-core/pull/3736 |
| - command: |
| neutron \ |
| --os-auth-url {{ endpoint }} \ |
| --os-username {{ admin_user }} \ |
| --os-password {{ admin_password }} \ |
| --os-tenant-name {{ admin_project }} \ |
| subnet-update --no-gateway {{ subnet_name }} |
| {% endif -%} |
| |
| {% endif %} |
| |