Merge pull request #13 from webfactory/cvs_module_name

Suggested fix for (#10751) by adding a "module" parameter
This commit is contained in:
James Turnbull 2011-11-26 00:51:03 -08:00
commit b4d763cef6
2 changed files with 11 additions and 2 deletions

View File

@ -5,7 +5,7 @@ Puppet::Type.type(:vcsrepo).provide(:cvs, :parent => Puppet::Provider::Vcsrepo)
optional_commands :cvs => 'cvs'
defaultfor :cvs => :exists
has_features :gzip_compression, :reference_tracking
has_features :gzip_compression, :reference_tracking, :modules
def create
if !@resource.value(:source)
@ -72,7 +72,9 @@ Puppet::Type.type(:vcsrepo).provide(:cvs, :parent => Puppet::Provider::Vcsrepo)
# When the source:
# * Starts with ':' (eg, :pserver:...)
def module_name
if (source = @resource.value(:source))
if (m = @resource.value(:module))
m
elsif (source = @resource.value(:source))
source[0, 1] == ':' ? File.basename(source) : '.'
end
end

View File

@ -22,6 +22,9 @@ Puppet::Type.newtype(:vcsrepo) do
feature :ssh_identity,
"The provider supports a configurable SSH identity file"
feature :modules,
"The repository contains modules that can be chosen of"
ensurable do
attr_accessor :latest
@ -148,4 +151,8 @@ Puppet::Type.newtype(:vcsrepo) do
newparam :identity, :required_features => [:ssh_identity] do
desc "SSH identity file"
end
newparam :module, :required_features => [:modules] do
desc "The repository module to manage"
end
end