summaryrefslogtreecommitdiffstats
path: root/lib/puppet/provider/user/useradd.rb
diff options
context:
space:
mode:
authorDean Wilson <dean.wilson@gmail.com>2010-08-27 12:11:31 +0100
committerMarkus Roberts <Markus@reality.com>2010-09-29 12:04:11 -0700
commit34f87cfd74e5c93365da11a5e676f513e8819196 (patch)
treed80155bc83092a96560ee379d67151e20980ade3 /lib/puppet/provider/user/useradd.rb
parenta7fb9b112025e328304743c6453ece5d6ae81275 (diff)
downloadpuppet-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.rb12
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