Sha256: f08707efdf8f3edef73e1a7706b5be4b0c3c9092d89758f2f7d6d78c97e8db75

Contents?: true

Size: 1.89 KB

Versions: 5

Compression:

Stored size: 1.89 KB

Contents

Git Providers
=============

As of 1.5.0, r10k can interact with Git repositories using multiple Git
providers.

Shellgit
--------

The shellgit provider is the original Git provider that is based on shelling out
to the `git` binary. It relies on the standard set of Git userland executables
in order to work.

The shellgit provider is the default Git provider in order to maintain
compatibility with existing r10k installations.

### Requirements

The shellgit provider requires that `git` can be found on the `PATH` environment
variable. This can be done by installing the git package via the system package
manager.

### SSH Configuration

Because the shellgit provider relies on the `git` command which in turn uses the
`ssh` binary as the SSH transport layer, configuring access to Git repositories
over SSH is done by configuring the underlying `ssh` command.

Rugged
------

The rugged provider is based on the [libgit2](https://github.com/libgit2/libgit2)
library and the Ruby [rugged gem](https://github.com/libgit2/rugged).

### Requirements

The rugged provider relies on the rugged Ruby gem. The rugged gem requires Ruby
1.9 or greater, which in turn means that r10k must be run with Ruby 1.9 or
greater to use this provider.

### SSH Configuration

In order to use rugged with SSH based Git repositories, the 'private_key' option
must be provided. An optional 'username' field can be provided when the Git
remote URL does not provide a username.

```yaml
git:
  private_key: '/root/.ssh/id_rsa'
  username: 'git'
```

Configuration
-------------

R10K will attempt to use the shellgit provider, then fall back to the rugged
provider, and then hard fail if no Git provider is available.

The Git provider in use can be manually specified by specifying the desired
provider in r10k.yaml.

```yaml
git:
  provider: 'rugged'
```

Valid values are 'rugged' and 'shellgit'. If an invalid value is used r10k will
raise an error.

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
r10k-2.0.3 doc/git/providers.mkd
r10k-2.0.2 doc/git/providers.mkd
r10k-2.0.1 doc/git/providers.mkd
r10k-2.0.0 doc/git/providers.mkd
r10k-1.5.1 doc/git/providers.mkd