Contenu connexe Similaire à PuppetCamp SEA 1 - Version Control with Puppet (20) PuppetCamp SEA 1 - Version Control with Puppet13. define subversion::create($user = false, $group = false)
{
include subversion::aflexi
$user_real = $user ? { false => 0, default => $user }
$group_real = $group ? { false => 0, default => $group }
Exec {
path => "/usr/bin:/bin:/opt/local/bin:/usr/local/bin",
}
exec { "svnadmin-create-$name":
command => "/usr/bin/svnadmin create $name",
creates => "$name/db",
user => $user_real,
group => $group_real,
environment => "HOME=''",
}
}
14. define git::workdir($repository, $local_container, $local_name = false, $post_checkout_script =
undef, $post_update_script = undef, $runas_user = "root", $runas_group = "root", $branch =
"master")
{
$owner_real = $owner ? { false => 0, default => $owner }
$group_real = $group ? { false => 0, default => $group }
$local_name_real = $local_name ? { false => $name, default => $local_name }
exec { "git-clone-$name":
command => "git clone --branch '$branch' '$repository' '$local_name_real'",
cwd => $local_container,
require => [ File["$local_container"], Package["git-core"]],
creates => "$local_container/$local_name_real/.git",
}
exec { "git-pull-$name":
command => "git pull",
cwd => "$local_container/$local_name_real",
require => Exec["git-clone-$name"],
}
}
17. git::workdir { "mygitrepo":
repository => $portal_src,
local_container => "/etc/puppet/",
local_name => "mygitrepo",
branch => $portal_branch,
}