forked from voxpupuli/puppet-mongodb
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmongodb_password.rb
41 lines (34 loc) · 1.26 KB
/
mongodb_password.rb
1
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# This is an autogenerated function, ported from the original legacy version.
# It /should work/ as is, but will not have all the benefits of the modern
# function API. You should see the function docs to learn how to add function
# signatures for type safety and to document this function using puppet-strings.
#
# https://puppet.com/docs/puppet/latest/custom_functions_ruby.html
#
# ---- original file header ----
require 'digest/md5'
# ---- original file header ----
#
# @summary
# Returns the mongodb password hash from the clear text password.
#
#
Puppet::Functions.create_function(:'mongodb::mongodb_password') do
# @param args
# The original array of arguments. Port this to individually managed params
# to get the full benefit of the modern function API.
#
# @return [Data type]
# Describe what the function returns here
#
dispatch :default_impl do
# Call the method named 'default_impl' when this is matched
# Port this to match individual params for better type safety
repeated_param 'Any', :args
end
def default_impl(*args)
raise(Puppet::ParseError, 'mongodb_password(): Wrong number of arguments ' +
"given (#{args.size} for 2)") if args.size != 2
Digest::MD5.hexdigest("#{args[0]}:mongo:#{args[1]}")
end
end