From cb2efcdfaa1f9b6d8c78208151d4b4ebd4e35885 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 22 Feb 2010 19:40:07 -0600 Subject: Initial commit --- lib/puppet/type/vcsrepo.rb | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 lib/puppet/type/vcsrepo.rb (limited to 'lib/puppet/type/vcsrepo.rb') diff --git a/lib/puppet/type/vcsrepo.rb b/lib/puppet/type/vcsrepo.rb new file mode 100644 index 0000000..7db571e --- /dev/null +++ b/lib/puppet/type/vcsrepo.rb @@ -0,0 +1,31 @@ +require 'pathname' + +Puppet::Type.newtype(:vcsrepo) do + desc "A local version control repository" + + ensurable + + newparam(:path) do + desc "Absolute path to repository" + isnamevar + validate do |value| + path = Pathname.new(value) + unless path.absolute? + raise ArgumentError, "Path must be absolute: #{path}" + end + end + end + + newparam(:source) do + desc "The source URL for the repository" + validate do |value| + URI.parse(value) + end + end + + newproperty(:revision) do + desc "The revision of the repository" + newvalue(/^\S+$/) + end + +end -- cgit v1.2.3