summaryrefslogtreecommitdiff
path: root/README.CVS.markdown
blob: 3bdd59da4f65dda2fe13351b6bfa1cd6a5c42fd3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Using vcsrepo with CVS
======================

To create a blank repository
----------------------------

Define a `vcsrepo` without a `source` or `revision`:

    vcsrepo { "/path/to/repo":
      ensure => present,
      provider => cvs
    }

To checkout/update from a repository
------------------------------------

To get the current mainline:

    vcsrepo { "/path/to/workspace":
        ensure => present,
        provider => cvs,
        source => ":pserver:anonymous@example.com:/sources/myproj"
    }
    
To get a specific module on the current mainline:

    vcsrepo {"/vagrant/lockss-daemon-source":
        ensure   => present,
        provider => cvs,
        source   => ":pserver:anonymous@lockss.cvs.sourceforge.net:/cvsroot/lockss",
        module   => "lockss-daemon",
    }


You can use the `compression` parameter (it works like CVS `-z`):

    vcsrepo { "/path/to/workspace":
        ensure => present,
        provider => cvs,
        compression => 3,
        source => ":pserver:anonymous@example.com:/sources/myproj"
    }

For a specific tag, use `revision`:

    vcsrepo { "/path/to/workspace":
        ensure => present,
        provider => cvs,
        compression => 3,
        source => ":pserver:anonymous@example.com:/sources/myproj",
        revision => "SOMETAG"
    }

For sources that use SSH
------------------------

Manage your SSH keys with Puppet and use `require` in your `vcsrepo`
to ensure they are present.  For more information, see the `require`
metaparameter documentation[1].

More Examples
-------------

For examples you can run, see `examples/cvs/`

[1]: http://docs.puppetlabs.com/references/stable/metaparameter.html#require