puppet-parse 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +0 -5
- data/README.md +1 -3
- data/lib/puppet-parse/version.rb +1 -1
- data/lib/puppet-parse.rb +2 -2
- data/lib/vendor/puppet/agent/locker.rb +46 -0
- data/lib/vendor/puppet/agent.rb +99 -0
- data/lib/vendor/puppet/application/agent.rb +489 -0
- data/lib/vendor/puppet/application/apply.rb +266 -0
- data/lib/vendor/puppet/application/ca.rb +5 -0
- data/lib/vendor/puppet/application/catalog.rb +4 -0
- data/lib/vendor/puppet/application/cert.rb +240 -0
- data/lib/vendor/puppet/application/certificate.rb +13 -0
- data/lib/vendor/puppet/application/certificate_request.rb +4 -0
- data/lib/vendor/puppet/application/certificate_revocation_list.rb +4 -0
- data/lib/vendor/puppet/application/config.rb +4 -0
- data/lib/vendor/puppet/application/describe.rb +256 -0
- data/lib/vendor/puppet/application/device.rb +242 -0
- data/lib/vendor/puppet/application/doc.rb +275 -0
- data/lib/vendor/puppet/application/face_base.rb +264 -0
- data/lib/vendor/puppet/application/facts.rb +4 -0
- data/lib/vendor/puppet/application/file.rb +4 -0
- data/lib/vendor/puppet/application/filebucket.rb +191 -0
- data/lib/vendor/puppet/application/help.rb +4 -0
- data/lib/vendor/puppet/application/indirection_base.rb +4 -0
- data/lib/vendor/puppet/application/inspect.rb +191 -0
- data/lib/vendor/puppet/application/instrumentation_data.rb +4 -0
- data/lib/vendor/puppet/application/instrumentation_listener.rb +4 -0
- data/lib/vendor/puppet/application/instrumentation_probe.rb +4 -0
- data/lib/vendor/puppet/application/key.rb +4 -0
- data/lib/vendor/puppet/application/kick.rb +351 -0
- data/lib/vendor/puppet/application/man.rb +4 -0
- data/lib/vendor/puppet/application/master.rb +263 -0
- data/lib/vendor/puppet/application/module.rb +11 -0
- data/lib/vendor/puppet/application/node.rb +4 -0
- data/lib/vendor/puppet/application/parser.rb +5 -0
- data/lib/vendor/puppet/application/plugin.rb +3 -0
- data/lib/vendor/puppet/application/queue.rb +161 -0
- data/lib/vendor/puppet/application/report.rb +4 -0
- data/lib/vendor/puppet/application/resource.rb +237 -0
- data/lib/vendor/puppet/application/resource_type.rb +4 -0
- data/lib/vendor/puppet/application/secret_agent.rb +6 -0
- data/lib/vendor/puppet/application/status.rb +4 -0
- data/lib/vendor/puppet/application.rb +421 -0
- data/lib/vendor/puppet/configurer/downloader.rb +86 -0
- data/lib/vendor/puppet/configurer/fact_handler.rb +56 -0
- data/lib/vendor/puppet/configurer/plugin_handler.rb +37 -0
- data/lib/vendor/puppet/configurer.rb +249 -0
- data/lib/vendor/puppet/daemon.rb +200 -0
- data/lib/vendor/puppet/defaults.rb +970 -0
- data/lib/vendor/puppet/dsl/resource_api.rb +120 -0
- data/lib/vendor/puppet/dsl/resource_type_api.rb +34 -0
- data/lib/vendor/puppet/dsl.rb +7 -0
- data/lib/vendor/puppet/error.rb +43 -0
- data/lib/vendor/puppet/external/base64.rb +19 -0
- data/lib/vendor/puppet/external/dot.rb +326 -0
- data/lib/vendor/puppet/external/lock.rb +63 -0
- data/lib/vendor/puppet/external/nagios/base.rb +472 -0
- data/lib/vendor/puppet/external/nagios/grammar.ry +185 -0
- data/lib/vendor/puppet/external/nagios/makefile +9 -0
- data/lib/vendor/puppet/external/nagios/parser.rb +775 -0
- data/lib/vendor/puppet/external/nagios.rb +48 -0
- data/lib/vendor/puppet/external/pson/common.rb +370 -0
- data/lib/vendor/puppet/external/pson/pure/generator.rb +401 -0
- data/lib/vendor/puppet/external/pson/pure/parser.rb +264 -0
- data/lib/vendor/puppet/external/pson/pure.rb +77 -0
- data/lib/vendor/puppet/external/pson/version.rb +8 -0
- data/lib/vendor/puppet/face/ca.rb +242 -0
- data/lib/vendor/puppet/face/catalog/select.rb +49 -0
- data/lib/vendor/puppet/face/catalog.rb +131 -0
- data/lib/vendor/puppet/face/certificate.rb +148 -0
- data/lib/vendor/puppet/face/certificate_request.rb +53 -0
- data/lib/vendor/puppet/face/certificate_revocation_list.rb +58 -0
- data/lib/vendor/puppet/face/config.rb +45 -0
- data/lib/vendor/puppet/face/facts.rb +81 -0
- data/lib/vendor/puppet/face/file/download.rb +54 -0
- data/lib/vendor/puppet/face/file/store.rb +21 -0
- data/lib/vendor/puppet/face/file.rb +47 -0
- data/lib/vendor/puppet/face/help/action.erb +53 -0
- data/lib/vendor/puppet/face/help/face.erb +79 -0
- data/lib/vendor/puppet/face/help/global.erb +19 -0
- data/lib/vendor/puppet/face/help/man.erb +136 -0
- data/lib/vendor/puppet/face/help.rb +131 -0
- data/lib/vendor/puppet/face/instrumentation_data.rb +28 -0
- data/lib/vendor/puppet/face/instrumentation_listener.rb +96 -0
- data/lib/vendor/puppet/face/instrumentation_probe.rb +77 -0
- data/lib/vendor/puppet/face/key.rb +15 -0
- data/lib/vendor/puppet/face/man.rb +93 -0
- data/lib/vendor/puppet/face/module/build.rb +37 -0
- data/lib/vendor/puppet/face/module/changes.rb +38 -0
- data/lib/vendor/puppet/face/module/generate.rb +42 -0
- data/lib/vendor/puppet/face/module/install.rb +174 -0
- data/lib/vendor/puppet/face/module/list.rb +285 -0
- data/lib/vendor/puppet/face/module/search.rb +88 -0
- data/lib/vendor/puppet/face/module/uninstall.rb +86 -0
- data/lib/vendor/puppet/face/module/upgrade.rb +84 -0
- data/lib/vendor/puppet/face/module.rb +17 -0
- data/lib/vendor/puppet/face/node/clean.rb +156 -0
- data/lib/vendor/puppet/face/node.rb +43 -0
- data/lib/vendor/puppet/face/parser.rb +51 -0
- data/lib/vendor/puppet/face/plugin.rb +55 -0
- data/lib/vendor/puppet/face/report.rb +56 -0
- data/lib/vendor/puppet/face/resource.rb +53 -0
- data/lib/vendor/puppet/face/resource_type.rb +81 -0
- data/lib/vendor/puppet/face/secret_agent.rb +54 -0
- data/lib/vendor/puppet/face/status.rb +53 -0
- data/lib/vendor/puppet/face.rb +12 -0
- data/lib/vendor/puppet/feature/base.rb +67 -0
- data/lib/vendor/puppet/feature/eventlog.rb +6 -0
- data/lib/vendor/puppet/feature/pson.rb +6 -0
- data/lib/vendor/puppet/feature/rack.rb +24 -0
- data/lib/vendor/puppet/feature/rails.rb +30 -0
- data/lib/vendor/puppet/feature/rubygems.rb +3 -0
- data/lib/vendor/puppet/feature/selinux.rb +3 -0
- data/lib/vendor/puppet/feature/ssh.rb +4 -0
- data/lib/vendor/puppet/feature/stomp.rb +6 -0
- data/lib/vendor/puppet/feature/zlib.rb +6 -0
- data/lib/vendor/puppet/file_bucket/dipper.rb +107 -0
- data/lib/vendor/puppet/file_bucket/file.rb +55 -0
- data/lib/vendor/puppet/file_bucket.rb +4 -0
- data/lib/vendor/puppet/file_collection/lookup.rb +10 -0
- data/lib/vendor/puppet/file_collection.rb +19 -0
- data/lib/vendor/puppet/file_serving/base.rb +88 -0
- data/lib/vendor/puppet/file_serving/configuration/parser.rb +115 -0
- data/lib/vendor/puppet/file_serving/configuration.rb +122 -0
- data/lib/vendor/puppet/file_serving/content.rb +45 -0
- data/lib/vendor/puppet/file_serving/fileset.rb +173 -0
- data/lib/vendor/puppet/file_serving/metadata.rb +155 -0
- data/lib/vendor/puppet/file_serving/mount/file.rb +121 -0
- data/lib/vendor/puppet/file_serving/mount/modules.rb +24 -0
- data/lib/vendor/puppet/file_serving/mount/plugins.rb +26 -0
- data/lib/vendor/puppet/file_serving/mount.rb +39 -0
- data/lib/vendor/puppet/file_serving/terminus_helper.rb +21 -0
- data/lib/vendor/puppet/file_serving/terminus_selector.rb +28 -0
- data/lib/vendor/puppet/file_serving.rb +3 -0
- data/lib/vendor/puppet/forge/cache.rb +55 -0
- data/lib/vendor/puppet/forge/repository.rb +102 -0
- data/lib/vendor/puppet/forge.rb +98 -0
- data/lib/vendor/puppet/indirector/active_record.rb +28 -0
- data/lib/vendor/puppet/indirector/catalog/active_record.rb +41 -0
- data/lib/vendor/puppet/indirector/catalog/compiler.rb +153 -0
- data/lib/vendor/puppet/indirector/catalog/queue.rb +5 -0
- data/lib/vendor/puppet/indirector/catalog/rest.rb +6 -0
- data/lib/vendor/puppet/indirector/catalog/static_compiler.rb +136 -0
- data/lib/vendor/puppet/indirector/catalog/store_configs.rb +5 -0
- data/lib/vendor/puppet/indirector/catalog/yaml.rb +22 -0
- data/lib/vendor/puppet/indirector/certificate/ca.rb +9 -0
- data/lib/vendor/puppet/indirector/certificate/disabled_ca.rb +22 -0
- data/lib/vendor/puppet/indirector/certificate/file.rb +9 -0
- data/lib/vendor/puppet/indirector/certificate/rest.rb +15 -0
- data/lib/vendor/puppet/indirector/certificate_request/ca.rb +22 -0
- data/lib/vendor/puppet/indirector/certificate_request/disabled_ca.rb +22 -0
- data/lib/vendor/puppet/indirector/certificate_request/file.rb +8 -0
- data/lib/vendor/puppet/indirector/certificate_request/rest.rb +9 -0
- data/lib/vendor/puppet/indirector/certificate_revocation_list/ca.rb +8 -0
- data/lib/vendor/puppet/indirector/certificate_revocation_list/disabled_ca.rb +22 -0
- data/lib/vendor/puppet/indirector/certificate_revocation_list/file.rb +8 -0
- data/lib/vendor/puppet/indirector/certificate_revocation_list/rest.rb +9 -0
- data/lib/vendor/puppet/indirector/certificate_status/file.rb +82 -0
- data/lib/vendor/puppet/indirector/certificate_status/rest.rb +10 -0
- data/lib/vendor/puppet/indirector/certificate_status.rb +4 -0
- data/lib/vendor/puppet/indirector/code.rb +6 -0
- data/lib/vendor/puppet/indirector/couch.rb +78 -0
- data/lib/vendor/puppet/indirector/direct_file_server.rb +19 -0
- data/lib/vendor/puppet/indirector/envelope.rb +11 -0
- data/lib/vendor/puppet/indirector/exec.rb +48 -0
- data/lib/vendor/puppet/indirector/face.rb +137 -0
- data/lib/vendor/puppet/indirector/facts/active_record.rb +36 -0
- data/lib/vendor/puppet/indirector/facts/couch.rb +31 -0
- data/lib/vendor/puppet/indirector/facts/facter.rb +96 -0
- data/lib/vendor/puppet/indirector/facts/inventory_active_record.rb +100 -0
- data/lib/vendor/puppet/indirector/facts/inventory_service.rb +20 -0
- data/lib/vendor/puppet/indirector/facts/memory.rb +9 -0
- data/lib/vendor/puppet/indirector/facts/network_device.rb +25 -0
- data/lib/vendor/puppet/indirector/facts/rest.rb +8 -0
- data/lib/vendor/puppet/indirector/facts/store_configs.rb +5 -0
- data/lib/vendor/puppet/indirector/facts/yaml.rb +82 -0
- data/lib/vendor/puppet/indirector/file_bucket_file/file.rb +136 -0
- data/lib/vendor/puppet/indirector/file_bucket_file/rest.rb +8 -0
- data/lib/vendor/puppet/indirector/file_bucket_file/selector.rb +49 -0
- data/lib/vendor/puppet/indirector/file_content/file.rb +7 -0
- data/lib/vendor/puppet/indirector/file_content/file_server.rb +7 -0
- data/lib/vendor/puppet/indirector/file_content/rest.rb +7 -0
- data/lib/vendor/puppet/indirector/file_content/selector.rb +30 -0
- data/lib/vendor/puppet/indirector/file_content.rb +5 -0
- data/lib/vendor/puppet/indirector/file_metadata/file.rb +22 -0
- data/lib/vendor/puppet/indirector/file_metadata/file_server.rb +7 -0
- data/lib/vendor/puppet/indirector/file_metadata/rest.rb +7 -0
- data/lib/vendor/puppet/indirector/file_metadata/selector.rb +30 -0
- data/lib/vendor/puppet/indirector/file_metadata.rb +5 -0
- data/lib/vendor/puppet/indirector/file_server.rb +65 -0
- data/lib/vendor/puppet/indirector/indirection.rb +323 -0
- data/lib/vendor/puppet/indirector/instrumentation_data/local.rb +19 -0
- data/lib/vendor/puppet/indirector/instrumentation_data/rest.rb +5 -0
- data/lib/vendor/puppet/indirector/instrumentation_data.rb +3 -0
- data/lib/vendor/puppet/indirector/instrumentation_listener/local.rb +23 -0
- data/lib/vendor/puppet/indirector/instrumentation_listener/rest.rb +5 -0
- data/lib/vendor/puppet/indirector/instrumentation_listener.rb +3 -0
- data/lib/vendor/puppet/indirector/instrumentation_probe/local.rb +24 -0
- data/lib/vendor/puppet/indirector/instrumentation_probe/rest.rb +5 -0
- data/lib/vendor/puppet/indirector/instrumentation_probe.rb +3 -0
- data/lib/vendor/puppet/indirector/inventory/yaml.rb +81 -0
- data/lib/vendor/puppet/indirector/key/ca.rb +12 -0
- data/lib/vendor/puppet/indirector/key/disabled_ca.rb +22 -0
- data/lib/vendor/puppet/indirector/key/file.rb +42 -0
- data/lib/vendor/puppet/indirector/ldap.rb +78 -0
- data/lib/vendor/puppet/indirector/memory.rb +21 -0
- data/lib/vendor/puppet/indirector/node/active_record.rb +13 -0
- data/lib/vendor/puppet/indirector/node/exec.rb +60 -0
- data/lib/vendor/puppet/indirector/node/ldap.rb +256 -0
- data/lib/vendor/puppet/indirector/node/memory.rb +10 -0
- data/lib/vendor/puppet/indirector/node/plain.rb +19 -0
- data/lib/vendor/puppet/indirector/node/rest.rb +7 -0
- data/lib/vendor/puppet/indirector/node/store_configs.rb +5 -0
- data/lib/vendor/puppet/indirector/node/yaml.rb +7 -0
- data/lib/vendor/puppet/indirector/plain.rb +9 -0
- data/lib/vendor/puppet/indirector/queue.rb +81 -0
- data/lib/vendor/puppet/indirector/report/processor.rb +61 -0
- data/lib/vendor/puppet/indirector/report/rest.rb +7 -0
- data/lib/vendor/puppet/indirector/report/yaml.rb +11 -0
- data/lib/vendor/puppet/indirector/request.rb +204 -0
- data/lib/vendor/puppet/indirector/resource/active_record.rb +93 -0
- data/lib/vendor/puppet/indirector/resource/ral.rb +53 -0
- data/lib/vendor/puppet/indirector/resource/rest.rb +5 -0
- data/lib/vendor/puppet/indirector/resource/store_configs.rb +3 -0
- data/lib/vendor/puppet/indirector/resource_type/parser.rb +43 -0
- data/lib/vendor/puppet/indirector/resource_type/rest.rb +7 -0
- data/lib/vendor/puppet/indirector/resource_type.rb +5 -0
- data/lib/vendor/puppet/indirector/rest.rb +166 -0
- data/lib/vendor/puppet/indirector/run/local.rb +8 -0
- data/lib/vendor/puppet/indirector/run/rest.rb +6 -0
- data/lib/vendor/puppet/indirector/ssl_file.rb +178 -0
- data/lib/vendor/puppet/indirector/status/local.rb +7 -0
- data/lib/vendor/puppet/indirector/status/rest.rb +5 -0
- data/lib/vendor/puppet/indirector/status.rb +3 -0
- data/lib/vendor/puppet/indirector/store_configs.rb +30 -0
- data/lib/vendor/puppet/indirector/terminus.rb +145 -0
- data/lib/vendor/puppet/indirector/yaml.rb +75 -0
- data/lib/vendor/puppet/indirector.rb +57 -0
- data/lib/vendor/puppet/interface/action.rb +322 -0
- data/lib/vendor/puppet/interface/action_builder.rb +74 -0
- data/lib/vendor/puppet/interface/action_manager.rb +74 -0
- data/lib/vendor/puppet/interface/documentation.rb +230 -0
- data/lib/vendor/puppet/interface/face_collection.rb +128 -0
- data/lib/vendor/puppet/interface/option.rb +127 -0
- data/lib/vendor/puppet/interface/option_builder.rb +67 -0
- data/lib/vendor/puppet/interface/option_manager.rb +68 -0
- data/lib/vendor/puppet/interface.rb +161 -0
- data/lib/vendor/puppet/metatype/manager.rb +141 -0
- data/lib/vendor/puppet/module.rb +314 -0
- data/lib/vendor/puppet/module_tool/applications/application.rb +82 -0
- data/lib/vendor/puppet/module_tool/applications/builder.rb +91 -0
- data/lib/vendor/puppet/module_tool/applications/checksummer.rb +56 -0
- data/lib/vendor/puppet/module_tool/applications/generator.rb +141 -0
- data/lib/vendor/puppet/module_tool/applications/installer.rb +183 -0
- data/lib/vendor/puppet/module_tool/applications/searcher.rb +15 -0
- data/lib/vendor/puppet/module_tool/applications/uninstaller.rb +107 -0
- data/lib/vendor/puppet/module_tool/applications/unpacker.rb +67 -0
- data/lib/vendor/puppet/module_tool/applications/upgrader.rb +109 -0
- data/lib/vendor/puppet/module_tool/applications.rb +15 -0
- data/lib/vendor/puppet/module_tool/checksums.rb +52 -0
- data/lib/vendor/puppet/module_tool/contents_description.rb +82 -0
- data/lib/vendor/puppet/module_tool/dependency.rb +24 -0
- data/lib/vendor/puppet/module_tool/errors/base.rb +15 -0
- data/lib/vendor/puppet/module_tool/errors/installer.rb +90 -0
- data/lib/vendor/puppet/module_tool/errors/shared.rb +115 -0
- data/lib/vendor/puppet/module_tool/errors/uninstaller.rb +45 -0
- data/lib/vendor/puppet/module_tool/errors/upgrader.rb +72 -0
- data/lib/vendor/puppet/module_tool/errors.rb +9 -0
- data/lib/vendor/puppet/module_tool/metadata.rb +141 -0
- data/lib/vendor/puppet/module_tool/modulefile.rb +75 -0
- data/lib/vendor/puppet/module_tool/shared_behaviors.rb +161 -0
- data/lib/vendor/puppet/module_tool/skeleton/templates/generator/Modulefile.erb +11 -0
- data/lib/vendor/puppet/module_tool/skeleton/templates/generator/README.erb +16 -0
- data/lib/vendor/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb +41 -0
- data/lib/vendor/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb +17 -0
- data/lib/vendor/puppet/module_tool/skeleton/templates/generator/tests/init.pp.erb +11 -0
- data/lib/vendor/puppet/module_tool/skeleton.rb +34 -0
- data/lib/vendor/puppet/module_tool.rb +99 -0
- data/lib/vendor/puppet/network/authconfig.rb +174 -0
- data/lib/vendor/puppet/network/authorization.rb +76 -0
- data/lib/vendor/puppet/network/authstore.rb +267 -0
- data/lib/vendor/puppet/network/client_request.rb +29 -0
- data/lib/vendor/puppet/network/format.rb +111 -0
- data/lib/vendor/puppet/network/format_handler.rb +181 -0
- data/lib/vendor/puppet/network/formats.rb +171 -0
- data/lib/vendor/puppet/network/handler/ca.rb +61 -0
- data/lib/vendor/puppet/network/handler/filebucket.rb +53 -0
- data/lib/vendor/puppet/network/handler/fileserver.rb +732 -0
- data/lib/vendor/puppet/network/handler/master.rb +87 -0
- data/lib/vendor/puppet/network/handler/report.rb +82 -0
- data/lib/vendor/puppet/network/handler/runner.rb +33 -0
- data/lib/vendor/puppet/network/handler/status.rb +18 -0
- data/lib/vendor/puppet/network/handler.rb +50 -0
- data/lib/vendor/puppet/network/http/api/v1.rb +83 -0
- data/lib/vendor/puppet/network/http/api.rb +4 -0
- data/lib/vendor/puppet/network/http/compression.rb +114 -0
- data/lib/vendor/puppet/network/http/handler.rb +247 -0
- data/lib/vendor/puppet/network/http/mongrel/rest.rb +99 -0
- data/lib/vendor/puppet/network/http/mongrel.rb +55 -0
- data/lib/vendor/puppet/network/http/rack/httphandler.rb +16 -0
- data/lib/vendor/puppet/network/http/rack/rest.rb +100 -0
- data/lib/vendor/puppet/network/http/rack/xmlrpc.rb +65 -0
- data/lib/vendor/puppet/network/http/rack.rb +65 -0
- data/lib/vendor/puppet/network/http/webrick/rest.rb +81 -0
- data/lib/vendor/puppet/network/http/webrick.rb +141 -0
- data/lib/vendor/puppet/network/http.rb +15 -0
- data/lib/vendor/puppet/network/http_pool.rb +57 -0
- data/lib/vendor/puppet/network/http_server/mongrel.rb +129 -0
- data/lib/vendor/puppet/network/http_server.rb +3 -0
- data/lib/vendor/puppet/network/rest_authconfig.rb +102 -0
- data/lib/vendor/puppet/network/rest_authorization.rb +23 -0
- data/lib/vendor/puppet/network/rest_controller.rb +2 -0
- data/lib/vendor/puppet/network/rights.rb +275 -0
- data/lib/vendor/puppet/network/server.rb +164 -0
- data/lib/vendor/puppet/network/xmlrpc/processor.rb +86 -0
- data/lib/vendor/puppet/network/xmlrpc/server.rb +19 -0
- data/lib/vendor/puppet/network/xmlrpc/webrick_servlet.rb +114 -0
- data/lib/vendor/puppet/network.rb +3 -0
- data/lib/vendor/puppet/node/environment.rb +216 -0
- data/lib/vendor/puppet/node/facts.rb +99 -0
- data/lib/vendor/puppet/node/inventory.rb +7 -0
- data/lib/vendor/puppet/node.rb +120 -0
- data/lib/vendor/puppet/parameter/path.rb +34 -0
- data/lib/vendor/puppet/parameter/value.rb +69 -0
- data/lib/vendor/puppet/parameter/value_collection.rb +143 -0
- data/lib/vendor/puppet/parameter.rb +316 -0
- data/lib/vendor/puppet/parser/ast/arithmetic_operator.rb +39 -0
- data/lib/vendor/puppet/parser/ast/astarray.rb +50 -0
- data/lib/vendor/puppet/parser/ast/asthash.rb +37 -0
- data/lib/vendor/puppet/parser/ast/boolean_operator.rb +46 -0
- data/lib/vendor/puppet/parser/ast/branch.rb +37 -0
- data/lib/vendor/puppet/parser/ast/caseopt.rb +52 -0
- data/lib/vendor/puppet/parser/ast/casestatement.rb +44 -0
- data/lib/vendor/puppet/parser/ast/collection.rb +49 -0
- data/lib/vendor/puppet/parser/ast/collexpr.rb +57 -0
- data/lib/vendor/puppet/parser/ast/comparison_operator.rb +38 -0
- data/lib/vendor/puppet/parser/ast/definition.rb +17 -0
- data/lib/vendor/puppet/parser/ast/else.rb +22 -0
- data/lib/vendor/puppet/parser/ast/function.rb +50 -0
- data/lib/vendor/puppet/parser/ast/hostclass.rb +29 -0
- data/lib/vendor/puppet/parser/ast/ifstatement.rb +34 -0
- data/lib/vendor/puppet/parser/ast/in_operator.rb +24 -0
- data/lib/vendor/puppet/parser/ast/leaf.rb +221 -0
- data/lib/vendor/puppet/parser/ast/match_operator.rb +28 -0
- data/lib/vendor/puppet/parser/ast/minus.rb +23 -0
- data/lib/vendor/puppet/parser/ast/node.rb +20 -0
- data/lib/vendor/puppet/parser/ast/nop.rb +11 -0
- data/lib/vendor/puppet/parser/ast/not.rb +19 -0
- data/lib/vendor/puppet/parser/ast/relationship.rb +47 -0
- data/lib/vendor/puppet/parser/ast/resource.rb +74 -0
- data/lib/vendor/puppet/parser/ast/resource_defaults.rb +24 -0
- data/lib/vendor/puppet/parser/ast/resource_instance.rb +9 -0
- data/lib/vendor/puppet/parser/ast/resource_override.rb +67 -0
- data/lib/vendor/puppet/parser/ast/resource_reference.rb +28 -0
- data/lib/vendor/puppet/parser/ast/resourceparam.rb +29 -0
- data/lib/vendor/puppet/parser/ast/selector.rb +44 -0
- data/lib/vendor/puppet/parser/ast/tag.rb +24 -0
- data/lib/vendor/puppet/parser/ast/top_level_construct.rb +4 -0
- data/lib/vendor/puppet/parser/ast/vardef.rb +33 -0
- data/lib/vendor/puppet/parser/ast.rb +139 -0
- data/lib/vendor/puppet/parser/collector.rb +176 -0
- data/lib/vendor/puppet/parser/compiler.rb +476 -0
- data/lib/vendor/puppet/parser/files.rb +88 -0
- data/lib/vendor/puppet/parser/functions/create_resources.rb +75 -0
- data/lib/vendor/puppet/parser/functions/defined.rb +49 -0
- data/lib/vendor/puppet/parser/functions/extlookup.rb +152 -0
- data/lib/vendor/puppet/parser/functions/fail.rb +4 -0
- data/lib/vendor/puppet/parser/functions/file.rb +23 -0
- data/lib/vendor/puppet/parser/functions/fqdn_rand.rb +13 -0
- data/lib/vendor/puppet/parser/functions/generate.rb +37 -0
- data/lib/vendor/puppet/parser/functions/include.rb +24 -0
- data/lib/vendor/puppet/parser/functions/inline_template.rb +21 -0
- data/lib/vendor/puppet/parser/functions/md5.rb +5 -0
- data/lib/vendor/puppet/parser/functions/realize.rb +14 -0
- data/lib/vendor/puppet/parser/functions/regsubst.rb +119 -0
- data/lib/vendor/puppet/parser/functions/require.rb +57 -0
- data/lib/vendor/puppet/parser/functions/search.rb +7 -0
- data/lib/vendor/puppet/parser/functions/sha1.rb +5 -0
- data/lib/vendor/puppet/parser/functions/shellquote.rb +61 -0
- data/lib/vendor/puppet/parser/functions/split.rb +29 -0
- data/lib/vendor/puppet/parser/functions/sprintf.rb +39 -0
- data/lib/vendor/puppet/parser/functions/tag.rb +6 -0
- data/lib/vendor/puppet/parser/functions/tagged.rb +18 -0
- data/lib/vendor/puppet/parser/functions/template.rb +23 -0
- data/lib/vendor/puppet/parser/functions/versioncmp.rb +37 -0
- data/lib/vendor/puppet/parser/functions.rb +165 -0
- data/lib/vendor/puppet/parser/grammar.ra +771 -0
- data/lib/vendor/puppet/parser/lexer.rb +617 -0
- data/lib/vendor/puppet/parser/makefile +8 -0
- data/lib/vendor/puppet/parser/parser.rb +2421 -0
- data/lib/vendor/puppet/parser/parser_support.rb +211 -0
- data/lib/vendor/puppet/parser/relationship.rb +62 -0
- data/lib/vendor/puppet/parser/resource/param.rb +25 -0
- data/lib/vendor/puppet/parser/resource.rb +341 -0
- data/lib/vendor/puppet/parser/scope.rb +497 -0
- data/lib/vendor/puppet/parser/templatewrapper.rb +115 -0
- data/lib/vendor/puppet/parser/type_loader.rb +172 -0
- data/lib/vendor/puppet/parser/yaml_trimmer.rb +9 -0
- data/lib/vendor/puppet/parser.rb +4 -0
- data/lib/vendor/puppet/property/ensure.rb +92 -0
- data/lib/vendor/puppet/property/keyvalue.rb +86 -0
- data/lib/vendor/puppet/property/list.rb +75 -0
- data/lib/vendor/puppet/property/ordered_list.rb +22 -0
- data/lib/vendor/puppet/property.rb +373 -0
- data/lib/vendor/puppet/provider/aixobject.rb +393 -0
- data/lib/vendor/puppet/provider/augeas/augeas.rb +418 -0
- data/lib/vendor/puppet/provider/cisco.rb +9 -0
- data/lib/vendor/puppet/provider/computer/computer.rb +20 -0
- data/lib/vendor/puppet/provider/confine/exists.rb +19 -0
- data/lib/vendor/puppet/provider/confine/false.rb +19 -0
- data/lib/vendor/puppet/provider/confine/feature.rb +17 -0
- data/lib/vendor/puppet/provider/confine/true.rb +20 -0
- data/lib/vendor/puppet/provider/confine/variable.rb +59 -0
- data/lib/vendor/puppet/provider/confine.rb +80 -0
- data/lib/vendor/puppet/provider/confine_collection.rb +50 -0
- data/lib/vendor/puppet/provider/confiner.rb +16 -0
- data/lib/vendor/puppet/provider/cron/crontab.rb +200 -0
- data/lib/vendor/puppet/provider/exec/posix.rb +39 -0
- data/lib/vendor/puppet/provider/exec/shell.rb +25 -0
- data/lib/vendor/puppet/provider/exec/windows.rb +56 -0
- data/lib/vendor/puppet/provider/exec.rb +84 -0
- data/lib/vendor/puppet/provider/file/posix.rb +135 -0
- data/lib/vendor/puppet/provider/file/windows.rb +88 -0
- data/lib/vendor/puppet/provider/group/aix.rb +141 -0
- data/lib/vendor/puppet/provider/group/directoryservice.rb +12 -0
- data/lib/vendor/puppet/provider/group/groupadd.rb +29 -0
- data/lib/vendor/puppet/provider/group/ldap.rb +45 -0
- data/lib/vendor/puppet/provider/group/pw.rb +48 -0
- data/lib/vendor/puppet/provider/group/windows_adsi.rb +54 -0
- data/lib/vendor/puppet/provider/host/parsed.rb +44 -0
- data/lib/vendor/puppet/provider/interface/base.rb +0 -0
- data/lib/vendor/puppet/provider/interface/cisco.rb +27 -0
- data/lib/vendor/puppet/provider/ldap.rb +137 -0
- data/lib/vendor/puppet/provider/macauthorization/macauthorization.rb +313 -0
- data/lib/vendor/puppet/provider/mailalias/aliases.rb +44 -0
- data/lib/vendor/puppet/provider/maillist/mailman.rb +108 -0
- data/lib/vendor/puppet/provider/mcx/mcxcontent.rb +166 -0
- data/lib/vendor/puppet/provider/mount/parsed.rb +124 -0
- data/lib/vendor/puppet/provider/mount.rb +46 -0
- data/lib/vendor/puppet/provider/naginator.rb +63 -0
- data/lib/vendor/puppet/provider/nameservice/directoryservice.rb +652 -0
- data/lib/vendor/puppet/provider/nameservice/objectadd.rb +33 -0
- data/lib/vendor/puppet/provider/nameservice/pw.rb +21 -0
- data/lib/vendor/puppet/provider/nameservice.rb +276 -0
- data/lib/vendor/puppet/provider/network_device.rb +68 -0
- data/lib/vendor/puppet/provider/package/aix.rb +128 -0
- data/lib/vendor/puppet/provider/package/appdmg.rb +109 -0
- data/lib/vendor/puppet/provider/package/apple.rb +47 -0
- data/lib/vendor/puppet/provider/package/apt.rb +111 -0
- data/lib/vendor/puppet/provider/package/aptitude.rb +29 -0
- data/lib/vendor/puppet/provider/package/aptrpm.rb +83 -0
- data/lib/vendor/puppet/provider/package/blastwave.rb +111 -0
- data/lib/vendor/puppet/provider/package/dpkg.rb +155 -0
- data/lib/vendor/puppet/provider/package/fink.rb +81 -0
- data/lib/vendor/puppet/provider/package/freebsd.rb +49 -0
- data/lib/vendor/puppet/provider/package/gem.rb +127 -0
- data/lib/vendor/puppet/provider/package/hpux.rb +44 -0
- data/lib/vendor/puppet/provider/package/macports.rb +105 -0
- data/lib/vendor/puppet/provider/package/msi.rb +141 -0
- data/lib/vendor/puppet/provider/package/nim.rb +35 -0
- data/lib/vendor/puppet/provider/package/openbsd.rb +112 -0
- data/lib/vendor/puppet/provider/package/pacman.rb +94 -0
- data/lib/vendor/puppet/provider/package/pip.rb +111 -0
- data/lib/vendor/puppet/provider/package/pkg.rb +112 -0
- data/lib/vendor/puppet/provider/package/pkgdmg.rb +123 -0
- data/lib/vendor/puppet/provider/package/pkgutil.rb +174 -0
- data/lib/vendor/puppet/provider/package/portage.rb +124 -0
- data/lib/vendor/puppet/provider/package/ports.rb +94 -0
- data/lib/vendor/puppet/provider/package/portupgrade.rb +241 -0
- data/lib/vendor/puppet/provider/package/rpm.rb +132 -0
- data/lib/vendor/puppet/provider/package/rug.rb +52 -0
- data/lib/vendor/puppet/provider/package/sun.rb +154 -0
- data/lib/vendor/puppet/provider/package/sunfreeware.rb +9 -0
- data/lib/vendor/puppet/provider/package/up2date.rb +41 -0
- data/lib/vendor/puppet/provider/package/urpmi.rb +59 -0
- data/lib/vendor/puppet/provider/package/yum.rb +106 -0
- data/lib/vendor/puppet/provider/package/yumhelper.py +129 -0
- data/lib/vendor/puppet/provider/package/zypper.rb +84 -0
- data/lib/vendor/puppet/provider/package.rb +28 -0
- data/lib/vendor/puppet/provider/parsedfile.rb +374 -0
- data/lib/vendor/puppet/provider/port/parsed.rb +173 -0
- data/lib/vendor/puppet/provider/scheduled_task/win32_taskscheduler.rb +565 -0
- data/lib/vendor/puppet/provider/selboolean/getsetsebool.rb +47 -0
- data/lib/vendor/puppet/provider/selmodule/semodule.rb +134 -0
- data/lib/vendor/puppet/provider/service/base.rb +105 -0
- data/lib/vendor/puppet/provider/service/bsd.rb +49 -0
- data/lib/vendor/puppet/provider/service/daemontools.rb +194 -0
- data/lib/vendor/puppet/provider/service/debian.rb +68 -0
- data/lib/vendor/puppet/provider/service/freebsd.rb +139 -0
- data/lib/vendor/puppet/provider/service/gentoo.rb +54 -0
- data/lib/vendor/puppet/provider/service/init.rb +140 -0
- data/lib/vendor/puppet/provider/service/launchd.rb +303 -0
- data/lib/vendor/puppet/provider/service/openrc.rb +69 -0
- data/lib/vendor/puppet/provider/service/redhat.rb +76 -0
- data/lib/vendor/puppet/provider/service/runit.rb +103 -0
- data/lib/vendor/puppet/provider/service/service.rb +43 -0
- data/lib/vendor/puppet/provider/service/smf.rb +104 -0
- data/lib/vendor/puppet/provider/service/src.rb +86 -0
- data/lib/vendor/puppet/provider/service/systemd.rb +64 -0
- data/lib/vendor/puppet/provider/service/upstart.rb +347 -0
- data/lib/vendor/puppet/provider/service/windows.rb +106 -0
- data/lib/vendor/puppet/provider/ssh_authorized_key/parsed.rb +88 -0
- data/lib/vendor/puppet/provider/sshkey/parsed.rb +37 -0
- data/lib/vendor/puppet/provider/user/aix.rb +357 -0
- data/lib/vendor/puppet/provider/user/directoryservice.rb +86 -0
- data/lib/vendor/puppet/provider/user/hpux.rb +31 -0
- data/lib/vendor/puppet/provider/user/ldap.rb +129 -0
- data/lib/vendor/puppet/provider/user/pw.rb +101 -0
- data/lib/vendor/puppet/provider/user/user_role_add.rb +207 -0
- data/lib/vendor/puppet/provider/user/useradd.rb +127 -0
- data/lib/vendor/puppet/provider/user/windows_adsi.rb +99 -0
- data/lib/vendor/puppet/provider/vlan/cisco.rb +28 -0
- data/lib/vendor/puppet/provider/zfs/solaris.rb +45 -0
- data/lib/vendor/puppet/provider/zone/solaris.rb +260 -0
- data/lib/vendor/puppet/provider/zpool/solaris.rb +116 -0
- data/lib/vendor/puppet/provider.rb +290 -0
- data/lib/vendor/puppet/rails/benchmark.rb +63 -0
- data/lib/vendor/puppet/rails/database/001_add_created_at_to_all_tables.rb +13 -0
- data/lib/vendor/puppet/rails/database/002_remove_duplicated_index_on_all_tables.rb +13 -0
- data/lib/vendor/puppet/rails/database/003_add_environment_to_host.rb +9 -0
- data/lib/vendor/puppet/rails/database/004_add_inventory_service_tables.rb +36 -0
- data/lib/vendor/puppet/rails/database/schema.rb +131 -0
- data/lib/vendor/puppet/rails/fact_name.rb +6 -0
- data/lib/vendor/puppet/rails/fact_value.rb +8 -0
- data/lib/vendor/puppet/rails/host.rb +258 -0
- data/lib/vendor/puppet/rails/inventory_fact.rb +5 -0
- data/lib/vendor/puppet/rails/inventory_node.rb +43 -0
- data/lib/vendor/puppet/rails/param_name.rb +25 -0
- data/lib/vendor/puppet/rails/param_value.rb +74 -0
- data/lib/vendor/puppet/rails/puppet_tag.rb +10 -0
- data/lib/vendor/puppet/rails/resource.rb +231 -0
- data/lib/vendor/puppet/rails/resource_tag.rb +26 -0
- data/lib/vendor/puppet/rails/source_file.rb +8 -0
- data/lib/vendor/puppet/rails.rb +132 -0
- data/lib/vendor/puppet/rb_tree_map.rb +388 -0
- data/lib/vendor/puppet/reference/configuration.rb +69 -0
- data/lib/vendor/puppet/reference/function.rb +17 -0
- data/lib/vendor/puppet/reference/indirection.rb +32 -0
- data/lib/vendor/puppet/reference/metaparameter.rb +43 -0
- data/lib/vendor/puppet/reference/network.rb +39 -0
- data/lib/vendor/puppet/reference/providers.rb +119 -0
- data/lib/vendor/puppet/reference/report.rb +23 -0
- data/lib/vendor/puppet/reference/type.rb +116 -0
- data/lib/vendor/puppet/relationship.rb +95 -0
- data/lib/vendor/puppet/reports/http.rb +25 -0
- data/lib/vendor/puppet/reports/log.rb +14 -0
- data/lib/vendor/puppet/reports/rrdgraph.rb +128 -0
- data/lib/vendor/puppet/reports/store.rb +74 -0
- data/lib/vendor/puppet/reports/tagmail.rb +179 -0
- data/lib/vendor/puppet/reports.rb +49 -0
- data/lib/vendor/puppet/resource/catalog.rb +661 -0
- data/lib/vendor/puppet/resource/status.rb +79 -0
- data/lib/vendor/puppet/resource/type.rb +344 -0
- data/lib/vendor/puppet/resource/type_collection.rb +215 -0
- data/lib/vendor/puppet/resource/type_collection_helper.rb +7 -0
- data/lib/vendor/puppet/resource.rb +467 -0
- data/lib/vendor/puppet/run.rb +77 -0
- data/lib/vendor/puppet/simple_graph.rb +550 -0
- data/lib/vendor/puppet/ssl/base.rb +86 -0
- data/lib/vendor/puppet/ssl/certificate.rb +40 -0
- data/lib/vendor/puppet/ssl/certificate_authority/interface.rb +182 -0
- data/lib/vendor/puppet/ssl/certificate_authority.rb +374 -0
- data/lib/vendor/puppet/ssl/certificate_factory.rb +166 -0
- data/lib/vendor/puppet/ssl/certificate_request.rb +149 -0
- data/lib/vendor/puppet/ssl/certificate_revocation_list.rb +84 -0
- data/lib/vendor/puppet/ssl/host.rb +365 -0
- data/lib/vendor/puppet/ssl/inventory.rb +54 -0
- data/lib/vendor/puppet/ssl/key.rb +56 -0
- data/lib/vendor/puppet/ssl.rb +8 -0
- data/lib/vendor/puppet/status.rb +28 -0
- data/lib/vendor/puppet/test/test_helper.rb +141 -0
- data/lib/vendor/puppet/transaction/event.rb +66 -0
- data/lib/vendor/puppet/transaction/event_manager.rb +115 -0
- data/lib/vendor/puppet/transaction/report.rb +200 -0
- data/lib/vendor/puppet/transaction/resource_harness.rb +178 -0
- data/lib/vendor/puppet/transaction.rb +493 -0
- data/lib/vendor/puppet/transportable.rb +248 -0
- data/lib/vendor/puppet/type/augeas.rb +218 -0
- data/lib/vendor/puppet/type/component.rb +85 -0
- data/lib/vendor/puppet/type/computer.rb +66 -0
- data/lib/vendor/puppet/type/cron.rb +421 -0
- data/lib/vendor/puppet/type/exec.rb +520 -0
- data/lib/vendor/puppet/type/file/checksum.rb +33 -0
- data/lib/vendor/puppet/type/file/content.rb +230 -0
- data/lib/vendor/puppet/type/file/ctime.rb +18 -0
- data/lib/vendor/puppet/type/file/ensure.rb +172 -0
- data/lib/vendor/puppet/type/file/group.rb +41 -0
- data/lib/vendor/puppet/type/file/mode.rb +148 -0
- data/lib/vendor/puppet/type/file/mtime.rb +17 -0
- data/lib/vendor/puppet/type/file/owner.rb +44 -0
- data/lib/vendor/puppet/type/file/selcontext.rb +123 -0
- data/lib/vendor/puppet/type/file/source.rb +195 -0
- data/lib/vendor/puppet/type/file/target.rb +87 -0
- data/lib/vendor/puppet/type/file/type.rb +19 -0
- data/lib/vendor/puppet/type/file.rb +829 -0
- data/lib/vendor/puppet/type/filebucket.rb +114 -0
- data/lib/vendor/puppet/type/group.rb +149 -0
- data/lib/vendor/puppet/type/host.rb +87 -0
- data/lib/vendor/puppet/type/interface.rb +112 -0
- data/lib/vendor/puppet/type/k5login.rb +88 -0
- data/lib/vendor/puppet/type/macauthorization.rb +167 -0
- data/lib/vendor/puppet/type/mailalias.rb +48 -0
- data/lib/vendor/puppet/type/maillist.rb +62 -0
- data/lib/vendor/puppet/type/mcx.rb +99 -0
- data/lib/vendor/puppet/type/mount.rb +241 -0
- data/lib/vendor/puppet/type/nagios_command.rb +3 -0
- data/lib/vendor/puppet/type/nagios_contact.rb +3 -0
- data/lib/vendor/puppet/type/nagios_contactgroup.rb +3 -0
- data/lib/vendor/puppet/type/nagios_host.rb +3 -0
- data/lib/vendor/puppet/type/nagios_hostdependency.rb +3 -0
- data/lib/vendor/puppet/type/nagios_hostescalation.rb +3 -0
- data/lib/vendor/puppet/type/nagios_hostextinfo.rb +3 -0
- data/lib/vendor/puppet/type/nagios_hostgroup.rb +3 -0
- data/lib/vendor/puppet/type/nagios_service.rb +3 -0
- data/lib/vendor/puppet/type/nagios_servicedependency.rb +3 -0
- data/lib/vendor/puppet/type/nagios_serviceescalation.rb +3 -0
- data/lib/vendor/puppet/type/nagios_serviceextinfo.rb +3 -0
- data/lib/vendor/puppet/type/nagios_servicegroup.rb +3 -0
- data/lib/vendor/puppet/type/nagios_timeperiod.rb +3 -0
- data/lib/vendor/puppet/type/notify.rb +44 -0
- data/lib/vendor/puppet/type/package.rb +357 -0
- data/lib/vendor/puppet/type/port.rb +119 -0
- data/lib/vendor/puppet/type/resources.rb +131 -0
- data/lib/vendor/puppet/type/router.rb +17 -0
- data/lib/vendor/puppet/type/schedule.rb +360 -0
- data/lib/vendor/puppet/type/scheduled_task.rb +166 -0
- data/lib/vendor/puppet/type/selboolean.rb +26 -0
- data/lib/vendor/puppet/type/selmodule.rb +59 -0
- data/lib/vendor/puppet/type/service.rb +221 -0
- data/lib/vendor/puppet/type/ssh_authorized_key.rb +112 -0
- data/lib/vendor/puppet/type/sshkey.rb +72 -0
- data/lib/vendor/puppet/type/stage.rb +19 -0
- data/lib/vendor/puppet/type/tidy.rb +333 -0
- data/lib/vendor/puppet/type/user.rb +524 -0
- data/lib/vendor/puppet/type/vlan.rb +26 -0
- data/lib/vendor/puppet/type/whit.rb +34 -0
- data/lib/vendor/puppet/type/yumrepo.rb +361 -0
- data/lib/vendor/puppet/type/zfs.rb +146 -0
- data/lib/vendor/puppet/type/zone.rb +492 -0
- data/lib/vendor/puppet/type/zpool.rb +91 -0
- data/lib/vendor/puppet/type.rb +1979 -0
- data/lib/vendor/puppet/util/adsi.rb +296 -0
- data/lib/vendor/puppet/util/autoload/file_cache.rb +92 -0
- data/lib/vendor/puppet/util/autoload.rb +158 -0
- data/lib/vendor/puppet/util/backups.rb +87 -0
- data/lib/vendor/puppet/util/cacher.rb +80 -0
- data/lib/vendor/puppet/util/checksums.rb +143 -0
- data/lib/vendor/puppet/util/classgen.rb +209 -0
- data/lib/vendor/puppet/util/colors.rb +128 -0
- data/lib/vendor/puppet/util/command_line.rb +185 -0
- data/lib/vendor/puppet/util/constant_inflector.rb +15 -0
- data/lib/vendor/puppet/util/diff.rb +77 -0
- data/lib/vendor/puppet/util/docs.rb +123 -0
- data/lib/vendor/puppet/util/errors.rb +63 -0
- data/lib/vendor/puppet/util/execution.rb +20 -0
- data/lib/vendor/puppet/util/execution_stub.rb +26 -0
- data/lib/vendor/puppet/util/feature.rb +83 -0
- data/lib/vendor/puppet/util/file_locking.rb +47 -0
- data/lib/vendor/puppet/util/fileparsing.rb +373 -0
- data/lib/vendor/puppet/util/filetype.rb +296 -0
- data/lib/vendor/puppet/util/graph.rb +27 -0
- data/lib/vendor/puppet/util/inifile.rb +203 -0
- data/lib/vendor/puppet/util/inline_docs.rb +26 -0
- data/lib/vendor/puppet/util/instance_loader.rb +81 -0
- data/lib/vendor/puppet/util/instrumentation/data.rb +34 -0
- data/lib/vendor/puppet/util/instrumentation/indirection_probe.rb +29 -0
- data/lib/vendor/puppet/util/instrumentation/instrumentable.rb +143 -0
- data/lib/vendor/puppet/util/instrumentation/listener.rb +60 -0
- data/lib/vendor/puppet/util/instrumentation/listeners/log.rb +29 -0
- data/lib/vendor/puppet/util/instrumentation/listeners/performance.rb +30 -0
- data/lib/vendor/puppet/util/instrumentation.rb +171 -0
- data/lib/vendor/puppet/util/ldap/connection.rb +74 -0
- data/lib/vendor/puppet/util/ldap/generator.rb +42 -0
- data/lib/vendor/puppet/util/ldap/manager.rb +279 -0
- data/lib/vendor/puppet/util/ldap.rb +2 -0
- data/lib/vendor/puppet/util/loadedfile.rb +61 -0
- data/lib/vendor/puppet/util/log/destination.rb +49 -0
- data/lib/vendor/puppet/util/log/destinations.rb +268 -0
- data/lib/vendor/puppet/util/log.rb +275 -0
- data/lib/vendor/puppet/util/log_paths.rb +22 -0
- data/lib/vendor/puppet/util/logging.rb +51 -0
- data/lib/vendor/puppet/util/metaid.rb +21 -0
- data/lib/vendor/puppet/util/methodhelper.rb +32 -0
- data/lib/vendor/puppet/util/metric.rb +186 -0
- data/lib/vendor/puppet/util/monkey_patches.rb +243 -0
- data/lib/vendor/puppet/util/nagios_maker.rb +60 -0
- data/lib/vendor/puppet/util/network_device/base.rb +27 -0
- data/lib/vendor/puppet/util/network_device/cisco/device.rb +257 -0
- data/lib/vendor/puppet/util/network_device/cisco/facts.rb +72 -0
- data/lib/vendor/puppet/util/network_device/cisco/interface.rb +82 -0
- data/lib/vendor/puppet/util/network_device/cisco.rb +4 -0
- data/lib/vendor/puppet/util/network_device/config.rb +92 -0
- data/lib/vendor/puppet/util/network_device/ipcalc.rb +68 -0
- data/lib/vendor/puppet/util/network_device/transport/base.rb +26 -0
- data/lib/vendor/puppet/util/network_device/transport/ssh.rb +121 -0
- data/lib/vendor/puppet/util/network_device/transport/telnet.rb +42 -0
- data/lib/vendor/puppet/util/network_device/transport.rb +3 -0
- data/lib/vendor/puppet/util/network_device.rb +17 -0
- data/lib/vendor/puppet/util/package.rb +31 -0
- data/lib/vendor/puppet/util/pidlock.rb +117 -0
- data/lib/vendor/puppet/util/platform.rb +22 -0
- data/lib/vendor/puppet/util/plugins.rb +82 -0
- data/lib/vendor/puppet/util/posix.rb +137 -0
- data/lib/vendor/puppet/util/provider_features.rb +168 -0
- data/lib/vendor/puppet/util/pson.rb +13 -0
- data/lib/vendor/puppet/util/queue/stomp.rb +60 -0
- data/lib/vendor/puppet/util/queue.rb +96 -0
- data/lib/vendor/puppet/util/rails/cache_accumulator.rb +65 -0
- data/lib/vendor/puppet/util/rails/collection_merger.rb +17 -0
- data/lib/vendor/puppet/util/rails/reference_serializer.rb +32 -0
- data/lib/vendor/puppet/util/rdoc.rb +87 -0
- data/lib/vendor/puppet/util/reference.rb +124 -0
- data/lib/vendor/puppet/util/resource_template.rb +61 -0
- data/lib/vendor/puppet/util/retryaction.rb +48 -0
- data/lib/vendor/puppet/util/run_mode.rb +82 -0
- data/lib/vendor/puppet/util/selinux.rb +211 -0
- data/lib/vendor/puppet/util/settings/boolean_setting.rb +30 -0
- data/lib/vendor/puppet/util/settings/file_setting.rb +135 -0
- data/lib/vendor/puppet/util/settings/setting.rb +94 -0
- data/lib/vendor/puppet/util/settings.rb +926 -0
- data/lib/vendor/puppet/util/storage.rb +96 -0
- data/lib/vendor/puppet/util/subclass_loader.rb +82 -0
- data/lib/vendor/puppet/util/suidmanager.rb +173 -0
- data/lib/vendor/puppet/util/symbolic_file_mode.rb +140 -0
- data/lib/vendor/puppet/util/tagging.rb +78 -0
- data/lib/vendor/puppet/util/terminal.rb +16 -0
- data/lib/vendor/puppet/util/user_attr.rb +21 -0
- data/lib/vendor/puppet/util/warnings.rb +29 -0
- data/lib/vendor/puppet/util/windows/error.rb +16 -0
- data/lib/vendor/puppet/util/windows/file.rb +27 -0
- data/lib/vendor/puppet/util/windows/process.rb +33 -0
- data/lib/vendor/puppet/util/windows/security.rb +622 -0
- data/lib/vendor/puppet/util/windows/sid.rb +96 -0
- data/lib/vendor/puppet/util/windows/user.rb +106 -0
- data/lib/vendor/puppet/util/windows.rb +8 -0
- data/lib/vendor/puppet/util/zaml.rb +407 -0
- data/lib/vendor/puppet/util.rb +646 -0
- data/lib/vendor/puppet/version.rb +18 -0
- data/lib/vendor/puppet.rb +125 -0
- data/lib/vendor/semver.rb +124 -0
- data/puppet-parse.gemspec +2 -8
- metadata +812 -94
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
require 'puppet'
|
|
2
|
+
require 'yaml'
|
|
3
|
+
|
|
4
|
+
module Puppet
|
|
5
|
+
# The transportable objects themselves. Basically just a hash with some
|
|
6
|
+
# metadata and a few extra methods. I used to have the object actually
|
|
7
|
+
# be a subclass of Hash, but I could never correctly dump them using
|
|
8
|
+
# YAML.
|
|
9
|
+
class TransObject
|
|
10
|
+
include Enumerable
|
|
11
|
+
attr_accessor :type, :name, :file, :line, :catalog
|
|
12
|
+
|
|
13
|
+
attr_writer :tags
|
|
14
|
+
|
|
15
|
+
%w{has_key? include? length delete empty? << [] []=}.each { |method|
|
|
16
|
+
define_method(method) do |*args|
|
|
17
|
+
@params.send(method, *args)
|
|
18
|
+
end
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
def each
|
|
22
|
+
@params.each { |p,v| yield p, v }
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def initialize(name,type)
|
|
26
|
+
@type = type.to_s.downcase
|
|
27
|
+
@name = name
|
|
28
|
+
@params = {}
|
|
29
|
+
@tags = []
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def longname
|
|
33
|
+
[@type,@name].join('--')
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def ref
|
|
37
|
+
@ref ||= Puppet::Resource.new(@type, @name)
|
|
38
|
+
@ref.to_s
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def tags
|
|
42
|
+
@tags
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Convert a defined type into a component.
|
|
46
|
+
def to_component
|
|
47
|
+
trans = TransObject.new(ref, :component)
|
|
48
|
+
@params.each { |param,value|
|
|
49
|
+
next unless Puppet::Type::Component.valid_parameter?(param)
|
|
50
|
+
Puppet.debug "Defining #{param} on #{ref}"
|
|
51
|
+
trans[param] = value
|
|
52
|
+
}
|
|
53
|
+
trans.catalog = self.catalog
|
|
54
|
+
Puppet::Type::Component.create(trans)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def to_hash
|
|
58
|
+
@params.dup
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def to_s
|
|
62
|
+
"#{@type}(#{@name}) => #{super}"
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def to_manifest
|
|
66
|
+
"%s { '%s':\n%s\n}" % [self.type.to_s, self.name,
|
|
67
|
+
@params.collect { |p, v|
|
|
68
|
+
if v.is_a? Array
|
|
69
|
+
" #{p} => [\'#{v.join("','")}\']"
|
|
70
|
+
else
|
|
71
|
+
" #{p} => \'#{v}\'"
|
|
72
|
+
end
|
|
73
|
+
}.join(",\n")
|
|
74
|
+
]
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
# Create a normalized resource from our TransObject.
|
|
78
|
+
def to_resource
|
|
79
|
+
result = Puppet::Resource.new(type, name, :parameters => @params.dup)
|
|
80
|
+
result.tag(*tags)
|
|
81
|
+
|
|
82
|
+
result
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def to_yaml_properties
|
|
86
|
+
instance_variables.reject { |v| %w{@ref}.include?(v) }
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
def to_ref
|
|
90
|
+
ref
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
def to_ral
|
|
94
|
+
to_resource.to_ral
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
# Just a linear container for objects. Behaves mostly like an array, except
|
|
99
|
+
# that YAML will correctly dump them even with their instance variables.
|
|
100
|
+
class TransBucket
|
|
101
|
+
include Enumerable
|
|
102
|
+
|
|
103
|
+
attr_accessor :name, :type, :file, :line, :classes, :keyword, :top, :catalog
|
|
104
|
+
|
|
105
|
+
%w{delete shift include? length empty? << []}.each { |method|
|
|
106
|
+
define_method(method) do |*args|
|
|
107
|
+
#Puppet.warning "Calling #{method} with #{args.inspect}"
|
|
108
|
+
@children.send(method, *args)
|
|
109
|
+
#Puppet.warning @params.inspect
|
|
110
|
+
end
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
# Recursively yield everything.
|
|
114
|
+
def delve(&block)
|
|
115
|
+
@children.each do |obj|
|
|
116
|
+
block.call(obj)
|
|
117
|
+
if obj.is_a? self.class
|
|
118
|
+
obj.delve(&block)
|
|
119
|
+
else
|
|
120
|
+
obj
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
def each
|
|
126
|
+
@children.each { |c| yield c }
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# Turn our heirarchy into a flat list
|
|
130
|
+
def flatten
|
|
131
|
+
@children.collect do |obj|
|
|
132
|
+
if obj.is_a? Puppet::TransBucket
|
|
133
|
+
obj.flatten
|
|
134
|
+
else
|
|
135
|
+
obj
|
|
136
|
+
end
|
|
137
|
+
end.flatten
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
def initialize(children = [])
|
|
141
|
+
@children = children
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
def push(*args)
|
|
145
|
+
args.each { |arg|
|
|
146
|
+
case arg
|
|
147
|
+
when Puppet::TransBucket, Puppet::TransObject
|
|
148
|
+
# nada
|
|
149
|
+
else
|
|
150
|
+
raise Puppet::DevError,
|
|
151
|
+
"TransBuckets cannot handle objects of type #{arg.class}"
|
|
152
|
+
end
|
|
153
|
+
}
|
|
154
|
+
@children += args
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
# Convert to a parseable manifest
|
|
158
|
+
def to_manifest
|
|
159
|
+
unless self.top
|
|
160
|
+
raise Puppet::DevError, "No keyword; cannot convert to manifest" unless @keyword
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
str = "#{@keyword} #{@name} {\n%s\n}"
|
|
164
|
+
str % @children.collect { |child|
|
|
165
|
+
child.to_manifest
|
|
166
|
+
}.collect { |str|
|
|
167
|
+
if self.top
|
|
168
|
+
str
|
|
169
|
+
else
|
|
170
|
+
str.gsub(/^/, " ") # indent everything once
|
|
171
|
+
end
|
|
172
|
+
}.join("\n\n") # and throw in a blank line
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
def to_yaml_properties
|
|
176
|
+
instance_variables
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
# Create a resource graph from our structure.
|
|
180
|
+
def to_catalog(clear_on_failure = true)
|
|
181
|
+
catalog = Puppet::Resource::Catalog.new(Facter.value("hostname"))
|
|
182
|
+
|
|
183
|
+
# This should really use the 'delve' method, but this
|
|
184
|
+
# whole class is going away relatively soon, hopefully,
|
|
185
|
+
# so it's not worth it.
|
|
186
|
+
delver = proc do |obj|
|
|
187
|
+
obj.catalog = catalog
|
|
188
|
+
unless container = catalog.resource(obj.to_ref)
|
|
189
|
+
container = obj.to_ral
|
|
190
|
+
catalog.add_resource container
|
|
191
|
+
end
|
|
192
|
+
obj.each do |child|
|
|
193
|
+
child.catalog = catalog
|
|
194
|
+
unless resource = catalog.resource(child.to_ref)
|
|
195
|
+
resource = child.to_ral
|
|
196
|
+
catalog.add_resource resource
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
catalog.add_edge(container, resource)
|
|
200
|
+
delver.call(child) if child.is_a?(self.class)
|
|
201
|
+
end
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
begin
|
|
205
|
+
delver.call(self)
|
|
206
|
+
catalog.finalize
|
|
207
|
+
rescue => detail
|
|
208
|
+
# This is important until we lose the global resource references.
|
|
209
|
+
catalog.clear if (clear_on_failure)
|
|
210
|
+
raise
|
|
211
|
+
end
|
|
212
|
+
|
|
213
|
+
catalog
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
def to_ref
|
|
217
|
+
unless defined?(@ref)
|
|
218
|
+
if self.type and self.name
|
|
219
|
+
@ref = Puppet::Resource.new(self.type, self.name)
|
|
220
|
+
elsif self.type and ! self.name # This is old-school node types
|
|
221
|
+
@ref = Puppet::Resource.new("node", self.type)
|
|
222
|
+
elsif ! self.type and self.name
|
|
223
|
+
@ref = Puppet::Resource.new("component", self.name)
|
|
224
|
+
else
|
|
225
|
+
@ref = nil
|
|
226
|
+
end
|
|
227
|
+
end
|
|
228
|
+
@ref.to_s if @ref
|
|
229
|
+
end
|
|
230
|
+
|
|
231
|
+
def to_ral
|
|
232
|
+
to_resource.to_ral
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
# Create a normalized resource from our TransObject.
|
|
236
|
+
def to_resource
|
|
237
|
+
params = defined?(@parameters) ? @parameters.dup : {}
|
|
238
|
+
Puppet::Resource.new(type, name, :parameters => params)
|
|
239
|
+
end
|
|
240
|
+
|
|
241
|
+
def param(param,value)
|
|
242
|
+
@parameters ||= {}
|
|
243
|
+
@parameters[param] = value
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
end
|
|
247
|
+
end
|
|
248
|
+
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Copyright 2011 Bryan Kearney <bkearney@redhat.com>
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
|
|
16
|
+
Puppet::Type.newtype(:augeas) do
|
|
17
|
+
include Puppet::Util
|
|
18
|
+
|
|
19
|
+
feature :parse_commands, "Parse the command string"
|
|
20
|
+
feature :need_to_run?, "If the command should run"
|
|
21
|
+
feature :execute_changes, "Actually make the changes"
|
|
22
|
+
|
|
23
|
+
@doc = <<-'EOT'
|
|
24
|
+
Apply a change or an array of changes to the filesystem
|
|
25
|
+
using the augeas tool.
|
|
26
|
+
|
|
27
|
+
Requires:
|
|
28
|
+
|
|
29
|
+
- [Augeas](http://www.augeas.net)
|
|
30
|
+
- The ruby-augeas bindings
|
|
31
|
+
|
|
32
|
+
Sample usage with a string:
|
|
33
|
+
|
|
34
|
+
augeas{"test1" :
|
|
35
|
+
context => "/files/etc/sysconfig/firstboot",
|
|
36
|
+
changes => "set RUN_FIRSTBOOT YES",
|
|
37
|
+
onlyif => "match other_value size > 0",
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
Sample usage with an array and custom lenses:
|
|
41
|
+
|
|
42
|
+
augeas{"jboss_conf":
|
|
43
|
+
context => "/files",
|
|
44
|
+
changes => [
|
|
45
|
+
"set etc/jbossas/jbossas.conf/JBOSS_IP $ipaddress",
|
|
46
|
+
"set etc/jbossas/jbossas.conf/JAVA_HOME /usr",
|
|
47
|
+
],
|
|
48
|
+
load_path => "$/usr/share/jbossas/lenses",
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
EOT
|
|
52
|
+
|
|
53
|
+
newparam (:name) do
|
|
54
|
+
desc "The name of this task. Used for uniqueness."
|
|
55
|
+
isnamevar
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
newparam (:context) do
|
|
59
|
+
desc "Optional context path. This value is prepended to the paths of all
|
|
60
|
+
changes if the path is relative. If the `incl` parameter is set,
|
|
61
|
+
defaults to `/files + incl`; otherwise, defaults to the empty string."
|
|
62
|
+
defaultto ""
|
|
63
|
+
munge do |value|
|
|
64
|
+
if value.empty? and resource[:incl]
|
|
65
|
+
"/files" + resource[:incl]
|
|
66
|
+
else
|
|
67
|
+
value
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
newparam (:onlyif) do
|
|
73
|
+
desc "Optional augeas command and comparisons to control the execution of this type.
|
|
74
|
+
Supported onlyif syntax:
|
|
75
|
+
|
|
76
|
+
* `get <AUGEAS_PATH> <COMPARATOR> <STRING>`
|
|
77
|
+
* `match <MATCH_PATH> size <COMPARATOR> <INT>`
|
|
78
|
+
* `match <MATCH_PATH> include <STRING>`
|
|
79
|
+
* `match <MATCH_PATH> not_include <STRING>`
|
|
80
|
+
* `match <MATCH_PATH> == <AN_ARRAY>`
|
|
81
|
+
* `match <MATCH_PATH> != <AN_ARRAY>`
|
|
82
|
+
|
|
83
|
+
where:
|
|
84
|
+
|
|
85
|
+
* `AUGEAS_PATH` is a valid path scoped by the context
|
|
86
|
+
* `MATCH_PATH` is a valid match synatx scoped by the context
|
|
87
|
+
* `COMPARATOR` is one of `>, >=, !=, ==, <=,` or `<`
|
|
88
|
+
* `STRING` is a string
|
|
89
|
+
* `INT` is a number
|
|
90
|
+
* `AN_ARRAY` is in the form `['a string', 'another']`"
|
|
91
|
+
defaultto ""
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
newparam(:changes) do
|
|
96
|
+
desc "The changes which should be applied to the filesystem. This
|
|
97
|
+
can be a command or an array of commands. The following commands are supported:
|
|
98
|
+
|
|
99
|
+
`set <PATH> <VALUE>`
|
|
100
|
+
: Sets the value `VALUE` at loction `PATH`
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
`setm <PATH> <SUB> <VALUE>`
|
|
104
|
+
: Sets multiple nodes (matching `SUB` relative to `PATH`) to `VALUE`
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
`rm <PATH>`
|
|
108
|
+
: Removes the node at location `PATH`
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
`remove <PATH>`
|
|
112
|
+
: Synonym for `rm`
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
`clear <PATH>`
|
|
116
|
+
: Sets the node at `PATH` to `NULL`, creating it if needed
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
`ins <LABEL> (before|after) <PATH>`
|
|
120
|
+
: Inserts an empty node `LABEL` either before or after `PATH`.
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
`insert <LABEL> <WHERE> <PATH>`
|
|
124
|
+
: Synonym for `ins`
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
`mv <PATH> <OTHER PATH>`
|
|
128
|
+
: Moves a node at `PATH` to the new location `OTHER PATH`
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
`move <PATH> <OTHER PATH>`
|
|
132
|
+
: Synonym for `mv`
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
`defvar <NAME> <PATH>`
|
|
136
|
+
: Sets Augeas variable `$NAME` to `PATH`
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
`defnode <NAME> <PATH> <VALUE>`
|
|
140
|
+
: Sets Augeas variable `$NAME` to `PATH`, creating it with `VALUE` if needed
|
|
141
|
+
|
|
142
|
+
If the `context` parameter is set, that value is prepended to any relative `PATH`s."
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
newparam(:root) do
|
|
147
|
+
desc "A file system path; all files loaded by Augeas are loaded underneath `root`."
|
|
148
|
+
defaultto "/"
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
newparam(:load_path) do
|
|
152
|
+
desc "Optional colon-separated list or array of directories; these directories are searched for schema definitions. The agent's `$libdir/augeas/lenses` path will always be added to support pluginsync."
|
|
153
|
+
defaultto ""
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
newparam(:force) do
|
|
157
|
+
desc "Optional command to force the augeas type to execute even if it thinks changes
|
|
158
|
+
will not be made. This does not overide the `onlyif` parameter."
|
|
159
|
+
|
|
160
|
+
defaultto false
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
newparam(:type_check) do
|
|
164
|
+
desc "Whether augeas should perform typechecking. Defaults to false."
|
|
165
|
+
newvalues(:true, :false)
|
|
166
|
+
|
|
167
|
+
defaultto :false
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
newparam(:lens) do
|
|
171
|
+
desc "Use a specific lens, e.g. `Hosts.lns`. When this parameter is set, you
|
|
172
|
+
must also set the `incl` parameter to indicate which file to load."
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
newparam(:incl) do
|
|
176
|
+
desc "Load only a specific file, e.g. `/etc/hosts`. This can greatly speed
|
|
177
|
+
up the execution the resource. When this parameter is set, you must also
|
|
178
|
+
set the `lens` parameter to indicate which lens to use."
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
validate do
|
|
182
|
+
has_lens = !self[:lens].nil?
|
|
183
|
+
has_incl = !self[:incl].nil?
|
|
184
|
+
self.fail "You must specify both the lens and incl parameters, or neither." if has_lens != has_incl
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
# This is the actual meat of the code. It forces
|
|
188
|
+
# augeas to be run and fails or not based on the augeas return
|
|
189
|
+
# code.
|
|
190
|
+
newproperty(:returns) do |property|
|
|
191
|
+
include Puppet::Util
|
|
192
|
+
desc "The expected return code from the augeas command. Should not be set."
|
|
193
|
+
|
|
194
|
+
defaultto 0
|
|
195
|
+
|
|
196
|
+
# Make output a bit prettier
|
|
197
|
+
def change_to_s(currentvalue, newvalue)
|
|
198
|
+
"executed successfully"
|
|
199
|
+
end
|
|
200
|
+
|
|
201
|
+
# if the onlyif resource is provided, then the value is parsed.
|
|
202
|
+
# a return value of 0 will stop exection because it matches the
|
|
203
|
+
# default value.
|
|
204
|
+
def retrieve
|
|
205
|
+
if @resource.provider.need_to_run?()
|
|
206
|
+
:need_to_run
|
|
207
|
+
else
|
|
208
|
+
0
|
|
209
|
+
end
|
|
210
|
+
end
|
|
211
|
+
|
|
212
|
+
# Actually execute the command.
|
|
213
|
+
def sync
|
|
214
|
+
@resource.provider.execute_changes
|
|
215
|
+
end
|
|
216
|
+
end
|
|
217
|
+
|
|
218
|
+
end
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
|
|
2
|
+
require 'puppet'
|
|
3
|
+
require 'puppet/type'
|
|
4
|
+
require 'puppet/transaction'
|
|
5
|
+
|
|
6
|
+
Puppet::Type.newtype(:component) do
|
|
7
|
+
include Enumerable
|
|
8
|
+
|
|
9
|
+
newparam(:name) do
|
|
10
|
+
desc "The name of the component. Generally optional."
|
|
11
|
+
isnamevar
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Override how parameters are handled so that we support the extra
|
|
15
|
+
# parameters that are used with defined resource types.
|
|
16
|
+
def [](param)
|
|
17
|
+
return super if self.class.valid_parameter?(param)
|
|
18
|
+
@extra_parameters[param.to_sym]
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# Override how parameters are handled so that we support the extra
|
|
22
|
+
# parameters that are used with defined resource types.
|
|
23
|
+
def []=(param, value)
|
|
24
|
+
return super if self.class.valid_parameter?(param)
|
|
25
|
+
@extra_parameters[param.to_sym] = value
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# Initialize a new component
|
|
29
|
+
def initialize(*args)
|
|
30
|
+
@extra_parameters = {}
|
|
31
|
+
super
|
|
32
|
+
|
|
33
|
+
catalog.alias(self, ref) if catalog and ! catalog.resource(ref)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# Component paths are special because they function as containers.
|
|
37
|
+
def pathbuilder
|
|
38
|
+
if reference.type == "Class"
|
|
39
|
+
# 'main' is the top class, so we want to see '//' instead of
|
|
40
|
+
# its name.
|
|
41
|
+
if reference.title.to_s.downcase == "main"
|
|
42
|
+
myname = ""
|
|
43
|
+
else
|
|
44
|
+
myname = reference.title
|
|
45
|
+
end
|
|
46
|
+
else
|
|
47
|
+
myname = reference.to_s
|
|
48
|
+
end
|
|
49
|
+
if p = self.parent
|
|
50
|
+
return [p.pathbuilder, myname]
|
|
51
|
+
else
|
|
52
|
+
return [myname]
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def ref
|
|
57
|
+
reference.to_s
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# We want our title to just be the whole reference, rather than @title.
|
|
61
|
+
def title
|
|
62
|
+
ref
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def title=(str)
|
|
66
|
+
@reference = Puppet::Resource.new(str)
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def refresh
|
|
70
|
+
catalog.adjacent(self).each do |child|
|
|
71
|
+
if child.respond_to?(:refresh)
|
|
72
|
+
child.refresh
|
|
73
|
+
child.log "triggering #{:refresh}"
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def to_s
|
|
79
|
+
reference.to_s
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
private
|
|
83
|
+
|
|
84
|
+
attr_reader :reference
|
|
85
|
+
end
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
Puppet::Type.newtype(:computer) do
|
|
2
|
+
|
|
3
|
+
@doc = "Computer object management using DirectoryService
|
|
4
|
+
on OS X.
|
|
5
|
+
|
|
6
|
+
Note that these are distinctly different kinds of objects to 'hosts',
|
|
7
|
+
as they require a MAC address and can have all sorts of policy attached to
|
|
8
|
+
them.
|
|
9
|
+
|
|
10
|
+
This provider only manages Computer objects in the local directory service
|
|
11
|
+
domain, not in remote directories.
|
|
12
|
+
|
|
13
|
+
If you wish to manage `/etc/hosts` file on Mac OS X, then simply use the host
|
|
14
|
+
type as per other platforms.
|
|
15
|
+
|
|
16
|
+
This type primarily exists to create localhost Computer objects that MCX
|
|
17
|
+
policy can then be attached to.
|
|
18
|
+
|
|
19
|
+
**Autorequires:** If Puppet is managing the plist file representing a
|
|
20
|
+
Computer object (located at `/var/db/dslocal/nodes/Default/computers/{name}.plist`),
|
|
21
|
+
the Computer resource will autorequire it."
|
|
22
|
+
|
|
23
|
+
# ensurable
|
|
24
|
+
|
|
25
|
+
# We autorequire the computer object in case it is being managed at the
|
|
26
|
+
# file level by Puppet.
|
|
27
|
+
|
|
28
|
+
autorequire(:file) do
|
|
29
|
+
if self[:name]
|
|
30
|
+
"/var/db/dslocal/nodes/Default/computers/#{self[:name]}.plist"
|
|
31
|
+
else
|
|
32
|
+
nil
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
newproperty(:ensure, :parent => Puppet::Property::Ensure) do
|
|
37
|
+
desc "Control the existences of this computer record. Set this attribute to
|
|
38
|
+
`present` to ensure the computer record exists. Set it to `absent`
|
|
39
|
+
to delete any computer records with this name"
|
|
40
|
+
newvalue(:present) do
|
|
41
|
+
provider.create
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
newvalue(:absent) do
|
|
45
|
+
provider.delete
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
newparam(:name) do
|
|
50
|
+
desc "The authoritative 'short' name of the computer record."
|
|
51
|
+
isnamevar
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
newparam(:realname) do
|
|
55
|
+
desc "The 'long' name of the computer record."
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
newproperty(:en_address) do
|
|
59
|
+
desc "The MAC address of the primary network interface. Must match en0."
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
newproperty(:ip_address) do
|
|
63
|
+
desc "The IP Address of the Computer object."
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
end
|