Age | Commit message (Collapse) | Author |
|
'non-repository' at the path. That can be even just an empty directory. This
makes it so further puppet runs cannot ever complete properly, because of this
error:
change from absent to present failed: Could not create repository (non-repository at path)
This requires manual intervention to resolve (ie. removing the directory).
It is possible to pass the 'force => true' parameter to vcsrepo to handle this,
however, all this will do is remove whatever is there, even if it is a valid
repository. That means on every puppet run you get the tree removed and then a
new clone is done. This is less than ideal for a number of reasons.
So this commit adds a test to determine if the location contains a valid
repository and then it is used when 'force => true' to determine if it should
replace the existing content with a fresh clone.
Note: the valid_repo? check is also added to the 'def bare_git_config_exists?'
because the test that is done there is intended to look for a bare git
repository by checking to see if there 'config' is in the directory. This isn't
a particularly robust test because 'config' could be in a directory, when it
isn't a bare git repository (such as is common in a rails app) causing vcsrepo
to mistakenly think it was a proper bare repository, when it isn't.
|
|
SVN provider should check for '^Revision:' and not '^Last Changed Rev:'
|
|
|
|
SVN provider should check for '^Revision:' and not '^Last Changed
Rev:'. Addresses GitHub Issue #43.
|
|
added support for changing upstream repo url - rebase of #74
|
|
|
|
|
|
added checks that the URL of the WC matches the URL from the manifest
changed from using "update" to "switch"
|
|
Try to get Travis to respect the three different puppet versions
|
|
versions, but limit Puppet 2.6.x to Ruby 1.8.7.
|
|
Correct use of withenv
|
|
|
|
|
|
Add support for master svn repositories
|
|
|
|
Pull request related to issue #8331.
I have added support into the exists? method (actually working_copy_exists?) for checking if the path is a master repository, using svnlook. It should be ok in most cases, since svnlook comes with svnadmin in nearly every distribution.
|
|
|
|
|
|
Allow for setting the CVS_RSH environment variable
|
|
|
|
Adding svn configuration parameter, and docs
|
|
|
|
|
|
Enable unlimited nesting for submodule updating
|
|
fix git provider checkout of a remote ref on an existing repo
|
|
Per discussion of https://github.com/puppetlabs/puppetlabs-vcsrepo/issues/51 in
the git channel on freenode, EugeneKay <eugene@kashpureff.org> stated that `git
rev-parse` is not capable of inspecting remote refs but that `git ls-remote`
is. This patch makes a second attempt to resolve the ref with `ls-remote` if
`rev-parse` fails.
The git provider also appears to support several type features that are not
tagged under `has_features`. It's not clear if this is the best way to resolve
this issue or if the provider should be refactored to work with different type
features.
Demonstration of the problem with changing refs (branches and tags)
$ git --version
git version 1.7.1
$ cat master.pp branch.pp
vcsrepo { '/tmp/vcsrepo':
ensure => present,
provider => git,
source => 'https://github.com/puppetlabs/puppetlabs-vcsrepo.git',
revision => 'master',
}
vcsrepo { '/tmp/vcsrepo':
ensure => present,
provider => git,
source => 'https://github.com/puppetlabs/puppetlabs-vcsrepo.git',
revision => 'feature/cvs',
}
$ puppet apply --modulepath=`pwd`/.. master.pp
Notice: /Stage[main]//Vcsrepo[/tmp/vcsrepo]/ensure: Creating repository from present
Notice: /Stage[main]//Vcsrepo[/tmp/vcsrepo]/ensure: created
Notice: Finished catalog run in 2.19 seconds
$ puppet apply --modulepath=`pwd`/.. branch.pp
Error: /Stage[main]//Vcsrepo[/tmp/vcsrepo]: Could not evaluate: Execution of '/usr/bin/git rev-parse feature/cvs' returned 128: fatal: ambiguous argument 'feature/cvs': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions
feature/cvs
Notice: Finished catalog run in 1.69 seconds
|
|
|
|
|
|
Add user and ssh identity to the Mercurial provider.
|
|
hg_with_identity function renamed to hg_wrapper. Added ability to specify a user and an SSH identity.
Added extra options to the ssh command.
Identity and user fixed
Requirement for pp deleted.
|
|
Add travis build-status image
|
|
|
|
|
|
|
|
|
|
Handle force in svn args
|
|
"ensure => latest" support for bzr
|
|
Improve Git SSH usage documentation
|
|
Add timeout to ssh connections
|
|
|
|
|
|
|
|
Fix mocha for specs
|
|
|
|
|
|
other remote connection issues) from blocking the Puppet run
|
|
|
|
|
|
|
|
Update Modulefile for 0.1.2 release to Forge
|