Puppet Function: wmflib::service::get_ipport_for_ipip_services
- Defined in:
- modules/wmflib/functions/service/get_ipport_for_ipip_services.pp
- Function type:
- Puppet Language
Overview
SPDX-License-Identifier: Apache-2.0
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'modules/wmflib/functions/service/get_ipport_for_ipip_services.pp', line 2
function wmflib::service::get_ipport_for_ipip_services(
Hash[String, Wmflib::Service] $services,
String $site,
) >> Array[String] {
$services.filter |$lvs_name, $svc| {
$site in $svc['ip'] and $svc['lvs'] and $svc['lvs']['ipip_encapsulation']
}
.map |$lvs_name, $svc| {
$svc['ip'][$site].values().map|Stdlib::IP::Address $ip| {
$ip_port = $ip? {
Stdlib::IP::Address::V4 => "${ip}:${svc['port']}",
Stdlib::IP::Address::V6 => "[${ip}]:${svc['port']}",
}
}
}
.flatten()
.unique()
.sort()
}
|