]> gitweb.fluxo.info Git - puppet-user.git/commitdiff
Make sure target exists if managehome is a symlink
authorSilvio Rhatto <rhatto@riseup.net>
Wed, 30 Jan 2013 20:34:47 +0000 (18:34 -0200)
committerSilvio Rhatto <rhatto@riseup.net>
Wed, 30 Jan 2013 20:34:47 +0000 (18:34 -0200)
manifests/init.pp

index 55a803bb1e08fcca39f1682468ef4f60bfd8ec69..5de4ce7529fec384d02d682e214a690dea967101 100644 (file)
@@ -83,9 +83,31 @@ class user {
           }
       } else {
         if $managehome != false {
+          if !defined(File[$managehome]) {
+            file { $managehome:
+              ensure  => present,
+              owner   => $name,
+              mode    => $homedir_mode,
+              require => User[$name],
+            }
+          }
+
+          case $gid {
+            'absent','uid': {
+              File[$managehome] {
+                group => $name,
+              }
+            }
+            default: {
+              File[$managehome] {
+                group => $gid,
+              }
+            }
+          }
+
           file{ "$real_homedir":
               ensure  => $managehome,
-              require => User[$name],
+              require => File[$managehome],
           }
         }
       }