in cookbooks/aws-parallelcluster-slurm/spec/unit/libraries/storage_spec.rb [59:106]
def build_storage_change(type, ownership, action)
storage_identified = case type
when "Ebs", "FsxOntap", "FsxOpenZfs"
"VolumeId"
when "FileCache"
"FileCacheId"
else
"FileSystemId"
end
storage_settings = case ownership
when "external"
{
storage_identified => "STORAGE_ID",
}
when "managed"
{
"SETTING_1" => "VALUE_1",
"SETTING_2" => "VALUE_2",
}
end
case action
when "mount"
current_value = nil
requested_value = {
"MountDir" => "/opt/shared/#{type}/#{ownership}/1",
"Name" => "shared-#{type}-#{ownership}-external-1",
"StorageType" => "#{type}",
"#{type}Settings" => storage_settings,
}
when "unmount"
current_value = {
"MountDir" => "/opt/shared/#{type}/#{ownership}/1",
"Name" => "shared-#{type}-#{ownership}-external-1",
"StorageType" => "#{type}",
"#{type}Settings" => storage_settings,
}
requested_value = nil
else
raise "Unrecognized action #{action}. It must be one of : mount, unmount"
end
{
"parameter" => "SharedStorage",
"currentValue" => current_value,
"requestedValue" => requested_value,
}
end