4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/puppet/parser/functions/evaluate_version.rb', line 4
newfunction(:evaluate_version, :type => :rvalue) do |args|
raise(Puppet::ParseError, 'evaluate_version(): too few arguments') if args.empty?
version = args[0]
return get_latest_version if version == 'latest'
return get_lts_version if version == 'lts'
if version =~ /^(?:(v)?)[0-9]+\.[0-9]+\.[0-9]+/
return 'v' + version if version =~ /^[^v](.*)/
return version
end
return get_version_from_branch version if version =~ /^(?:(v)?)[0-9]+\.([0-9]+|x)$/
raise Puppet::ParseError, 'evaluate_version(): version must be `lts`, `latest` or look like `x.x.x`'
end
|