network: Support macvlan driver
This commit is contained in:
2
roles/network/defaults/main.yaml
Normal file
2
roles/network/defaults/main.yaml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
network_driver: bridge
|
||||||
7
roles/network/handlers/main.yaml
Normal file
7
roles/network/handlers/main.yaml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
- name: Restart network service {{ network_name }}
|
||||||
|
ansible.builtin.systemd_service:
|
||||||
|
name: "{{ network_name }}-network.service"
|
||||||
|
state: restarted
|
||||||
|
daemon_reload: true
|
||||||
|
ignore_errors: "{{ ansible_check_mode }}"
|
||||||
@@ -7,3 +7,11 @@ argument_specs:
|
|||||||
description: Name of the network. Must be unique within a host.
|
description: Name of the network. Must be unique within a host.
|
||||||
type: str
|
type: str
|
||||||
required: true
|
required: true
|
||||||
|
network_driver:
|
||||||
|
description: Driver to manage the network
|
||||||
|
type: str
|
||||||
|
required: false
|
||||||
|
default: bridge
|
||||||
|
choices:
|
||||||
|
- bridge
|
||||||
|
- macvlan
|
||||||
|
|||||||
@@ -1,10 +1,16 @@
|
|||||||
---
|
---
|
||||||
- name: "Create container network service {{ network_name }}"
|
- name: Create container network service {{ network_name }}
|
||||||
containers.podman.podman_network:
|
containers.podman.podman_network:
|
||||||
name: "{{ network_name }}"
|
name: "{{ network_name }}"
|
||||||
state: quadlet
|
state: quadlet
|
||||||
quadlet_file_mode: "0644"
|
quadlet_file_mode: "0644"
|
||||||
notify: Reload systemd daemon
|
driver: "{{ network_driver }}"
|
||||||
|
quadlet_options: >-
|
||||||
|
{{
|
||||||
|
['Options=parent=' ~ ansible_default_ipv4.interface]
|
||||||
|
if network_driver == 'macvlan' else []
|
||||||
|
}}
|
||||||
|
notify: Restart network service {{ network_name }}
|
||||||
|
|
||||||
- name: Add network to created networks variable
|
- name: Add network to created networks variable
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
|
|||||||
Reference in New Issue
Block a user