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.
|
||||
type: str
|
||||
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:
|
||||
name: "{{ network_name }}"
|
||||
state: quadlet
|
||||
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
|
||||
ansible.builtin.set_fact:
|
||||
|
||||
Reference in New Issue
Block a user