summaryrefslogtreecommitdiffstats
path: root/lib/puppet
diff options
context:
space:
mode:
authorBrice Figureau <brice-puppet@daysofwonder.com>2008-12-19 17:38:50 +0100
committerJames Turnbull <james@lovedthanlost.net>2009-03-24 08:15:32 +1100
commit081021af4dda0d19e7de7debb580196219bb7c36 (patch)
treeedeacd7c153999cb1a6e59aeb1d1dc279040cb8d /lib/puppet
parent2b33f80d167424abcd153e01aa1a93ae38155120 (diff)
downloadpuppet-081021af4dda0d19e7de7debb580196219bb7c36.tar.gz
puppet-081021af4dda0d19e7de7debb580196219bb7c36.tar.xz
puppet-081021af4dda0d19e7de7debb580196219bb7c36.zip
Fix #1829 - Add puppet function versioncmp to compare versions
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
Diffstat (limited to 'lib/puppet')
-rw-r--r--lib/puppet/parser/functions/versioncmp.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/puppet/parser/functions/versioncmp.rb b/lib/puppet/parser/functions/versioncmp.rb
new file mode 100644
index 000000000..62df38ffc
--- /dev/null
+++ b/lib/puppet/parser/functions/versioncmp.rb
@@ -0,0 +1,10 @@
+require 'puppet/util/package'
+
+Puppet::Parser::Functions::newfunction(:versioncmp, :doc => "Compares two versions.") do |args|
+
+ unless args.length == 2
+ raise Puppet::ParseError, "versioncmp should have 2 arguments"
+ end
+
+ return Puppet::Util::Package.versioncmp(args[0], args[1])
+end