diff options
author | Antoine Beaupre <anarcat@koumbit.org> | 2008-12-11 09:07:15 -0500 |
---|---|---|
committer | Antoine Beaupre <anarcat@koumbit.org> | 2008-12-11 09:07:15 -0500 |
commit | 1bf7ed061e334a6b622161d4827181e20c471f9b (patch) | |
tree | 6969cf2d7803930661ad56fc01aad021d808b476 | |
parent | d61e1c60fabc102103b0fa79450ed6a5ca0da0ca (diff) | |
download | puppet-backupninja-1bf7ed061e334a6b622161d4827181e20c471f9b.tar.gz puppet-backupninja-1bf7ed061e334a6b622161d4827181e20c471f9b.tar.bz2 |
fix user initialisation. without this i was getting:
Could not retrieve catalog: Puppet::Parser::AST::Resource failed with error ArgumentError: Duplicate definition: User[false] is already defined in file /etc/puppet/modules/backupninja/manifests/server.pp at line 103; cannot redefine at /etc/puppet/modules/backupninja/manifests/server.pp:103 on node alexandria.koumbit.net
also add rsync and rdiff-backup on the backup server to make those methods work out of the box
-rw-r--r-- | manifests/server.pp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/manifests/server.pp b/manifests/server.pp index e4298ef..bf7e788 100644 --- a/manifests/server.pp +++ b/manifests/server.pp @@ -26,6 +26,8 @@ class backupninja::server { User <<| tag == "backupninja-$real_backupserver_tag" |>> File <<| tag == "backupninja-$real_backupserver_tag" |>> + package { [ "rsync", "rdiff-backup" ]: ensure => installed } + # this define allows nodes to declare a remote backup sandbox, that have to # get created on the server define sandbox( @@ -34,7 +36,7 @@ class backupninja::server { $gid = "backupninjas", $backuptag = false) { - $real_user = $name ? { + $real_user = $user ? { false => $name, default => $user, '' => $name, @@ -66,7 +68,7 @@ class backupninja::server { @@file { "$real_dir": ensure => directory, - mode => 0750, owner => $user, group => 0, + mode => 0750, owner => $real_user, group => 0, tag => "$real_backuptag", } case $installuser { @@ -75,7 +77,7 @@ class backupninja::server { true: { @@file { "${real_ssh_dir}": ensure => directory, - mode => 0700, owner => $user, group => 0, + mode => 0700, owner => $real_user, group => 0, require => File["$real_dir"], tag => "$real_backuptag", } @@ -84,13 +86,13 @@ class backupninja::server { @@file { "${real_ssh_dir}/${real_authorized_keys_file}": ensure => present, mode => 0644, owner => 0, group => 0, - source => "$real_backupkeys/${user}_id_rsa.pub", + source => "$real_backupkeys/${real_user}_id_rsa.pub", require => File["${real_ssh_dir}"], tag => "$real_backuptag", } case $uid { false: { - @@user { "$user": + @@user { "$real_user": ensure => "present", gid => "$gid", comment => "$name backup sandbox", @@ -103,7 +105,7 @@ class backupninja::server { } } default: { - @@user { "$user": + @@user { "$real_user": ensure => "present", uid => "$uid", gid => "$gid", |