28 lines
873 B
Ruby
28 lines
873 B
Ruby
# Build Swift devices list from the parts, e.g. for:
|
|
# raw_disk_prefix = 'r1z1-'
|
|
# swift_storage_node_ips = ['192.168.1.12', '192.168.1.13']
|
|
# raw_disks = [':%PORT%/device1', ':%PORT%/device2']
|
|
#
|
|
# devices will be ['r1z1-192.168.1.12:%PORT%/device1',
|
|
# 'r1z1-192.168.1.12:%PORT%/device2'
|
|
# 'r1z1-192.168.1.13:%PORT%/device1'
|
|
# 'r1z1-192.168.1.13:%PORT%/device2']
|
|
Puppet::Functions.create_function(:tripleo_swift_devices) do
|
|
dispatch :tripleo_swift_devices do
|
|
param 'String', :raw_disk_prefix
|
|
param 'Array', :swift_node_ips
|
|
param 'Array', :raw_disks
|
|
end
|
|
|
|
def tripleo_swift_devices(raw_disk_prefix, swift_node_ips, raw_disks)
|
|
devices = []
|
|
for ip in swift_node_ips do
|
|
for disk in raw_disks do
|
|
devices << "#{raw_disk_prefix}#{ip}#{disk}"
|
|
end
|
|
end
|
|
|
|
return devices
|
|
end
|
|
end
|