puppet 0.24.7 → 0.24.8
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- data/CHANGELOG +72 -0
- data/README.rst +38 -0
- data/Rakefile +3 -1
- data/bin/filebucket +0 -0
- data/bin/puppet +0 -0
- data/bin/puppetca +0 -0
- data/bin/puppetd +0 -0
- data/bin/puppetdoc +0 -0
- data/bin/puppetmasterd +0 -0
- data/bin/puppetrun +0 -0
- data/bin/ralsh +4 -0
- data/conf/gentoo/init.d/puppetmaster +0 -0
- data/conf/osx/createpackage.sh +0 -0
- data/conf/osx/preflight +0 -0
- data/conf/redhat/puppet.spec +20 -3
- data/conf/solaris/smf/svc-puppetd +0 -0
- data/conf/solaris/smf/svc-puppetmasterd +0 -0
- data/examples/etc/init.d/sleeper +0 -0
- data/examples/mac_dscl.pp +0 -0
- data/examples/mac_dscl_revert.pp +0 -0
- data/examples/mac_netinfo.pp +0 -0
- data/examples/mac_pkgdmg.pp +0 -0
- data/ext/bin/sleeper +0 -0
- data/ext/dbfix.sql +132 -0
- data/ext/logcheck/puppet +2 -1
- data/ext/module_puppet +0 -0
- data/ext/nagios/check_puppet.rb +0 -0
- data/ext/puppet-test +0 -0
- data/ext/puppetlast +0 -0
- data/ext/vim/syntax/puppet.vim +2 -1
- data/install.rb +2 -2
- data/lib/puppet.rb +1 -1
- data/lib/puppet/daemon.rb +0 -0
- data/lib/puppet/defaults.rb +9 -0
- data/lib/puppet/executables/client/certhandler.rb +6 -1
- data/lib/puppet/external/base64.rb +0 -0
- data/lib/puppet/external/nagios.rb +0 -0
- data/lib/puppet/external/nagios/base.rb +0 -0
- data/lib/puppet/external/nagios/parser.rb +39 -57
- data/lib/puppet/file_collection.rb +30 -0
- data/lib/puppet/file_collection/lookup.rb +20 -0
- data/lib/puppet/indirector/facts/facter.rb +6 -2
- data/lib/puppet/indirector/node/ldap.rb +75 -39
- data/lib/puppet/network/authstore.rb +0 -0
- data/lib/puppet/network/handler/filebucket.rb +0 -0
- data/lib/puppet/network/handler/fileserver.rb +0 -0
- data/lib/puppet/network/handler/report.rb +0 -0
- data/lib/puppet/network/handler/resource.rb +0 -0
- data/lib/puppet/network/handler/runner.rb +0 -0
- data/lib/puppet/network/rights.rb +0 -0
- data/lib/puppet/network/xmlrpc/client.rb +113 -53
- data/lib/puppet/node/facts.rb +0 -0
- data/lib/puppet/parser/ast.rb +4 -3
- data/lib/puppet/parser/ast/astarray.rb +2 -1
- data/lib/puppet/parser/ast/leaf.rb +1 -1
- data/lib/puppet/parser/ast/resource.rb +20 -20
- data/lib/puppet/parser/ast/resource_override.rb +2 -2
- data/lib/puppet/parser/collector.rb +1 -2
- data/lib/puppet/parser/functions/realize.rb +1 -1
- data/lib/puppet/parser/functions/regsubst.rb +93 -0
- data/lib/puppet/parser/functions/sprintf.rb +17 -0
- data/lib/puppet/parser/functions/versioncmp.rb +10 -0
- data/lib/puppet/parser/resource.rb +10 -6
- data/lib/puppet/parser/resource/param.rb +17 -14
- data/lib/puppet/parser/resource/reference.rb +2 -0
- data/lib/puppet/parser/scope.rb +3 -3
- data/lib/puppet/property/list.rb +5 -1
- data/lib/puppet/provider/augeas/augeas.rb +146 -44
- data/lib/puppet/provider/cron/crontab.rb +0 -0
- data/lib/puppet/provider/mailalias/aliases.rb +0 -0
- data/lib/puppet/provider/maillist/mailman.rb +0 -0
- data/lib/puppet/provider/mount/parsed.rb +0 -0
- data/lib/puppet/provider/naginator.rb +7 -2
- data/lib/puppet/provider/nameservice/directoryservice.rb +128 -44
- data/lib/puppet/provider/package/apple.rb +0 -0
- data/lib/puppet/provider/package/apt.rb +0 -0
- data/lib/puppet/provider/package/aptitude.rb +0 -0
- data/lib/puppet/provider/package/blastwave.rb +0 -0
- data/lib/puppet/provider/package/darwinport.rb +0 -0
- data/lib/puppet/provider/package/dpkg.rb +0 -0
- data/lib/puppet/provider/package/fink.rb +0 -0
- data/lib/puppet/provider/package/freebsd.rb +0 -0
- data/lib/puppet/provider/package/gem.rb +0 -0
- data/lib/puppet/provider/package/openbsd.rb +0 -0
- data/lib/puppet/provider/package/ports.rb +0 -0
- data/lib/puppet/provider/package/rpm.rb +0 -0
- data/lib/puppet/provider/package/sun.rb +0 -0
- data/lib/puppet/provider/package/sunfreeware.rb +0 -0
- data/lib/puppet/provider/package/up2date.rb +4 -2
- data/lib/puppet/provider/package/yum.rb +0 -0
- data/lib/puppet/provider/parsedfile.rb +47 -22
- data/lib/puppet/provider/port/parsed.rb +0 -0
- data/lib/puppet/provider/service/base.rb +0 -0
- data/lib/puppet/provider/service/debian.rb +0 -0
- data/lib/puppet/provider/service/gentoo.rb +1 -1
- data/lib/puppet/provider/service/init.rb +0 -0
- data/lib/puppet/provider/service/launchd.rb +13 -4
- data/lib/puppet/provider/service/redhat.rb +5 -5
- data/lib/puppet/provider/service/smf.rb +0 -0
- data/lib/puppet/provider/ssh_authorized_key/parsed.rb +43 -16
- data/lib/puppet/provider/sshkey/parsed.rb +0 -0
- data/lib/puppet/provider/user/useradd.rb +1 -1
- data/lib/puppet/rails/database/003_add_environment_to_host.rb +6 -2
- data/lib/puppet/rails/host.rb +70 -19
- data/lib/puppet/rails/param_value.rb +31 -12
- data/lib/puppet/rails/resource.rb +36 -9
- data/lib/puppet/rails/resource_tag.rb +18 -0
- data/lib/puppet/reference/report.rb +1 -0
- data/lib/puppet/reports.rb +0 -0
- data/lib/puppet/sslcertificates.rb +0 -0
- data/lib/puppet/transaction.rb +1 -1
- data/lib/puppet/type.rb +2 -6
- data/lib/puppet/type/augeas.rb +23 -15
- data/lib/puppet/type/cron.rb +0 -0
- data/lib/puppet/type/exec.rb +0 -0
- data/lib/puppet/type/file/checksum.rb +7 -35
- data/lib/puppet/type/file/content.rb +11 -8
- data/lib/puppet/type/file/ensure.rb +0 -0
- data/lib/puppet/type/file/group.rb +0 -0
- data/lib/puppet/type/file/mode.rb +0 -0
- data/lib/puppet/type/file/owner.rb +0 -0
- data/lib/puppet/type/file/selcontext.rb +8 -0
- data/lib/puppet/type/file/source.rb +0 -0
- data/lib/puppet/type/file/type.rb +0 -0
- data/lib/puppet/type/filebucket.rb +0 -0
- data/lib/puppet/type/group.rb +0 -0
- data/lib/puppet/type/host.rb +0 -0
- data/lib/puppet/type/mailalias.rb +0 -0
- data/lib/puppet/type/maillist.rb +0 -0
- data/lib/puppet/type/mount.rb +0 -0
- data/lib/puppet/type/port.rb +0 -0
- data/lib/puppet/type/schedule.rb +0 -0
- data/lib/puppet/type/ssh_authorized_key.rb +14 -0
- data/lib/puppet/type/sshkey.rb +0 -0
- data/lib/puppet/type/tidy.rb +0 -0
- data/lib/puppet/type/user.rb +6 -0
- data/lib/puppet/type/yumrepo.rb +4 -1
- data/lib/puppet/type/zfs.rb +0 -0
- data/lib/puppet/type/zpool.rb +0 -0
- data/lib/puppet/util/autoload.rb +2 -2
- data/lib/puppet/util/filetype.rb +7 -96
- data/lib/puppet/util/inifile.rb +1 -0
- data/lib/puppet/util/instance_loader.rb +0 -0
- data/lib/puppet/util/loadedfile.rb +0 -0
- data/lib/puppet/util/nagios_maker.rb +4 -0
- data/lib/puppet/util/package.rb +2 -0
- data/lib/puppet/util/posix.rb +0 -0
- data/lib/puppet/util/rails/reference_serializer.rb +18 -0
- data/lib/puppet/util/selinux.rb +3 -1
- data/spec/integration/checksum.rb +1 -0
- data/spec/integration/defaults.rb +9 -0
- data/spec/integration/file_serving/configuration.rb +0 -0
- data/spec/integration/file_serving/content.rb +0 -0
- data/spec/integration/file_serving/metadata.rb +0 -0
- data/spec/integration/indirector/direct_file_server.rb +0 -0
- data/spec/integration/indirector/file_content/file_server.rb +0 -0
- data/spec/integration/indirector/file_metadata/file_server.rb +0 -0
- data/spec/integration/indirector/module_files.rb +0 -0
- data/spec/integration/indirector/node/ldap.rb +0 -0
- data/spec/integration/indirector/rest.rb +0 -0
- data/spec/integration/network/server/mongrel.rb +0 -0
- data/spec/integration/network/server/webrick.rb +0 -0
- data/spec/integration/node.rb +0 -0
- data/spec/integration/node/catalog.rb +0 -0
- data/spec/integration/node/facts.rb +0 -0
- data/spec/integration/provider/package.rb +0 -0
- data/spec/integration/provider/service/init.rb +0 -0
- data/spec/integration/reference/providers.rb +0 -0
- data/spec/integration/reports.rb +4 -0
- data/spec/integration/transaction/report.rb +7 -1
- data/spec/integration/type/package.rb +5 -2
- data/spec/integration/util/file_locking.rb +0 -0
- data/spec/unit/executables/client/certhandler.rb +13 -0
- data/spec/unit/file_collection.rb +53 -0
- data/spec/unit/file_collection/lookup.rb +46 -0
- data/spec/unit/file_serving/configuration.rb +0 -0
- data/spec/unit/file_serving/configuration/parser.rb +0 -0
- data/spec/unit/file_serving/content.rb +0 -0
- data/spec/unit/file_serving/file_base.rb +0 -0
- data/spec/unit/file_serving/fileset.rb +0 -0
- data/spec/unit/file_serving/indirection_hooks.rb +0 -0
- data/spec/unit/file_serving/metadata.rb +0 -0
- data/spec/unit/file_serving/mount.rb +0 -0
- data/spec/unit/file_serving/terminus_helper.rb +0 -0
- data/spec/unit/indirector.rb +0 -0
- data/spec/unit/indirector/catalog/compiler.rb +0 -0
- data/spec/unit/indirector/catalog/yaml.rb +0 -0
- data/spec/unit/indirector/checksum/file.rb +0 -0
- data/spec/unit/indirector/code.rb +0 -0
- data/spec/unit/indirector/direct_file_server.rb +0 -0
- data/spec/unit/indirector/envelope.rb +0 -0
- data/spec/unit/indirector/exec.rb +0 -0
- data/spec/unit/indirector/facts/facter.rb +27 -2
- data/spec/unit/indirector/facts/yaml.rb +0 -0
- data/spec/unit/indirector/file.rb +0 -0
- data/spec/unit/indirector/file_content/file.rb +0 -0
- data/spec/unit/indirector/file_content/file_server.rb +0 -0
- data/spec/unit/indirector/file_content/modules.rb +0 -0
- data/spec/unit/indirector/file_content/rest.rb +0 -0
- data/spec/unit/indirector/file_metadata/file.rb +0 -0
- data/spec/unit/indirector/file_metadata/file_server.rb +0 -0
- data/spec/unit/indirector/file_metadata/modules.rb +0 -0
- data/spec/unit/indirector/file_metadata/rest.rb +0 -0
- data/spec/unit/indirector/file_server.rb +0 -0
- data/spec/unit/indirector/indirection.rb +0 -0
- data/spec/unit/indirector/ldap.rb +0 -0
- data/spec/unit/indirector/memory.rb +0 -0
- data/spec/unit/indirector/module_files.rb +0 -0
- data/spec/unit/indirector/node/exec.rb +0 -0
- data/spec/unit/indirector/node/ldap.rb +20 -0
- data/spec/unit/indirector/node/memory.rb +0 -0
- data/spec/unit/indirector/node/plain.rb +0 -0
- data/spec/unit/indirector/node/rest.rb +0 -0
- data/spec/unit/indirector/node/yaml.rb +0 -0
- data/spec/unit/indirector/plain.rb +0 -0
- data/spec/unit/indirector/report/processor.rb +0 -0
- data/spec/unit/indirector/request.rb +0 -0
- data/spec/unit/indirector/rest.rb +0 -0
- data/spec/unit/indirector/ssl_rsa/file.rb +5 -0
- data/spec/unit/indirector/terminus.rb +0 -0
- data/spec/unit/indirector/yaml.rb +0 -0
- data/spec/unit/module.rb +0 -0
- data/spec/unit/network/client.rb +0 -0
- data/spec/unit/network/client/master.rb +0 -0
- data/spec/unit/network/http.rb +0 -0
- data/spec/unit/network/http/mongrel.rb +0 -0
- data/spec/unit/network/http/mongrel/rest.rb +0 -0
- data/spec/unit/network/http/mongrel/xmlrpc.rb +0 -0
- data/spec/unit/network/http/webrick.rb +0 -0
- data/spec/unit/network/http/webrick/rest.rb +0 -0
- data/spec/unit/network/http/webrick/xmlrpc.rb +0 -0
- data/spec/unit/network/http_pool.rb +0 -0
- data/spec/unit/network/server.rb +0 -0
- data/spec/unit/network/xmlrpc/client.rb +165 -7
- data/spec/unit/node.rb +0 -0
- data/spec/unit/node/catalog.rb +1 -0
- data/spec/unit/node/environment.rb +0 -0
- data/spec/unit/node/facts.rb +0 -0
- data/spec/unit/other/checksum.rb +0 -0
- data/spec/unit/other/pgraph.rb +0 -0
- data/spec/unit/other/transbucket.rb +4 -4
- data/spec/unit/other/transobject.rb +0 -0
- data/spec/unit/parameter.rb +0 -0
- data/spec/unit/parser/ast.rb +5 -1
- data/spec/unit/parser/ast/arithmetic_operator.rb +0 -0
- data/spec/unit/parser/ast/astarray.rb +2 -2
- data/spec/unit/parser/ast/boolean_operator.rb +0 -0
- data/spec/unit/parser/ast/collexpr.rb +0 -0
- data/spec/unit/parser/ast/comparison_operator.rb +0 -0
- data/spec/unit/parser/ast/definition.rb +0 -0
- data/spec/unit/parser/ast/hostclass.rb +0 -0
- data/spec/unit/parser/ast/minus.rb +0 -0
- data/spec/unit/parser/ast/node.rb +0 -0
- data/spec/unit/parser/ast/nop.rb +0 -0
- data/spec/unit/parser/ast/not.rb +0 -0
- data/spec/unit/parser/ast/resource.rb +103 -0
- data/spec/unit/parser/ast/resource_override.rb +0 -0
- data/spec/unit/parser/ast/resource_reference.rb +0 -0
- data/spec/unit/parser/ast/vardef.rb +0 -0
- data/spec/unit/parser/collector.rb +4 -4
- data/spec/unit/parser/compiler.rb +0 -0
- data/spec/unit/parser/functions/realize.rb +51 -0
- data/spec/unit/parser/functions/regsubst.rb +88 -0
- data/spec/unit/parser/functions/sprintf.rb +42 -0
- data/spec/unit/parser/functions/versioncmp.rb +29 -0
- data/spec/unit/parser/interpreter.rb +0 -0
- data/spec/unit/parser/lexer.rb +0 -0
- data/spec/unit/parser/parser.rb +0 -0
- data/spec/unit/parser/resource.rb +4 -0
- data/spec/unit/parser/resource/reference.rb +4 -0
- data/spec/unit/parser/scope.rb +14 -0
- data/spec/unit/parser/templatewrapper.rb +0 -0
- data/spec/unit/property.rb +0 -0
- data/spec/unit/property/list.rb +4 -0
- data/spec/unit/provider/augeas/augeas.rb +219 -92
- data/spec/unit/provider/confine.rb +0 -0
- data/spec/unit/provider/confine/exists.rb +0 -0
- data/spec/unit/provider/confine/false.rb +0 -0
- data/spec/unit/provider/confine/feature.rb +0 -0
- data/spec/unit/provider/confine/true.rb +0 -0
- data/spec/unit/provider/confine/variable.rb +0 -0
- data/spec/unit/provider/confine_collection.rb +0 -0
- data/spec/unit/provider/confiner.rb +0 -0
- data/spec/unit/provider/group/groupadd.rb +0 -0
- data/spec/unit/provider/group/ldap.rb +0 -0
- data/spec/unit/provider/ldap.rb +0 -0
- data/spec/unit/provider/macauthorization.rb +0 -0
- data/spec/unit/provider/mcx/mcxcontent.rb +0 -0
- data/spec/unit/provider/mount.rb +0 -0
- data/spec/unit/provider/mount/parsed.rb +1 -0
- data/spec/unit/provider/naginator.rb +58 -0
- data/spec/unit/provider/package/apt.rb +0 -0
- data/spec/unit/provider/package/dpkg.rb +0 -0
- data/spec/unit/provider/parsedfile.rb +95 -0
- data/spec/unit/provider/selboolean.rb +0 -0
- data/spec/unit/provider/selmodule.rb +0 -0
- data/spec/unit/provider/service/launchd.rb +9 -1
- data/spec/unit/provider/ssh_authorized_key/parsed.rb +63 -19
- data/spec/unit/provider/user/hpux.rb +0 -0
- data/spec/unit/provider/user/ldap.rb +0 -0
- data/spec/unit/provider/user/useradd.rb +0 -0
- data/spec/unit/provider/zfs/solaris.rb +0 -0
- data/spec/unit/provider/zone/solaris.rb +0 -0
- data/spec/unit/provider/zpool/solaris.rb +0 -0
- data/spec/unit/rails.rb +1 -0
- data/spec/unit/relationship.rb +0 -0
- data/spec/unit/reports.rb +0 -0
- data/spec/unit/resource_reference.rb +0 -0
- data/spec/unit/simple_graph.rb +0 -0
- data/spec/unit/{other/transaction.rb → transaction.rb} +16 -1
- data/spec/unit/transaction/change.rb +0 -0
- data/spec/unit/transaction/event.rb +0 -0
- data/spec/unit/transaction/report.rb +0 -0
- data/spec/unit/type.rb +0 -0
- data/spec/unit/type/computer.rb +0 -0
- data/spec/unit/type/exec.rb +0 -0
- data/spec/unit/type/file.rb +2 -0
- data/spec/unit/type/file/content.rb +30 -0
- data/spec/unit/type/file/ensure.rb +0 -0
- data/spec/unit/type/file/group.rb +0 -0
- data/spec/unit/type/file/owner.rb +0 -0
- data/spec/unit/type/file/selinux.rb +6 -0
- data/spec/unit/type/group.rb +3 -0
- data/spec/unit/type/macauthorization.rb +0 -0
- data/spec/unit/type/mcx.rb +0 -0
- data/spec/unit/type/mount.rb +0 -0
- data/spec/unit/type/nagios.rb +0 -0
- data/spec/unit/type/noop_metaparam.rb +1 -0
- data/spec/unit/type/package.rb +0 -0
- data/spec/unit/type/schedule.rb +0 -0
- data/spec/unit/type/selboolean.rb +0 -0
- data/spec/unit/type/selmodule.rb +0 -0
- data/spec/unit/type/service.rb +0 -0
- data/spec/unit/type/ssh_authorized_key.rb +31 -8
- data/spec/unit/type/tidy.rb +4 -0
- data/spec/unit/type/user.rb +17 -0
- data/spec/unit/type/zfs.rb +0 -0
- data/spec/unit/type/zone.rb +0 -0
- data/spec/unit/type/zpool.rb +0 -0
- data/spec/unit/util/autoload.rb +39 -0
- data/spec/unit/util/checksums.rb +0 -0
- data/spec/unit/util/constant_inflector.rb +0 -0
- data/spec/unit/util/file_locking.rb +0 -0
- data/spec/unit/util/filetype.rb +110 -0
- data/spec/unit/util/ldap/connection.rb +0 -0
- data/spec/unit/util/ldap/generator.rb +0 -0
- data/spec/unit/util/ldap/manager.rb +0 -0
- data/spec/unit/util/loadedfile.rb +0 -0
- data/spec/unit/util/log.rb +0 -0
- data/spec/unit/util/metric.rb +0 -0
- data/spec/unit/util/nagios_maker.rb +32 -34
- data/spec/unit/util/package.rb +21 -0
- data/spec/unit/util/posix.rb +0 -0
- data/spec/unit/util/resource_template.rb +0 -0
- data/spec/unit/util/settings.rb +0 -0
- data/spec/unit/util/storage.rb +0 -0
- data/spec/unit/util/tagging.rb +0 -0
- data/spec/unit/util/uri_helper.rb +0 -0
- data/spec/unit/util/warnings.rb +0 -0
- data/test/certmgr/ca.rb +0 -0
- data/test/certmgr/certmgr.rb +0 -0
- data/test/certmgr/inventory.rb +0 -0
- data/test/certmgr/support.rb +0 -0
- data/test/data/snippets/subclass_name_duplication.pp +0 -0
- data/test/executables/filebucket.rb +6 -3
- data/test/executables/puppetbin.rb +1 -1
- data/test/executables/puppetca.rb +0 -0
- data/test/executables/puppetd.rb +0 -0
- data/test/executables/puppetmasterd.rb +0 -0
- data/test/executables/puppetmodule.rb +0 -0
- data/test/language/ast.rb +0 -0
- data/test/language/ast/casestatement.rb +0 -0
- data/test/language/ast/resource.rb +0 -0
- data/test/language/ast/resource_reference.rb +0 -0
- data/test/language/ast/selector.rb +0 -0
- data/test/language/ast/variable.rb +0 -0
- data/test/language/functions.rb +0 -0
- data/test/language/parser.rb +0 -0
- data/test/language/resource.rb +0 -40
- data/test/language/scope.rb +0 -0
- data/test/language/snippets.rb +0 -0
- data/test/language/transportable.rb +0 -0
- data/test/lib/puppettest.rb +3 -0
- data/test/lib/puppettest/support/resources.rb +0 -0
- data/test/network/authconfig.rb +0 -0
- data/test/network/authorization.rb +0 -0
- data/test/network/authstore.rb +0 -0
- data/test/network/client/ca.rb +0 -0
- data/test/network/client/client.rb +0 -0
- data/test/network/client/dipper.rb +0 -0
- data/test/network/client/master.rb +0 -0
- data/test/network/client/resource.rb +0 -0
- data/test/network/client_request.rb +0 -0
- data/test/network/daemon.rb +0 -0
- data/test/network/handler/bucket.rb +0 -0
- data/test/network/handler/ca.rb +0 -0
- data/test/network/handler/fileserver.rb +0 -0
- data/test/network/handler/handler.rb +0 -0
- data/test/network/handler/master.rb +0 -0
- data/test/network/handler/report.rb +0 -0
- data/test/network/handler/resource.rb +0 -0
- data/test/network/handler/runner.rb +0 -0
- data/test/network/rights.rb +0 -0
- data/test/network/server/mongrel_test.rb +0 -0
- data/test/network/server/webrick.rb +0 -0
- data/test/network/xmlrpc/client.rb +0 -0
- data/test/network/xmlrpc/processor.rb +0 -0
- data/test/network/xmlrpc/server.rb +0 -0
- data/test/network/xmlrpc/webrick_servlet.rb +0 -0
- data/test/other/dsl.rb +0 -0
- data/test/other/events.rb +0 -0
- data/test/other/overrides.rb +0 -0
- data/test/other/provider.rb +0 -0
- data/test/other/puppet.rb +0 -0
- data/test/other/relationships.rb +0 -0
- data/test/other/report.rb +0 -0
- data/test/other/transactions.rb +0 -0
- data/test/puppet/conffiles.rb +0 -0
- data/test/puppet/defaults.rb +0 -0
- data/test/puppet/errortest.rb +0 -0
- data/test/puppet/tc_suidmanager.rb +0 -0
- data/test/rails/ast.rb +0 -0
- data/test/rails/configuration.rb +0 -0
- data/test/rails/host.rb +0 -0
- data/test/rails/rails.rb +0 -0
- data/test/rails/railsparameter.rb +0 -0
- data/test/rails/railsresource.rb +0 -0
- data/test/ral/manager/attributes.rb +0 -0
- data/test/ral/manager/instances.rb +0 -0
- data/test/ral/manager/manager.rb +0 -0
- data/test/ral/manager/provider.rb +0 -0
- data/test/ral/manager/type.rb +0 -3
- data/test/ral/providers/cron/crontab.rb +0 -0
- data/test/ral/providers/group.rb +0 -0
- data/test/ral/providers/host/netinfo.rb +0 -0
- data/test/ral/providers/host/parsed.rb +0 -0
- data/test/ral/providers/mailalias/aliases.rb +0 -0
- data/test/ral/providers/mount/netinfo.rb +0 -0
- data/test/ral/providers/nameservice.rb +0 -0
- data/test/ral/providers/package.rb +0 -0
- data/test/ral/providers/package/aptitude.rb +0 -0
- data/test/ral/providers/package/aptrpm.rb +0 -0
- data/test/ral/providers/parsedfile.rb +0 -0
- data/test/ral/providers/port/parsed.rb +0 -0
- data/test/ral/providers/provider.rb +0 -0
- data/test/ral/providers/service/base.rb +0 -0
- data/test/ral/providers/service/debian.rb +0 -0
- data/test/ral/providers/sshkey/parsed.rb +0 -0
- data/test/ral/providers/user.rb +0 -0
- data/test/ral/providers/user/useradd.rb +0 -0
- data/test/ral/type/basic.rb +0 -0
- data/test/ral/type/cron.rb +0 -0
- data/test/ral/type/exec.rb +0 -0
- data/test/ral/type/file.rb +0 -0
- data/test/ral/type/file/target.rb +0 -0
- data/test/ral/type/filebucket.rb +0 -0
- data/test/ral/type/fileignoresource.rb +0 -0
- data/test/ral/type/filesources.rb +0 -0
- data/test/ral/type/group.rb +0 -0
- data/test/ral/type/host.rb +0 -0
- data/test/ral/type/mailalias.rb +0 -0
- data/test/ral/type/parameter.rb +0 -0
- data/test/ral/type/port.rb +0 -0
- data/test/ral/type/property.rb +0 -0
- data/test/ral/type/resources.rb +0 -0
- data/test/ral/type/service.rb +0 -0
- data/test/ral/type/sshkey.rb +0 -0
- data/test/ral/type/tidy.rb +0 -0
- data/test/ral/type/user.rb +0 -0
- data/test/ral/type/yumrepo.rb +0 -0
- data/test/ral/type/zone.rb +0 -0
- data/test/test +0 -0
- data/test/util/autoload.rb +0 -0
- data/test/util/classgen.rb +0 -0
- data/test/util/execution.rb +0 -0
- data/test/util/features.rb +0 -0
- data/test/util/fileparsing.rb +0 -0
- data/test/util/inifile.rb +0 -0
- data/test/util/instance_loader.rb +0 -0
- data/test/util/log.rb +0 -0
- data/test/util/metrics.rb +0 -0
- data/test/util/package.rb +0 -0
- data/test/util/pidlock.rb +0 -0
- data/test/util/settings.rb +0 -0
- data/test/util/storage.rb +0 -0
- data/test/util/subclass_loader.rb +0 -0
- data/test/util/utiltest.rb +0 -0
- metadata +981 -968
- data/test/util/filetype.rb +0 -137
File without changes
|
File without changes
|
File without changes
|
@@ -1,22 +1,20 @@
|
|
1
1
|
#
|
2
2
|
# DO NOT MODIFY!!!!
|
3
|
-
# This file is automatically generated by racc 1.4.
|
3
|
+
# This file is automatically generated by racc 1.4.5
|
4
4
|
# from racc grammer file "grammar.ry".
|
5
5
|
#
|
6
6
|
#
|
7
7
|
# parser.rb: generated by racc (runtime embedded)
|
8
8
|
#
|
9
|
-
|
10
|
-
###### racc/parser.rb
|
11
|
-
|
9
|
+
###### racc/parser.rb begin
|
12
10
|
unless $".index 'racc/parser.rb'
|
13
11
|
$".push 'racc/parser.rb'
|
14
12
|
|
15
|
-
self.class.module_eval <<'..end
|
13
|
+
self.class.module_eval <<'..end racc/parser.rb modeval..id5256434e8a', 'racc/parser.rb', 1
|
16
14
|
#
|
17
|
-
# parser.rb
|
15
|
+
# $Id: parser.rb,v 1.7 2005/11/20 17:31:32 aamine Exp $
|
18
16
|
#
|
19
|
-
# Copyright (c) 1999-
|
17
|
+
# Copyright (c) 1999-2005 Minero Aoki
|
20
18
|
#
|
21
19
|
# This program is free software.
|
22
20
|
# You can distribute/modify this program under the same terms of ruby.
|
@@ -25,8 +23,6 @@ self.class.module_eval <<'..end /usr/lib/ruby/1.8/racc/parser.rb modeval..id1306
|
|
25
23
|
# into a Racc output file, you may use that output file
|
26
24
|
# without restriction.
|
27
25
|
#
|
28
|
-
# $raccId: parser.rb,v 1.4 2003/11/03 13:41:47 aamine Exp $
|
29
|
-
#
|
30
26
|
|
31
27
|
unless defined?(NotImplementedError)
|
32
28
|
NotImplementedError = NotImplementError
|
@@ -39,7 +35,6 @@ unless defined?(::ParseError)
|
|
39
35
|
ParseError = Racc::ParseError
|
40
36
|
end
|
41
37
|
|
42
|
-
|
43
38
|
module Racc
|
44
39
|
|
45
40
|
unless defined?(Racc_No_Extentions)
|
@@ -48,14 +43,14 @@ module Racc
|
|
48
43
|
|
49
44
|
class Parser
|
50
45
|
|
51
|
-
Racc_Runtime_Version = '1.4.
|
52
|
-
Racc_Runtime_Revision = '$
|
46
|
+
Racc_Runtime_Version = '1.4.5'
|
47
|
+
Racc_Runtime_Revision = '$Revision: 1.7 $'.split[1]
|
53
48
|
|
54
|
-
Racc_Runtime_Core_Version_R = '1.4.
|
55
|
-
Racc_Runtime_Core_Revision_R = '$
|
49
|
+
Racc_Runtime_Core_Version_R = '1.4.5'
|
50
|
+
Racc_Runtime_Core_Revision_R = '$Revision: 1.7 $'.split[1]
|
56
51
|
begin
|
57
52
|
require 'racc/cparse'
|
58
|
-
# Racc_Runtime_Core_Version_C = (defined in
|
53
|
+
# Racc_Runtime_Core_Version_C = (defined in extention)
|
59
54
|
Racc_Runtime_Core_Revision_C = Racc_Runtime_Core_Id_C.split[2]
|
60
55
|
unless new.respond_to?(:_racc_do_parse_c, true)
|
61
56
|
raise LoadError, 'old cparse.so'
|
@@ -121,7 +116,7 @@ module Racc
|
|
121
116
|
raise NotImplementedError, "#{self.class}\#next_token is not defined"
|
122
117
|
end
|
123
118
|
|
124
|
-
def _racc_do_parse_rb(
|
119
|
+
def _racc_do_parse_rb(arg, in_debug)
|
125
120
|
action_table, action_check, action_default, action_pointer,
|
126
121
|
goto_table, goto_check, goto_default, goto_pointer,
|
127
122
|
nt_base, reduce_table, token_table, shift_n,
|
@@ -166,11 +161,11 @@ module Racc
|
|
166
161
|
### yyparse
|
167
162
|
###
|
168
163
|
|
169
|
-
def yyparse(
|
164
|
+
def yyparse(recv, mid)
|
170
165
|
__send__(Racc_YY_Parse_Method, recv, mid, _racc_setup(), true)
|
171
166
|
end
|
172
167
|
|
173
|
-
def _racc_yyparse_rb(
|
168
|
+
def _racc_yyparse_rb(recv, mid, arg, c_debug)
|
174
169
|
action_table, action_check, action_default, action_pointer,
|
175
170
|
goto_table, goto_check, goto_default, goto_pointer,
|
176
171
|
nt_base, reduce_table, token_table, shift_n,
|
@@ -189,7 +184,6 @@ module Racc
|
|
189
184
|
end
|
190
185
|
end
|
191
186
|
recv.__send__(mid) do |tok, val|
|
192
|
-
# $stderr.puts "rd: tok=#{tok}, val=#{val}"
|
193
187
|
unless tok
|
194
188
|
@racc_t = 0
|
195
189
|
else
|
@@ -203,12 +197,7 @@ module Racc
|
|
203
197
|
act = action_table[i] and
|
204
198
|
action_check[i] == @racc_state[-1]
|
205
199
|
act = action_default[@racc_state[-1]]
|
206
|
-
# $stderr.puts "02: act=#{act}"
|
207
|
-
# $stderr.puts "curstate=#{@racc_state[-1]}"
|
208
|
-
else
|
209
|
-
# $stderr.puts "01: act=#{act}"
|
210
200
|
end
|
211
|
-
|
212
201
|
while act = _racc_evalact(act, arg)
|
213
202
|
;
|
214
203
|
end
|
@@ -221,9 +210,6 @@ module Racc
|
|
221
210
|
act = action_table[i] and
|
222
211
|
action_check[i] == @racc_state[-1]
|
223
212
|
act = action_default[@racc_state[-1]]
|
224
|
-
# $stderr.puts "04: act=#{act}"
|
225
|
-
else
|
226
|
-
# $stderr.puts "03: act=#{act}"
|
227
213
|
end
|
228
214
|
while act = _racc_evalact(act, arg)
|
229
215
|
;
|
@@ -237,13 +223,12 @@ module Racc
|
|
237
223
|
### common
|
238
224
|
###
|
239
225
|
|
240
|
-
def _racc_evalact(
|
241
|
-
# $stderr.puts "ea: act=#{act}"
|
226
|
+
def _racc_evalact(act, arg)
|
242
227
|
action_table, action_check, action_default, action_pointer,
|
243
228
|
goto_table, goto_check, goto_default, goto_pointer,
|
244
229
|
nt_base, reduce_table, token_table, shift_n,
|
245
230
|
reduce_n, use_result, * = arg
|
246
|
-
nerr = 0 # tmp
|
231
|
+
nerr = 0 # tmp
|
247
232
|
|
248
233
|
if act > 0 and act < shift_n
|
249
234
|
#
|
@@ -276,7 +261,7 @@ nerr = 0 # tmp
|
|
276
261
|
when 2 # yyaccept
|
277
262
|
return shift_n
|
278
263
|
else
|
279
|
-
raise
|
264
|
+
raise '[Racc Bug] unknown jump code'
|
280
265
|
end
|
281
266
|
end
|
282
267
|
|
@@ -314,7 +299,6 @@ nerr = 0 # tmp
|
|
314
299
|
break
|
315
300
|
end
|
316
301
|
end
|
317
|
-
|
318
302
|
throw :racc_end_parse, nil if @racc_state.size <= 1
|
319
303
|
@racc_state.pop
|
320
304
|
@racc_vstack.pop
|
@@ -326,7 +310,7 @@ nerr = 0 # tmp
|
|
326
310
|
return act
|
327
311
|
|
328
312
|
else
|
329
|
-
raise
|
313
|
+
raise "[Racc Bug] unknown action #{act.inspect}"
|
330
314
|
end
|
331
315
|
|
332
316
|
racc_next_state(@racc_state[-1], @racc_state) if @yydebug
|
@@ -334,7 +318,7 @@ nerr = 0 # tmp
|
|
334
318
|
nil
|
335
319
|
end
|
336
320
|
|
337
|
-
def _racc_do_reduce(
|
321
|
+
def _racc_do_reduce(arg, act)
|
338
322
|
action_table, action_check, action_default, action_pointer,
|
339
323
|
goto_table, goto_check, goto_default, goto_pointer,
|
340
324
|
nt_base, reduce_table, token_table, shift_n,
|
@@ -375,7 +359,7 @@ nerr = 0 # tmp
|
|
375
359
|
goto_default[k1]
|
376
360
|
end
|
377
361
|
|
378
|
-
def on_error(
|
362
|
+
def on_error(t, val, vstack)
|
379
363
|
raise ParseError, sprintf("\nparse error on value %s (%s)",
|
380
364
|
val.inspect, token_to_str(t) || '?')
|
381
365
|
end
|
@@ -396,20 +380,20 @@ nerr = 0 # tmp
|
|
396
380
|
# for debugging output
|
397
381
|
#
|
398
382
|
|
399
|
-
def racc_read_token(
|
383
|
+
def racc_read_token(t, tok, val)
|
400
384
|
@racc_debug_out.print 'read '
|
401
385
|
@racc_debug_out.print tok.inspect, '(', racc_token2str(t), ') '
|
402
386
|
@racc_debug_out.puts val.inspect
|
403
387
|
@racc_debug_out.puts
|
404
388
|
end
|
405
389
|
|
406
|
-
def racc_shift(
|
390
|
+
def racc_shift(tok, tstack, vstack)
|
407
391
|
@racc_debug_out.puts "shift #{racc_token2str tok}"
|
408
392
|
racc_print_stacks tstack, vstack
|
409
393
|
@racc_debug_out.puts
|
410
394
|
end
|
411
395
|
|
412
|
-
def racc_reduce(
|
396
|
+
def racc_reduce(toks, sim, tstack, vstack)
|
413
397
|
out = @racc_debug_out
|
414
398
|
out.print 'reduce '
|
415
399
|
if toks.empty?
|
@@ -428,20 +412,20 @@ nerr = 0 # tmp
|
|
428
412
|
@racc_debug_out.puts
|
429
413
|
end
|
430
414
|
|
431
|
-
def racc_e_pop(
|
415
|
+
def racc_e_pop(state, tstack, vstack)
|
432
416
|
@racc_debug_out.puts 'error recovering mode: pop token'
|
433
417
|
racc_print_states state
|
434
418
|
racc_print_stacks tstack, vstack
|
435
419
|
@racc_debug_out.puts
|
436
420
|
end
|
437
421
|
|
438
|
-
def racc_next_state(
|
422
|
+
def racc_next_state(curstate, state)
|
439
423
|
@racc_debug_out.puts "goto #{curstate}"
|
440
424
|
racc_print_states state
|
441
425
|
@racc_debug_out.puts
|
442
426
|
end
|
443
427
|
|
444
|
-
def racc_print_stacks(
|
428
|
+
def racc_print_stacks(t, v)
|
445
429
|
out = @racc_debug_out
|
446
430
|
out.print ' ['
|
447
431
|
t.each_index do |i|
|
@@ -450,34 +434,37 @@ nerr = 0 # tmp
|
|
450
434
|
out.puts ' ]'
|
451
435
|
end
|
452
436
|
|
453
|
-
def racc_print_states(
|
437
|
+
def racc_print_states(s)
|
454
438
|
out = @racc_debug_out
|
455
439
|
out.print ' ['
|
456
440
|
s.each {|st| out.print ' ', st }
|
457
441
|
out.puts ' ]'
|
458
442
|
end
|
459
443
|
|
460
|
-
def racc_token2str(
|
444
|
+
def racc_token2str(tok)
|
461
445
|
self.class::Racc_token_to_s_table[tok] or
|
462
|
-
raise
|
446
|
+
raise "[Racc Bug] can't convert token #{tok} to string"
|
463
447
|
end
|
464
448
|
|
465
|
-
def token_to_str(
|
449
|
+
def token_to_str(t)
|
466
450
|
self.class::Racc_token_to_s_table[t]
|
467
451
|
end
|
468
452
|
|
469
453
|
end
|
470
454
|
|
471
455
|
end
|
472
|
-
..end
|
473
|
-
end
|
456
|
+
..end racc/parser.rb modeval..id5256434e8a
|
457
|
+
end
|
458
|
+
###### racc/parser.rb end
|
474
459
|
|
475
460
|
|
476
461
|
module Nagios
|
477
462
|
|
478
463
|
class Parser < Racc::Parser
|
479
464
|
|
480
|
-
module_eval <<'..end grammar.ry modeval..
|
465
|
+
module_eval <<'..end grammar.ry modeval..idcb2ea30b34', 'grammar.ry', 57
|
466
|
+
|
467
|
+
class ::Nagios::Parser::SyntaxError < RuntimeError; end
|
481
468
|
|
482
469
|
def parse(src)
|
483
470
|
@src = src
|
@@ -490,12 +477,7 @@ def parse(src)
|
|
490
477
|
@line = 0
|
491
478
|
@yydebug = true
|
492
479
|
|
493
|
-
|
494
|
-
do_parse
|
495
|
-
rescue SyntaxError
|
496
|
-
$stderr.print "#{$!}\n"
|
497
|
-
exit
|
498
|
-
end
|
480
|
+
do_parse
|
499
481
|
end
|
500
482
|
|
501
483
|
# The lexer. Very simple.
|
@@ -607,12 +589,12 @@ def on_error(token, value, vstack )
|
|
607
589
|
if token == '$end'.intern
|
608
590
|
puts "okay, this is silly"
|
609
591
|
else
|
610
|
-
raise SyntaxError, msg
|
592
|
+
raise ::Nagios::Parser::SyntaxError, msg
|
611
593
|
end
|
612
594
|
end
|
613
|
-
..end grammar.ry modeval..
|
595
|
+
..end grammar.ry modeval..idcb2ea30b34
|
614
596
|
|
615
|
-
##### racc 1.4.
|
597
|
+
##### racc 1.4.5 generates ###
|
616
598
|
|
617
599
|
racc_reduce_table = [
|
618
600
|
0, 0, :racc_error,
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# A simple way to turn file names into singletons,
|
2
|
+
# so we don't have tons of copies of each file path around.
|
3
|
+
class Puppet::FileCollection
|
4
|
+
require 'puppet/file_collection/lookup'
|
5
|
+
|
6
|
+
def self.collection
|
7
|
+
@collection
|
8
|
+
end
|
9
|
+
|
10
|
+
def initialize
|
11
|
+
@paths = []
|
12
|
+
@inverse = {}
|
13
|
+
end
|
14
|
+
|
15
|
+
def index(path)
|
16
|
+
if i = @inverse[path]
|
17
|
+
return i
|
18
|
+
else
|
19
|
+
@paths << path
|
20
|
+
i = @inverse[path] = @paths.length - 1
|
21
|
+
return i
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def path(index)
|
26
|
+
@paths[index]
|
27
|
+
end
|
28
|
+
|
29
|
+
@collection = self.new
|
30
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'puppet/file_collection'
|
2
|
+
|
3
|
+
# A simple module for looking up file paths and indexes
|
4
|
+
# in a file collection.
|
5
|
+
module Puppet::FileCollection::Lookup
|
6
|
+
attr_accessor :line, :file_index
|
7
|
+
|
8
|
+
def file_collection
|
9
|
+
Puppet::FileCollection.collection
|
10
|
+
end
|
11
|
+
|
12
|
+
def file=(path)
|
13
|
+
@file_index = file_collection.index(path)
|
14
|
+
end
|
15
|
+
|
16
|
+
def file
|
17
|
+
return nil unless file_index
|
18
|
+
file_collection.path(file_index)
|
19
|
+
end
|
20
|
+
end
|
@@ -24,8 +24,12 @@ class Puppet::Node::Facts::Facter < Puppet::Indirector::Code
|
|
24
24
|
end
|
25
25
|
|
26
26
|
def self.loadfacts
|
27
|
-
#
|
28
|
-
|
27
|
+
# Add any per-module fact directories to the factpath
|
28
|
+
module_fact_dirs = Puppet[:modulepath].split(":").collect do |d|
|
29
|
+
Dir.glob("%s/*/plugins/facter" % d)
|
30
|
+
end.flatten
|
31
|
+
dirs = module_fact_dirs + Puppet[:factpath].split(":")
|
32
|
+
x = dirs.each do |dir|
|
29
33
|
loaddir(dir, "fact")
|
30
34
|
end
|
31
35
|
end
|
@@ -81,45 +81,10 @@ class Puppet::Node::Ldap < Puppet::Indirector::Ldap
|
|
81
81
|
def entry2hash(entry)
|
82
82
|
result = {}
|
83
83
|
result[:name] = entry.dn.split(',')[0].split("=")[1]
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
"Node entry %s specifies more than one parent: %s" % [entry.dn, values.inspect]
|
89
|
-
end
|
90
|
-
unless values.empty?
|
91
|
-
result[:parent] = values.shift
|
92
|
-
end
|
93
|
-
end
|
94
|
-
end
|
95
|
-
|
96
|
-
result[:classes] = []
|
97
|
-
class_attributes.each { |attr|
|
98
|
-
if values = entry.vals(attr)
|
99
|
-
values.each do |v| result[:classes] << v end
|
100
|
-
end
|
101
|
-
}
|
102
|
-
result[:classes].uniq!
|
103
|
-
|
104
|
-
result[:stacked] = []
|
105
|
-
stacked_params = stacked_attributes
|
106
|
-
stacked_params.each { |attr|
|
107
|
-
if values = entry.vals(attr)
|
108
|
-
result[:stacked] = result[:stacked] + values
|
109
|
-
end
|
110
|
-
}
|
111
|
-
|
112
|
-
|
113
|
-
result[:parameters] = entry.to_hash.inject({}) do |hash, ary|
|
114
|
-
unless stacked_params.include?(ary[0]) # don't add our stacked parameters to the main param list
|
115
|
-
if ary[1].length == 1
|
116
|
-
hash[ary[0]] = ary[1].shift
|
117
|
-
else
|
118
|
-
hash[ary[0]] = ary[1]
|
119
|
-
end
|
120
|
-
end
|
121
|
-
hash
|
122
|
-
end
|
84
|
+
result[:parent] = get_parent_from_entry(entry) if parent_attribute
|
85
|
+
result[:classes] = get_classes_from_entry(entry)
|
86
|
+
result[:stacked] = get_stacked_values_from_entry(entry)
|
87
|
+
result[:parameters] = get_parameters_from_entry(entry)
|
123
88
|
|
124
89
|
result[:environment] = result[:parameters]["environment"] if result[:parameters]["environment"]
|
125
90
|
|
@@ -138,6 +103,8 @@ class Puppet::Node::Ldap < Puppet::Indirector::Ldap
|
|
138
103
|
end
|
139
104
|
end
|
140
105
|
|
106
|
+
result[:parameters] = convert_parameters(result[:parameters])
|
107
|
+
|
141
108
|
result
|
142
109
|
end
|
143
110
|
|
@@ -178,6 +145,29 @@ class Puppet::Node::Ldap < Puppet::Indirector::Ldap
|
|
178
145
|
node.environment = information[:environment] if information[:environment]
|
179
146
|
end
|
180
147
|
|
148
|
+
def convert_parameters(parameters)
|
149
|
+
result = {}
|
150
|
+
parameters.each do |param, value|
|
151
|
+
if value.is_a?(Array)
|
152
|
+
result[param] = value.collect { |v| convert(v) }
|
153
|
+
else
|
154
|
+
result[param] = convert(value)
|
155
|
+
end
|
156
|
+
end
|
157
|
+
result
|
158
|
+
end
|
159
|
+
|
160
|
+
# Convert any values if necessary.
|
161
|
+
def convert(value)
|
162
|
+
case value
|
163
|
+
when Integer, Fixnum, Bignum; value
|
164
|
+
when "true"; true
|
165
|
+
when "false"; false
|
166
|
+
else
|
167
|
+
value
|
168
|
+
end
|
169
|
+
end
|
170
|
+
|
181
171
|
# Find information for our parent and merge it into the current info.
|
182
172
|
def find_and_merge_parent(parent, information)
|
183
173
|
unless parent_info = name2hash(parent)
|
@@ -224,4 +214,50 @@ class Puppet::Node::Ldap < Puppet::Indirector::Ldap
|
|
224
214
|
|
225
215
|
return info
|
226
216
|
end
|
217
|
+
|
218
|
+
def get_classes_from_entry(entry)
|
219
|
+
result = class_attributes.inject([]) do |array, attr|
|
220
|
+
if values = entry.vals(attr)
|
221
|
+
values.each do |v| array << v end
|
222
|
+
end
|
223
|
+
array
|
224
|
+
end
|
225
|
+
result.uniq
|
226
|
+
end
|
227
|
+
|
228
|
+
def get_parameters_from_entry(entry)
|
229
|
+
stacked_params = stacked_attributes
|
230
|
+
entry.to_hash.inject({}) do |hash, ary|
|
231
|
+
unless stacked_params.include?(ary[0]) # don't add our stacked parameters to the main param list
|
232
|
+
if ary[1].length == 1
|
233
|
+
hash[ary[0]] = ary[1].shift
|
234
|
+
else
|
235
|
+
hash[ary[0]] = ary[1]
|
236
|
+
end
|
237
|
+
end
|
238
|
+
hash
|
239
|
+
end
|
240
|
+
end
|
241
|
+
|
242
|
+
def get_parent_from_entry(entry)
|
243
|
+
pattr = parent_attribute
|
244
|
+
|
245
|
+
return nil unless values = entry.vals(pattr)
|
246
|
+
|
247
|
+
if values.length > 1
|
248
|
+
raise Puppet::Error,
|
249
|
+
"Node entry %s specifies more than one parent: %s" % [entry.dn, values.inspect]
|
250
|
+
end
|
251
|
+
return nil if values.empty?
|
252
|
+
return values.shift
|
253
|
+
end
|
254
|
+
|
255
|
+
def get_stacked_values_from_entry(entry)
|
256
|
+
stacked_attributes.inject([]) do |result, attr|
|
257
|
+
if values = entry.vals(attr)
|
258
|
+
result += values
|
259
|
+
end
|
260
|
+
result
|
261
|
+
end
|
262
|
+
end
|
227
263
|
end
|