Massimiliano (Max)
04/26/2022, 1:30 PM$networks = ['192.168.0.0', '192.168.10.0']
$ports = ['udp:53', 'udp:57', 'udp:100']
$networks.each | $net | {
$combined = $ports.map |$net| { "${networks},${net}" }
}
Slackbot
04/26/2022, 1:31 PMAllahshukur Ahmadzada
04/26/2022, 2:02 PMbastelfreak
04/26/2022, 2:36 PMbastelfreak
04/26/2022, 2:37 PMMassimiliano (Max)
04/26/2022, 3:26 PMPuppet::Functions.create_function(:'XXXX_iptables::combine_ip_port') do
dispatch :combine_elements do
param 'Array', :networks
param 'Array', :ports
return_type 'Array'
end
def combine_elements(networks, ports)
length_networks = networks.length
net_result = []
net_hash = {}
(1..length_networks).each do | net_count |
array_count = net_count - 1
net_hash[net_count] = ports.map { |string| "#{networks[array_count]},#{string}" }
end
net_hash.each do |net_key, net_value|
net_result.push(net_hash[net_key])
end
net_result
end
Massimiliano (Max)
04/26/2022, 3:32 PMPuppet::Functions.create_function(:'geant_iptables::combine_ip_port') do
dispatch :combine_elements do
param 'Array', :networks
param 'Array', :ports
return_type 'Array'
end
def combine_elements(networks, ports)
length_networks = networks.length
result = []
net_hash = {}
(1..length_networks).each do |net_count|
array_count = net_count - 1
net_hash[net_count] = ports.map { |string| "#{networks[array_count]},#{string}" }
end
net_hash.each do |net_key, _net_value|
net_result.push(net_hash[net_key])
end
result
end
end
Massimiliano (Max)
04/26/2022, 3:32 PMMassimiliano (Max)
04/26/2022, 3:41 PMPuppet::Functions.create_function(:'geant_iptables::combine_ip_port') do
dispatch :combine_elements do
param 'Array', :networks
param 'Array', :ports
return_type 'Array'
end
def combine_elements(networks, ports)
length_networks = networks.length
result = []
net_hash = {}
(1..length_networks).each do |net_count|
array_count = net_count - 1
net_hash[net_count] = ports.map { |string| "#{networks[array_count]},#{string}" }
end
net_hash.each do |net_key, _net_value|
result.push(net_hash[net_key])
end
result
end
end
Slackbot
04/26/2022, 3:45 PMAllahshukur Ahmadzada
04/26/2022, 3:46 PMMassimiliano (Max)
04/26/2022, 3:54 PMPuppet::Functions.create_function(:'geant_iptables::combine_ip_port') do
dispatch :combine_elements do
param 'Array', :networks
param 'Array', :ports
return_type 'Array'
end
def combine_elements(networks, ports)
length_networks = networks.length
result = []
net_hash = {}
(1..length_networks).each do |net_count|
array_count = net_count - 1
net_hash[net_count] = ports.map { |string| "#{networks[array_count]},#{string}" }
end
net_hash.each do |net_key, _net_value|
result.push(net_hash[net_key])
end
result.flatten
end
end
Dr Bunsen Honeydew
04/26/2022, 4:45 PMhbui
04/26/2022, 6:19 PMnatemccurdy
04/26/2022, 6:23 PMhbui
04/26/2022, 6:25 PMhbui
04/26/2022, 6:35 PMhbui
04/26/2022, 6:39 PMnatemccurdy
04/26/2022, 6:41 PMnatemccurdy
04/26/2022, 6:43 PMnatemccurdy
04/26/2022, 6:43 PMnatemccurdy
04/26/2022, 6:43 PMRobert Emanuele
04/26/2022, 7:29 PMnatemccurdy
04/26/2022, 7:32 PMnatemccurdy
04/26/2022, 7:32 PM$trusted
hash.
But this module from the Forge adds them as local facts, which means you can access them with `Facter.value()`:
https://forge.puppet.com/modules/jesse/certificate_extensions_factsbastelfreak
04/26/2022, 7:33 PMRobert Emanuele
04/26/2022, 7:34 PMbastelfreak
04/26/2022, 7:34 PMbastelfreak
04/26/2022, 7:34 PM