diff options
author | Dean Wilson <dean.wilson@gmail.com> | 2010-08-27 12:11:31 +0100 |
---|---|---|
committer | Markus Roberts <Markus@reality.com> | 2010-09-29 12:04:11 -0700 |
commit | 34f87cfd74e5c93365da11a5e676f513e8819196 (patch) | |
tree | d80155bc83092a96560ee379d67151e20980ade3 /lib/puppet/provider/user/useradd.rb | |
parent | a7fb9b112025e328304743c6453ece5d6ae81275 (diff) | |
download | puppet-34f87cfd74e5c93365da11a5e676f513e8819196.tar.gz puppet-34f87cfd74e5c93365da11a5e676f513e8819196.tar.xz puppet-34f87cfd74e5c93365da11a5e676f513e8819196.zip |
Add user account expiry to the useradd type and provider
Diffstat (limited to 'lib/puppet/provider/user/useradd.rb')
-rw-r--r-- | lib/puppet/provider/user/useradd.rb | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/puppet/provider/user/useradd.rb b/lib/puppet/provider/user/useradd.rb index 7ef217d9e..7e68e4b32 100644 --- a/lib/puppet/provider/user/useradd.rb +++ b/lib/puppet/provider/user/useradd.rb @@ -17,7 +17,7 @@ Puppet::Type.type(:user).provide :useradd, :parent => Puppet::Provider::NameServ value !~ /\s/ end - has_features :manages_homedir, :allows_duplicates + has_features :manages_homedir, :allows_duplicates, :manages_expiry has_feature :manages_passwords if Puppet.features.libshadow? @@ -35,6 +35,15 @@ Puppet::Type.type(:user).provide :useradd, :parent => Puppet::Provider::NameServ cmd end + def check_manage_expiry + cmd = [] + if @resource[:expiry] + cmd << "-e #{@resource[:expiry]}" + end + + cmd + end + def add_properties cmd = [] Puppet::Type.type(:user).validproperties.each do |property| @@ -53,6 +62,7 @@ Puppet::Type.type(:user).provide :useradd, :parent => Puppet::Provider::NameServ cmd += add_properties cmd += check_allow_dup cmd += check_manage_home + cmd += check_manage_expiry cmd << @resource[:name] end |