2018-09-21 16:49:45 +00:00

37 lines
994 B
YAML

---
- name: Create veth pair
command: >-
ip link add dev {{ veth_pair_ovs_link_name }}
type veth
peer name {{ veth_pair_source_link_name }}
register: res
changed_when: res.rc == 0
# Return code 2 means the veth pair already exists
failed_when: res.rc not in [0, 2]
become: true
- name: Bring each end of veth up
command: ip link set {{ item }} up
loop:
- "{{ veth_pair_ovs_link_name }}"
- "{{ veth_pair_source_link_name }}"
become: true
- name: Plug veth into OVS bridge
openvswitch_port:
bridge: "{{ veth_pair_ovs_bridge }}"
port: "{{ veth_pair_ovs_link_name }}"
become: true
- name: Plug veth into source bridge
command: >-
brctl addif {{ veth_pair_source_bridge }}
{{ veth_pair_source_link_name }}
register: res
failed_when:
- res.rc != 0
- "'already a member of a bridge' not in res.stderr"
changed_when: "'already a member of a bridge' not in res.stderr"
when: veth_pair_plug_into_source | bool
become: true