Defined Type: profile::lvs::tagged_interface

Defined in:
modules/profile/manifests/lvs/tagged_interface.pp

Overview

SPDX-License-Identifier: Apache-2.0

Parameters:

  • interfaces (Hash[String, Hash])
  • ipip_enabled (Boolean)


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'modules/profile/manifests/lvs/tagged_interface.pp', line 2

define profile::lvs::tagged_interface(
    Hash[String, Hash] $interfaces,
    Boolean $ipip_enabled,
) {
    $vlan_info = $interfaces[$title]
    $vlan_id = $vlan_info['id']
    if $::hostname in $vlan_info['iface'] {
        $iface_str = $vlan_info['iface'][$::hostname]
        $iface = split($iface_str, ':')
        $tag = "${iface[0]}.${vlan_id}"

        interface::tagged { $tag:
            base_interface     => $iface[0],
            vlan_id            => $vlan_id,
            address            => $iface[1],
            netmask            => $vlan_info['netmask'],
            legacy_vlan_naming => false,
        }

        interface::clsact { $tag:
            ensure    => stdlib::ensure($ipip_enabled),
            interface => "vlan${vlan_id}",
        }
    }
}