web-dev-qa-db-ja.com

Puppet vcsrepogitチェックアウトブランチ

Puppetを使用して、エージェントノードにリポジトリのクローンを作成しています。私のsite.ppには

node foobar{
   vcsrepo{"home/user1/gitrepo1":
     provider=>git, 
     source=>"https://github.com/foobar/foo.git",
     revision => "remotes/Origin/bar",
   }   
}

カタログを適用した後にgit branchを実行すると、エージェントに次のように表示されます。

*(no branch)
master

git branch -aを実行すると、

master
remotes/Origin/HEAD -> Origin/master  
remotes/Origin/bar

リモートの「バー」ブランチをチェックアウトできるようにしたい。 revision=>barを指定するだけで、次のエラーが発生します。これについても、ドキュメントはあまり明確ではありません。

err: /Stage[main]//Node[foobar]/Vcsrepo[/home/user1/gitrepo1]: Could not evaluate: Execution of '/usr/bin/git rev-parse bar' returned 128: fatal: ambiguous argument 'bar': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions
bar

編集:私が最初に投稿したものにタイプミスがありました。私は実際に私のsite.ppでrevision => barを指定していました

ありがとうございました。

2
Spart

ブランチは「revision」で指定できます(コミットSHA、タグ、またはブランチ名にすることができます)。

vcsrepo { "/path/to/repo":
    ensure => present,
    provider => git,
    source => 'git://example.com/repo.git',
    revision => '0c466b8a5a45f6cd7de82c08df2fb4ce1e920a31'
}

vcsrepo { "/path/to/repo":
    ensure => present,
    provider => git,
    source => 'git://example.com/repo.git',
    revision => '1.1.2rc1'
}

vcsrepo { "/path/to/repo":
    ensure => present,
    provider => git,
    source => 'git://example.com/repo.git',
    revision => 'development'
}

https://github.com/puppetlabs/puppetlabs-vcsrepo/blob/master/README.GIT.markdown

1
Chris Montanaro