create network role and include it into base (only openbsd does something)
This commit is contained in:
parent
ba0c70532f
commit
dd19c94511
9 changed files with 101 additions and 0 deletions
|
@ -61,6 +61,7 @@
|
|||
include_role:
|
||||
name: "{{ role }}"
|
||||
with_items:
|
||||
- network
|
||||
- opensmtpd
|
||||
- pki
|
||||
- psacct
|
||||
|
|
3
roles/network/defaults/main.yml
Normal file
3
roles/network/defaults/main.yml
Normal file
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
network_ether_interfaces: []
|
||||
network_carp_interfaces: []
|
4
roles/network/handlers/main.yml
Normal file
4
roles/network/handlers/main.yml
Normal file
|
@ -0,0 +1,4 @@
|
|||
- block:
|
||||
- name: restart network
|
||||
command: /bin/sh /etc/netstart
|
||||
when: ansible_os_family == "OpenBSD"
|
37
roles/network/tasks/OpenBSD.yml
Normal file
37
roles/network/tasks/OpenBSD.yml
Normal file
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
|
||||
- name: create ethernet interface configurations
|
||||
template:
|
||||
src: hostname.if.j2
|
||||
dest: "/etc/hostname.{{ item.device }}"
|
||||
mode: 0600
|
||||
owner: root
|
||||
group: "{{ ansible_wheel }}"
|
||||
with_items: "{{ network_ether_interfaces }}"
|
||||
notify: restart network
|
||||
|
||||
- block:
|
||||
- name: create carp interface configurations
|
||||
template:
|
||||
src: hostname.carp.j2
|
||||
dest: "/etc/hostname.carp{{ item.vhid }}"
|
||||
mode: 0600
|
||||
owner: root
|
||||
group: "{{ ansible_wheel }}"
|
||||
with_items: "{{ network_carp_interfaces }}"
|
||||
notify: restart network
|
||||
- name: enable carp preempt
|
||||
sysctl:
|
||||
name: net.inet.carp.preempt
|
||||
value: 1
|
||||
when: network_carp_interfaces != []
|
||||
|
||||
- name: set default gateway
|
||||
copy:
|
||||
content: "{{ network_default_gateway }}\n"
|
||||
dest: /etc/mygate
|
||||
mode: 0600
|
||||
owner: root
|
||||
group: "{{ ansible_wheel }}"
|
||||
notify: restart network
|
||||
when: network_default_gateway is defined
|
1
roles/network/tasks/RedHat.yml
Normal file
1
roles/network/tasks/RedHat.yml
Normal file
|
@ -0,0 +1 @@
|
|||
---
|
12
roles/network/tasks/main.yml
Normal file
12
roles/network/tasks/main.yml
Normal file
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
- name: include os spcific tasks
|
||||
include_tasks: "{{ ansible_os_family }}.yml"
|
||||
|
||||
- name: create resolv.conf
|
||||
template:
|
||||
src: resolv.conf.j2
|
||||
dest: /etc/resolv.conf
|
||||
mode: 0644
|
||||
owner: root
|
||||
group: "{{ ansible_wheel }}"
|
||||
when: network_dns_servers is defined
|
20
roles/network/templates/hostname.carp.j2
Normal file
20
roles/network/templates/hostname.carp.j2
Normal file
|
@ -0,0 +1,20 @@
|
|||
vhid {{ item.vhid }}
|
||||
pass {{ item.pass }}
|
||||
carpdev {{ item.device }}
|
||||
{% if item.proto is not defined or item.proto == 'static' %}
|
||||
inet {{ item.ipaddr }} {{ item.netmask }}
|
||||
{% elif item.proto == 'dhcp' %}
|
||||
dhcp
|
||||
{% elif item.proto == 'none' %}
|
||||
up
|
||||
{% endif %}
|
||||
{% if item.ip6addr is defined %}
|
||||
{% if item.ip6addr == 'auto' %}
|
||||
rtsol
|
||||
{% elif item.ip6addr != 'none' %}
|
||||
inet6 alias {{ item.ip6addr }} {{ item.ip6netmask }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if item.advskew is defined %}
|
||||
advskew {{ item.advskew }}
|
||||
{% endif %}
|
17
roles/network/templates/hostname.if.j2
Normal file
17
roles/network/templates/hostname.if.j2
Normal file
|
@ -0,0 +1,17 @@
|
|||
{% if item.proto is not defined or item.proto == 'static' %}
|
||||
inet {{ item.ipaddr }} {{ item.netmask }}
|
||||
{% elif item.proto == 'dhcp' %}
|
||||
dhcp
|
||||
{% elif item.proto == 'none' %}
|
||||
up
|
||||
{% endif %}
|
||||
{% if item.ip6addr is defined %}
|
||||
{% if item.ip6addr == 'auto' %}
|
||||
inet6 autoconfig
|
||||
{% elif ip6addr != 'none' %}
|
||||
inet6 alias {{ item.ip6addr }} {{ item.ip6netmask }}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if item.postcmd is defined %}
|
||||
{{ postcmd }}
|
||||
{% endif %}
|
6
roles/network/templates/resolv.conf.j2
Normal file
6
roles/network/templates/resolv.conf.j2
Normal file
|
@ -0,0 +1,6 @@
|
|||
{% if network_dns_search is defined %}
|
||||
search {{ network_dns_search|join(' ') }}
|
||||
{% endif %}
|
||||
{% for addr in network_dns_servers %}
|
||||
nameserver {{ addr }}
|
||||
{% endfor %}
|
Loading…
Add table
Reference in a new issue