2d5fd703a0
Ensure all references to the Ansible control host are worded as such, to ensure consistency and avoid potential confusion with the OpenStack controllers. Change-Id: Id92e537ccbfdd55287b8eae296f649640c70ce17
41 lines
1.4 KiB
YAML
41 lines
1.4 KiB
YAML
---
|
|
# Facts may not be available for the Ansible control host, so read the OS
|
|
# release manually.
|
|
- name: Check the OS release
|
|
local_action:
|
|
module: shell . /etc/os-release && echo $ID
|
|
changed_when: False
|
|
register: ip_allocation_os_release
|
|
|
|
- name: Include RedHat family-specific variables
|
|
include_vars: "RedHat.yml"
|
|
when: ip_allocation_os_release.stdout in ['centos', 'fedora', 'rhel']
|
|
|
|
- name: Include Debian family-specific variables
|
|
include_vars: "Debian.yml"
|
|
when: ip_allocation_os_release.stdout in ['debian', 'ubuntu']
|
|
|
|
# Note: Currently we install these using the system package manager rather than
|
|
# pip to a virtualenv. This is because Yum is required elsewhere and cannot
|
|
# easily be installed in a virtualenv.
|
|
- name: Ensure package dependencies are installed
|
|
local_action:
|
|
module: package
|
|
name: "{{ item }}"
|
|
state: installed
|
|
use: "{{ ip_allocation_package_manager }}"
|
|
become: True
|
|
with_items: "{{ ip_allocation_package_dependencies }}"
|
|
run_once: True
|
|
|
|
- name: Ensure IP addresses are allocated
|
|
local_action:
|
|
module: ip_allocation
|
|
allocation_file: "{{ ip_allocation_filename }}"
|
|
hostname: "{{ ip_allocation_hostname }}"
|
|
net_name: "{{ item.net_name }}"
|
|
cidr: "{{ item.cidr }}"
|
|
allocation_pool_start: "{{ item.allocation_pool_start | default(omit) }}"
|
|
allocation_pool_end: "{{ item.allocation_pool_end | default(omit) }}"
|
|
with_items: "{{ ip_allocations }}"
|