Age | Commit message (Collapse) | Author |
|
Very often /tmp is mounted noexec for security reasons related to it
being writable by all users. This stopped vcsrepo's git provider from
working.
This pull request uses puppet's statedir as it is not writable by all
users and is a good candidate for transient state like the git
provider's identity script for the $GIT_SSH command.
An alternative in the future that wouldn't require a temporary file is
to set $GIT_SSH_COMMAND instead of $GIT_SSH, except this was added in
git 2.3 and is too new to depend on.
|
|
Shallow clone with one commit that corresponds to arbitrary tag from arbitrary branch
|
|
Add support for 'conflict' parameter to populate svn --accept arg
|
|
Without this commit, the unit tests for the git provider changing
multiple remotes mocks the remotes in a particular order. While in
practice it doesn't matter which remote the update_remotes method
updates first, the unit tests must be able to mock them in the correct
order. For ruby 1.8.7, a Hash will not necessarily produce key value
pairs in the same order on each run, which causes intermittent failures
in the unit tests. This change sorts the :source property values before
trying to update them, and updates the unit tests to expect the values
in alphabetical order.
|
|
|
|
|
|
|
|
Add submodules feature to git provider
|
|
|
|
The `retrieve` method was calling `create` and `destroy` on every run
with `force => true`. Retrieve should not be making any changes to the
system, so removed that code, and updated `working_copy_exists` to make
sure that the directory not only contains a `.git` directory, but also
if `source` is specified it also matches `#{path}/.git/config` so that
it will overwrite a git repo with a different source.
Updated tests to not check for the old broken behavior. Added a regression test.
|
|
The "format" entry in a SVN directory is a file, not a directory.
|
|
|
|
|
|
Change uid by Puppet execution API
|
|
Thanks to @revhazroot for identifying the problem that excludes with a
string or single-element array fails on Ruby >= 1.9.
|
|
|
|
Puppet started raising a warning about multiple default providers due to
a change in puppet. The dummy provider exists to raise an error when
`provider` is not specified because there is no way to declare
`provider` as a required attribute in the type. Even passing a
`provider` value did not get rid of the "multiple default providers
found" warning however.
This commit causes the dummy provider to be the defacto default for all
resources which do not have an explicit provider declared, as the posix
feature is available on basically every operating system on which
vcsrepo works. (There is no way to create an "always default" provider.)
|
|
|
|
Update Markdown with missing Perforce details.
|
|
Previously vcsrepo detached HEAD on checkout which caused further branch
revisions to fail. This corrects the behavior, and works on git 1.7,
1.8, 1.9, and 2.0
|
|
Fix tabs/spaces in p4.rb
|
|
Basic Perforce provider
|
|
Fix issue with node changing every checkin
|
|
|
|
Update noop to work
|
|
|
|
Keys in the Client spec were processed out of order and failing tests.
|
|
|
|
Updated unit tests
Updated hg readme and added examples
|
|
|
|
- Removed p4port, p4client, p4user to keep name space clean.
- Changed notify to Puppet.debug
- Updated markdown and examples
- Updated unit tests
|
|
|
|
Uses param ‘p4passwd’ to set P4PASSWD environment to pass a valid
ticket or password.
|
|
Supports sync and client create/update
|
|
|
|
Update specs and fix FM-1361
|
|
- Add install.rb for pre-suite
- Add catches for failures/changes to manifest application
- Correct root ssh key copying
- Add sleeps for killing processes releasing ports
- Fix FM-1361
|
|
|
|
|
|
|
|
|
|
Use `git rev-parse` to get tag canonical revision
|
|
Only add ssh options to commands that actually talk to the network.
|
|
|
|
At least in Mercurial 2.8.2, --ssh seems to be a command-specific parameter in
contrast to a global one. As a result, local commands error when seeing a --ssh
parameter. This change passes --ssh only for commands that actually talk to the
network ('incoming', 'pull' and 'clone' here).
|
|
|
|
Don't 'su' if passed user is current user
|
|
svnlook expects a sub-directory within a repository called "format"; when using svnlook
within a non-repository directory this causes it to throw an error. Adding a test for
that directory before executing svnlook.
|
|
When using the following sample, the provider does not use the value of remote
when cloning a repository:
vcsrepo {'/path/to/repo':
ensure => 'present',
provider => 'git',
remote => 'test',
source => 'git@somerepo:repo.git',
}
$ git remote
origin
This commit makes sure that the new repository has a remote with the
supplied value.
Closes #MODULES-430
|
|
The new parameter used to indicate that you want a shallow clone is `:depth`
|