summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-04-30 19:41:18 +0000
committerluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-04-30 19:41:18 +0000
commit483c25e04314f66e48290c9e3141000872b23145 (patch)
treed506304c1ce32dcce86087606b582a4690aa4e5c /lib
parentc369c6a81141c2b32a08112155cc85d2f3b67f3f (diff)
downloadpuppet-483c25e04314f66e48290c9e3141000872b23145.tar.gz
puppet-483c25e04314f66e48290c9e3141000872b23145.tar.xz
puppet-483c25e04314f66e48290c9e3141000872b23145.zip
Switching the simpler features to a single file, so it is easier to add new features
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2441 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
-rw-r--r--lib/puppet.rb3
-rw-r--r--lib/puppet/feature/base.rb20
-rw-r--r--lib/puppet/feature/ldap.rb8
-rw-r--r--lib/puppet/feature/libshadow.rb8
-rw-r--r--lib/puppet/feature/usage.rb8
5 files changed, 23 insertions, 24 deletions
diff --git a/lib/puppet.rb b/lib/puppet.rb
index f1b080b35..7e40233bb 100644
--- a/lib/puppet.rb
+++ b/lib/puppet.rb
@@ -65,6 +65,9 @@ module Puppet
# The feature collection
@features = Puppet::Util::Feature.new('puppet/feature')
+ # Load the base features.
+ require 'puppet/feature/base'
+
# Store a new default value.
def self.setdefaults(section, hash)
@@config.setdefaults(section, hash)
diff --git a/lib/puppet/feature/base.rb b/lib/puppet/feature/base.rb
new file mode 100644
index 000000000..b3c51cc70
--- /dev/null
+++ b/lib/puppet/feature/base.rb
@@ -0,0 +1,20 @@
+# Created by Luke Kanies on 2006-04-30.
+# Copyright (c) 2006. All rights reserved.
+
+require 'puppet/util/feature'
+
+# Add the simple features, all in one file.
+
+# We've got LDAP available.
+Puppet.features.add(:ldap, :libs => ["ldap"])
+
+# We have the Rdoc::Usage library.
+Puppet.features.add(:usage, :libs => %w{rdoc/ri/ri_paths rdoc/usage})
+
+# We have libshadow, useful for managing passwords.
+Puppet.features.add(:libshadow, :libs => ["shadow"])
+
+# We're running as root.
+Puppet.features.add(:root) { require 'puppet/util/suidmanager'; Puppet::Util::SUIDManager.uid == 0 }
+
+# $Id$
diff --git a/lib/puppet/feature/ldap.rb b/lib/puppet/feature/ldap.rb
deleted file mode 100644
index 4ece93dc3..000000000
--- a/lib/puppet/feature/ldap.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# Created by Luke Kanies on 2006-12-27.
-# Copyright (c) 2006. All rights reserved.
-
-require 'puppet/util/feature'
-
-Puppet.features.add(:ldap, :libs => ["ldap"])
-
-# $Id$
diff --git a/lib/puppet/feature/libshadow.rb b/lib/puppet/feature/libshadow.rb
deleted file mode 100644
index d065ec2b4..000000000
--- a/lib/puppet/feature/libshadow.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# Created by Luke Kanies on 2007-04-25.
-# Copyright (c) 2006. All rights reserved.
-
-require 'puppet/util/feature'
-
-Puppet.features.add(:libshadow, :libs => ["shadow"])
-
-# $Id$
diff --git a/lib/puppet/feature/usage.rb b/lib/puppet/feature/usage.rb
deleted file mode 100644
index a95b0ced3..000000000
--- a/lib/puppet/feature/usage.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# Created by Luke Kanies on 2006-11-07.
-# Copyright (c) 2006. All rights reserved.
-
-require 'puppet/util/feature'
-
-Puppet.features.add(:usage, :libs => %w{rdoc/ri/ri_paths rdoc/usage})
-
-# $Id$