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,54 @@
|
|
|
1
|
+
# Manage gentoo services. Start/stop is the same as InitSvc, but enable/disable
|
|
2
|
+
# is special.
|
|
3
|
+
Puppet::Type.type(:service).provide :gentoo, :parent => :init do
|
|
4
|
+
desc <<-EOT
|
|
5
|
+
Gentoo's form of `init`-style service management.
|
|
6
|
+
|
|
7
|
+
Uses `rc-update` for service enabling and disabling.
|
|
8
|
+
|
|
9
|
+
EOT
|
|
10
|
+
|
|
11
|
+
commands :update => "/sbin/rc-update"
|
|
12
|
+
|
|
13
|
+
confine :operatingsystem => :gentoo
|
|
14
|
+
|
|
15
|
+
def self.defpath
|
|
16
|
+
superclass.defpath
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def self.instances
|
|
20
|
+
# this exclude list was found with grep -L '\/sbin\/runscript' /etc/init.d/*
|
|
21
|
+
self.get_services(self.defpath, ['functions.sh', 'reboot.sh', 'shutdown.sh'])
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def disable
|
|
25
|
+
output = update :del, @resource[:name], :default
|
|
26
|
+
rescue Puppet::ExecutionFailure
|
|
27
|
+
raise Puppet::Error, "Could not disable #{self.name}: #{output}"
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def enabled?
|
|
31
|
+
begin
|
|
32
|
+
output = update :show
|
|
33
|
+
rescue Puppet::ExecutionFailure
|
|
34
|
+
return :false
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
line = output.split(/\n/).find { |l| l.include?(@resource[:name]) }
|
|
38
|
+
|
|
39
|
+
return :false unless line
|
|
40
|
+
|
|
41
|
+
# If it's enabled then it will print output showing service | runlevel
|
|
42
|
+
if output =~ /^\s*#{@resource[:name]}\s*\|\s*(boot|default)/
|
|
43
|
+
return :true
|
|
44
|
+
else
|
|
45
|
+
return :false
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def enable
|
|
50
|
+
output = update :add, @resource[:name], :default
|
|
51
|
+
rescue Puppet::ExecutionFailure
|
|
52
|
+
raise Puppet::Error, "Could not enable #{self.name}: #{output}"
|
|
53
|
+
end
|
|
54
|
+
end
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# The standard init-based service type. Many other service types are
|
|
2
|
+
# customizations of this module.
|
|
3
|
+
Puppet::Type.type(:service).provide :init, :parent => :base do
|
|
4
|
+
desc "Standard `init`-style service management."
|
|
5
|
+
|
|
6
|
+
def self.defpath
|
|
7
|
+
case Facter.value(:operatingsystem)
|
|
8
|
+
when "FreeBSD"
|
|
9
|
+
["/etc/rc.d", "/usr/local/etc/rc.d"]
|
|
10
|
+
when "HP-UX"
|
|
11
|
+
"/sbin/init.d"
|
|
12
|
+
when "Archlinux"
|
|
13
|
+
"/etc/rc.d"
|
|
14
|
+
else
|
|
15
|
+
"/etc/init.d"
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# We can't confine this here, because the init path can be overridden.
|
|
20
|
+
#confine :exists => defpath
|
|
21
|
+
|
|
22
|
+
# List all services of this type.
|
|
23
|
+
def self.instances
|
|
24
|
+
get_services(self.defpath)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def self.get_services(defpath, exclude=[])
|
|
28
|
+
defpath = [defpath] unless defpath.is_a? Array
|
|
29
|
+
instances = []
|
|
30
|
+
defpath.each do |path|
|
|
31
|
+
unless FileTest.directory?(path)
|
|
32
|
+
Puppet.debug "Service path #{path} does not exist"
|
|
33
|
+
next
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
check = [:ensure]
|
|
37
|
+
|
|
38
|
+
check << :enable if public_method_defined? :enabled?
|
|
39
|
+
|
|
40
|
+
Dir.entries(path).each do |name|
|
|
41
|
+
fullpath = File.join(path, name)
|
|
42
|
+
next if name =~ /^\./
|
|
43
|
+
next if exclude.include? name
|
|
44
|
+
next if not FileTest.executable?(fullpath)
|
|
45
|
+
next if not is_init?(fullpath)
|
|
46
|
+
instances << new(:name => name, :path => path, :hasstatus => true)
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
instances
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# Mark that our init script supports 'status' commands.
|
|
53
|
+
def hasstatus=(value)
|
|
54
|
+
case value
|
|
55
|
+
when true, "true"; @parameters[:hasstatus] = true
|
|
56
|
+
when false, "false"; @parameters[:hasstatus] = false
|
|
57
|
+
else
|
|
58
|
+
raise Puppet::Error, "Invalid 'hasstatus' value #{value.inspect}"
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# Where is our init script?
|
|
63
|
+
def initscript
|
|
64
|
+
@initscript ||= self.search(@resource[:name])
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
def paths
|
|
68
|
+
@paths ||= @resource[:path].find_all do |path|
|
|
69
|
+
if File.directory?(path)
|
|
70
|
+
true
|
|
71
|
+
else
|
|
72
|
+
if File.exist?(path) and ! File.directory?(path)
|
|
73
|
+
self.debug "Search path #{path} is not a directory"
|
|
74
|
+
else
|
|
75
|
+
self.debug "Search path #{path} does not exist"
|
|
76
|
+
end
|
|
77
|
+
false
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
def search(name)
|
|
83
|
+
paths.each { |path|
|
|
84
|
+
fqname = File.join(path,name)
|
|
85
|
+
begin
|
|
86
|
+
stat = File.stat(fqname)
|
|
87
|
+
rescue
|
|
88
|
+
# should probably rescue specific errors...
|
|
89
|
+
self.debug("Could not find #{name} in #{path}")
|
|
90
|
+
next
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
# if we've gotten this far, we found a valid script
|
|
94
|
+
return fqname
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
paths.each { |path|
|
|
98
|
+
fqname_sh = File.join(path,"#{name}.sh")
|
|
99
|
+
begin
|
|
100
|
+
stat = File.stat(fqname_sh)
|
|
101
|
+
rescue
|
|
102
|
+
# should probably rescue specific errors...
|
|
103
|
+
self.debug("Could not find #{name}.sh in #{path}")
|
|
104
|
+
next
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
# if we've gotten this far, we found a valid script
|
|
108
|
+
return fqname_sh
|
|
109
|
+
}
|
|
110
|
+
raise Puppet::Error, "Could not find init script for '#{name}'"
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
# The start command is just the init scriptwith 'start'.
|
|
114
|
+
def startcmd
|
|
115
|
+
[initscript, :start]
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
# The stop command is just the init script with 'stop'.
|
|
119
|
+
def stopcmd
|
|
120
|
+
[initscript, :stop]
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
def restartcmd
|
|
124
|
+
(@resource[:hasrestart] == :true) && [initscript, :restart]
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
# If it was specified that the init script has a 'status' command, then
|
|
128
|
+
# we just return that; otherwise, we return false, which causes it to
|
|
129
|
+
# fallback to other mechanisms.
|
|
130
|
+
def statuscmd
|
|
131
|
+
(@resource[:hasstatus] == :true) && [initscript, :status]
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
private
|
|
135
|
+
|
|
136
|
+
def self.is_init?(script = initscript)
|
|
137
|
+
!File.symlink?(script) || File.readlink(script) != "/lib/init/upstart-job"
|
|
138
|
+
end
|
|
139
|
+
end
|
|
140
|
+
|
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
require 'facter/util/plist'
|
|
2
|
+
Puppet::Type.type(:service).provide :launchd, :parent => :base do
|
|
3
|
+
desc <<-'EOT'
|
|
4
|
+
This provider manages jobs with `launchd`, which is the default service
|
|
5
|
+
framework for Mac OS X (and may be available for use on other platforms).
|
|
6
|
+
|
|
7
|
+
For `launchd` documentation, see:
|
|
8
|
+
|
|
9
|
+
* <http://developer.apple.com/macosx/launchd.html>
|
|
10
|
+
* <http://launchd.macosforge.org/>
|
|
11
|
+
|
|
12
|
+
This provider reads plists out of the following directories:
|
|
13
|
+
|
|
14
|
+
* `/System/Library/LaunchDaemons`
|
|
15
|
+
* `/System/Library/LaunchAgents`
|
|
16
|
+
* `/Library/LaunchDaemons`
|
|
17
|
+
* `/Library/LaunchAgents`
|
|
18
|
+
|
|
19
|
+
...and builds up a list of services based upon each plist's "Label" entry.
|
|
20
|
+
|
|
21
|
+
This provider supports:
|
|
22
|
+
|
|
23
|
+
* ensure => running/stopped,
|
|
24
|
+
* enable => true/false
|
|
25
|
+
* status
|
|
26
|
+
* restart
|
|
27
|
+
|
|
28
|
+
Here is how the Puppet states correspond to `launchd` states:
|
|
29
|
+
|
|
30
|
+
* stopped --- job unloaded
|
|
31
|
+
* started --- job loaded
|
|
32
|
+
* enabled --- 'Disable' removed from job plist file
|
|
33
|
+
* disabled --- 'Disable' added to job plist file
|
|
34
|
+
|
|
35
|
+
Note that this allows you to do something `launchctl` can't do, which is to
|
|
36
|
+
be in a state of "stopped/enabled" or "running/disabled".
|
|
37
|
+
|
|
38
|
+
Note that this provider does not support overriding 'restart' or 'status'.
|
|
39
|
+
|
|
40
|
+
EOT
|
|
41
|
+
|
|
42
|
+
include Puppet::Util::Warnings
|
|
43
|
+
|
|
44
|
+
commands :launchctl => "/bin/launchctl"
|
|
45
|
+
commands :sw_vers => "/usr/bin/sw_vers"
|
|
46
|
+
commands :plutil => "/usr/bin/plutil"
|
|
47
|
+
|
|
48
|
+
defaultfor :operatingsystem => :darwin
|
|
49
|
+
confine :operatingsystem => :darwin
|
|
50
|
+
|
|
51
|
+
has_feature :enableable
|
|
52
|
+
mk_resource_methods
|
|
53
|
+
|
|
54
|
+
Launchd_Paths = [ "/Library/LaunchAgents",
|
|
55
|
+
"/Library/LaunchDaemons",
|
|
56
|
+
"/System/Library/LaunchAgents",
|
|
57
|
+
"/System/Library/LaunchDaemons"]
|
|
58
|
+
|
|
59
|
+
Launchd_Overrides = "/var/db/launchd.db/com.apple.launchd/overrides.plist"
|
|
60
|
+
|
|
61
|
+
# Caching is enabled through the following three methods. Self.prefetch will
|
|
62
|
+
# call self.instances to create an instance for each service. Self.flush will
|
|
63
|
+
# clear out our cache when we're done.
|
|
64
|
+
def self.prefetch(resources)
|
|
65
|
+
instances.each do |prov|
|
|
66
|
+
if resource = resources[prov.name]
|
|
67
|
+
resource.provider = prov
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
# Self.instances will return an array with each element being a hash
|
|
73
|
+
# containing the name, provider, path, and status of each service on the
|
|
74
|
+
# system.
|
|
75
|
+
def self.instances
|
|
76
|
+
jobs = self.jobsearch
|
|
77
|
+
@job_list ||= self.job_list
|
|
78
|
+
jobs.keys.collect do |job|
|
|
79
|
+
job_status = @job_list.has_key?(job) ? :running : :stopped
|
|
80
|
+
new(:name => job, :provider => :launchd, :path => jobs[job], :status => job_status)
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
# Sets a class instance variable with a hash of all launchd plist files that
|
|
85
|
+
# are found on the system. The key of the hash is the job id and the value
|
|
86
|
+
# is the path to the file. If a label is passed, we return the job id and
|
|
87
|
+
# path for that specific job.
|
|
88
|
+
def self.jobsearch(label=nil)
|
|
89
|
+
@label_to_path_map ||= {}
|
|
90
|
+
if @label_to_path_map.empty?
|
|
91
|
+
Launchd_Paths.each do |path|
|
|
92
|
+
Dir.glob(File.join(path,'*')).each do |filepath|
|
|
93
|
+
next if ! File.file?(filepath)
|
|
94
|
+
job = read_plist(filepath)
|
|
95
|
+
if job.has_key?("Label") and job["Label"] == label
|
|
96
|
+
return { label => filepath }
|
|
97
|
+
else
|
|
98
|
+
@label_to_path_map[job["Label"]] = filepath
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
end
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
if label
|
|
105
|
+
if @label_to_path_map.has_key? label
|
|
106
|
+
return { label => @label_to_path_map[label] }
|
|
107
|
+
else
|
|
108
|
+
raise Puppet::Error.new("Unable to find launchd plist for job: #{label}")
|
|
109
|
+
end
|
|
110
|
+
else
|
|
111
|
+
@label_to_path_map
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
# This status method lists out all currently running services.
|
|
116
|
+
# This hash is returned at the end of the method.
|
|
117
|
+
def self.job_list
|
|
118
|
+
@job_list = Hash.new
|
|
119
|
+
begin
|
|
120
|
+
output = launchctl :list
|
|
121
|
+
raise Puppet::Error.new("launchctl list failed to return any data.") if output.nil?
|
|
122
|
+
output.split("\n").each do |line|
|
|
123
|
+
@job_list[line.split(/\s/).last] = :running
|
|
124
|
+
end
|
|
125
|
+
rescue Puppet::ExecutionFailure
|
|
126
|
+
raise Puppet::Error.new("Unable to determine status of #{resource[:name]}")
|
|
127
|
+
end
|
|
128
|
+
@job_list
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
# Launchd implemented plist overrides in version 10.6.
|
|
132
|
+
# This method checks the major_version of OS X and returns true if
|
|
133
|
+
# it is 10.6 or greater. This allows us to implement different plist
|
|
134
|
+
# behavior for versions >= 10.6
|
|
135
|
+
def has_macosx_plist_overrides?
|
|
136
|
+
@product_version ||= self.class.get_macosx_version_major
|
|
137
|
+
return true unless /^10\.[0-5]/.match(@product_version)
|
|
138
|
+
return false
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
# Read a plist, whether its format is XML or in Apple's "binary1"
|
|
142
|
+
# format.
|
|
143
|
+
def self.read_plist(path)
|
|
144
|
+
Plist::parse_xml(plutil('-convert', 'xml1', '-o', '/dev/stdout', path))
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
# Clean out the @property_hash variable containing the cached list of services
|
|
148
|
+
def flush
|
|
149
|
+
@property_hash.clear
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
def exists?
|
|
153
|
+
Puppet.debug("Puppet::Provider::Launchd:Ensure for #{@property_hash[:name]}: #{@property_hash[:ensure]}")
|
|
154
|
+
@property_hash[:ensure] != :absent
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
def self.get_macosx_version_major
|
|
158
|
+
return @macosx_version_major if @macosx_version_major
|
|
159
|
+
begin
|
|
160
|
+
# Make sure we've loaded all of the facts
|
|
161
|
+
Facter.loadfacts
|
|
162
|
+
if Facter.value(:macosx_productversion_major)
|
|
163
|
+
product_version_major = Facter.value(:macosx_productversion_major)
|
|
164
|
+
else
|
|
165
|
+
# TODO: remove this code chunk once we require Facter 1.5.5 or higher.
|
|
166
|
+
warnonce("DEPRECATION WARNING: Future versions of the launchd provider will require Facter 1.5.5 or newer.")
|
|
167
|
+
product_version = Facter.value(:macosx_productversion)
|
|
168
|
+
fail("Could not determine OS X version from Facter") if product_version.nil?
|
|
169
|
+
product_version_major = product_version.scan(/(\d+)\.(\d+)./).join(".")
|
|
170
|
+
end
|
|
171
|
+
fail("#{product_version_major} is not supported by the launchd provider") if %w{10.0 10.1 10.2 10.3}.include?(product_version_major)
|
|
172
|
+
@macosx_version_major = product_version_major
|
|
173
|
+
return @macosx_version_major
|
|
174
|
+
rescue Puppet::ExecutionFailure => detail
|
|
175
|
+
fail("Could not determine OS X version: #{detail}")
|
|
176
|
+
end
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
# finds the path for a given label and returns the path and parsed plist
|
|
181
|
+
# as an array of [path, plist]. Note plist is really a Hash here.
|
|
182
|
+
def plist_from_label(label)
|
|
183
|
+
job = self.class.jobsearch(label)
|
|
184
|
+
job_path = job[label]
|
|
185
|
+
if FileTest.file?(job_path)
|
|
186
|
+
job_plist = self.class.read_plist(job_path)
|
|
187
|
+
else
|
|
188
|
+
raise Puppet::Error.new("Unable to parse launchd plist at path: #{job_path}")
|
|
189
|
+
end
|
|
190
|
+
[job_path, job_plist]
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
# start the service. To get to a state of running/enabled, we need to
|
|
194
|
+
# conditionally enable at load, then disable by modifying the plist file
|
|
195
|
+
# directly.
|
|
196
|
+
def start
|
|
197
|
+
return ucommand(:start) if resource[:start]
|
|
198
|
+
job_path, job_plist = plist_from_label(resource[:name])
|
|
199
|
+
did_enable_job = false
|
|
200
|
+
cmds = []
|
|
201
|
+
cmds << :launchctl << :load
|
|
202
|
+
if self.enabled? == :false || self.status == :stopped # launchctl won't load disabled jobs
|
|
203
|
+
cmds << "-w"
|
|
204
|
+
did_enable_job = true
|
|
205
|
+
end
|
|
206
|
+
cmds << job_path
|
|
207
|
+
begin
|
|
208
|
+
execute(cmds)
|
|
209
|
+
rescue Puppet::ExecutionFailure
|
|
210
|
+
raise Puppet::Error.new("Unable to start service: #{resource[:name]} at path: #{job_path}")
|
|
211
|
+
end
|
|
212
|
+
# As load -w clears the Disabled flag, we need to add it in after
|
|
213
|
+
self.disable if did_enable_job and resource[:enable] == :false
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
def stop
|
|
218
|
+
return ucommand(:stop) if resource[:stop]
|
|
219
|
+
job_path, job_plist = plist_from_label(resource[:name])
|
|
220
|
+
did_disable_job = false
|
|
221
|
+
cmds = []
|
|
222
|
+
cmds << :launchctl << :unload
|
|
223
|
+
if self.enabled? == :true # keepalive jobs can't be stopped without disabling
|
|
224
|
+
cmds << "-w"
|
|
225
|
+
did_disable_job = true
|
|
226
|
+
end
|
|
227
|
+
cmds << job_path
|
|
228
|
+
begin
|
|
229
|
+
execute(cmds)
|
|
230
|
+
rescue Puppet::ExecutionFailure
|
|
231
|
+
raise Puppet::Error.new("Unable to stop service: #{resource[:name]} at path: #{job_path}")
|
|
232
|
+
end
|
|
233
|
+
# As unload -w sets the Disabled flag, we need to add it in after
|
|
234
|
+
self.enable if did_disable_job and resource[:enable] == :true
|
|
235
|
+
end
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
# launchd jobs are enabled by default. They are only disabled if the key
|
|
239
|
+
# "Disabled" is set to true, but it can also be set to false to enable it.
|
|
240
|
+
# Starting in 10.6, the Disabled key in the job plist is consulted, but only
|
|
241
|
+
# if there is no entry in the global overrides plist.
|
|
242
|
+
# We need to draw a distinction between undefined, true and false for both
|
|
243
|
+
# locations where the Disabled flag can be defined.
|
|
244
|
+
def enabled?
|
|
245
|
+
job_plist_disabled = nil
|
|
246
|
+
overrides_disabled = nil
|
|
247
|
+
|
|
248
|
+
job_path, job_plist = plist_from_label(resource[:name])
|
|
249
|
+
job_plist_disabled = job_plist["Disabled"] if job_plist.has_key?("Disabled")
|
|
250
|
+
|
|
251
|
+
if has_macosx_plist_overrides?
|
|
252
|
+
if FileTest.file?(Launchd_Overrides) and overrides = self.class.read_plist(Launchd_Overrides)
|
|
253
|
+
if overrides.has_key?(resource[:name])
|
|
254
|
+
overrides_disabled = overrides[resource[:name]]["Disabled"] if overrides[resource[:name]].has_key?("Disabled")
|
|
255
|
+
end
|
|
256
|
+
end
|
|
257
|
+
end
|
|
258
|
+
|
|
259
|
+
if overrides_disabled.nil?
|
|
260
|
+
if job_plist_disabled.nil? or job_plist_disabled == false
|
|
261
|
+
return :true
|
|
262
|
+
end
|
|
263
|
+
elsif overrides_disabled == false
|
|
264
|
+
return :true
|
|
265
|
+
end
|
|
266
|
+
:false
|
|
267
|
+
end
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
# enable and disable are a bit hacky. We write out the plist with the appropriate value
|
|
271
|
+
# rather than dealing with launchctl as it is unable to change the Disabled flag
|
|
272
|
+
# without actually loading/unloading the job.
|
|
273
|
+
# Starting in 10.6 we need to write out a disabled key to the global
|
|
274
|
+
# overrides plist, in earlier versions this is stored in the job plist itself.
|
|
275
|
+
def enable
|
|
276
|
+
if has_macosx_plist_overrides?
|
|
277
|
+
overrides = self.class.read_plist(Launchd_Overrides)
|
|
278
|
+
overrides[resource[:name]] = { "Disabled" => false }
|
|
279
|
+
Plist::Emit.save_plist(overrides, Launchd_Overrides)
|
|
280
|
+
else
|
|
281
|
+
job_path, job_plist = plist_from_label(resource[:name])
|
|
282
|
+
if self.enabled? == :false
|
|
283
|
+
job_plist.delete("Disabled")
|
|
284
|
+
Plist::Emit.save_plist(job_plist, job_path)
|
|
285
|
+
end
|
|
286
|
+
end
|
|
287
|
+
end
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
def disable
|
|
291
|
+
if has_macosx_plist_overrides?
|
|
292
|
+
overrides = self.class.read_plist(Launchd_Overrides)
|
|
293
|
+
overrides[resource[:name]] = { "Disabled" => true }
|
|
294
|
+
Plist::Emit.save_plist(overrides, Launchd_Overrides)
|
|
295
|
+
else
|
|
296
|
+
job_path, job_plist = plist_from_label(resource[:name])
|
|
297
|
+
job_plist["Disabled"] = true
|
|
298
|
+
Plist::Emit.save_plist(job_plist, job_path)
|
|
299
|
+
end
|
|
300
|
+
end
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
end
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Gentoo OpenRC
|
|
2
|
+
Puppet::Type.type(:service).provide :openrc, :parent => :base do
|
|
3
|
+
desc <<-EOT
|
|
4
|
+
Support for Gentoo's OpenRC initskripts
|
|
5
|
+
|
|
6
|
+
Uses rc-update, rc-status and rc-service to manage services.
|
|
7
|
+
|
|
8
|
+
EOT
|
|
9
|
+
|
|
10
|
+
defaultfor :operatingsystem => :gentoo
|
|
11
|
+
defaultfor :operatingsystem => :funtoo
|
|
12
|
+
|
|
13
|
+
commands :rcservice => '/sbin/rc-service'
|
|
14
|
+
commands :rcstatus => '/bin/rc-status'
|
|
15
|
+
commands :rcupdate => '/sbin/rc-update'
|
|
16
|
+
|
|
17
|
+
self::STATUSLINE = /^\s+(.*?)\s*\[\s*(.*)\s*\]$/
|
|
18
|
+
|
|
19
|
+
def enable
|
|
20
|
+
rcupdate('-C', :add, @resource[:name])
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def disable
|
|
24
|
+
rcupdate('-C', :del, @resource[:name])
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# rc-status -a shows all runlevels and dynamic runlevels which
|
|
28
|
+
# are not considered as enabled. We have to find out under which
|
|
29
|
+
# runlevel our service is listed
|
|
30
|
+
def enabled?
|
|
31
|
+
enabled = :false
|
|
32
|
+
rcstatus('-C', '-a').each_line do |line|
|
|
33
|
+
case line.chomp
|
|
34
|
+
when /^Runlevel: /
|
|
35
|
+
enabled = :true
|
|
36
|
+
when /^\S+/ # caption of a dynamic runlevel
|
|
37
|
+
enabled = :false
|
|
38
|
+
when self.class::STATUSLINE
|
|
39
|
+
return enabled if @resource[:name] == $1
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
:false
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def self.instances
|
|
46
|
+
instances = []
|
|
47
|
+
rcservice('-C', '--list').each_line do |line|
|
|
48
|
+
instances << new(:name => line.chomp)
|
|
49
|
+
end
|
|
50
|
+
instances
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def restartcmd
|
|
54
|
+
(@resource[:hasrestart] == :true) && [command(:rcservice), @resource[:name], :restart]
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def startcmd
|
|
58
|
+
[command(:rcservice), @resource[:name], :start ]
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def stopcmd
|
|
62
|
+
[command(:rcservice), @resource[:name], :stop]
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def statuscmd
|
|
66
|
+
((@resource.provider.get(:hasstatus) == true) || (@resource[:hasstatus] == :true)) && [command(:rcservice), @resource[:name], :status]
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
end
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# Manage Red Hat services. Start/stop uses /sbin/service and enable/disable uses chkconfig
|
|
2
|
+
|
|
3
|
+
Puppet::Type.type(:service).provide :redhat, :parent => :init, :source => :init do
|
|
4
|
+
desc "Red Hat's (and probably many others') form of `init`-style service
|
|
5
|
+
management. Uses `chkconfig` for service enabling and disabling.
|
|
6
|
+
|
|
7
|
+
"
|
|
8
|
+
|
|
9
|
+
commands :chkconfig => "/sbin/chkconfig", :service => "/sbin/service"
|
|
10
|
+
|
|
11
|
+
defaultfor :operatingsystem => [:redhat, :fedora, :suse, :centos, :sles, :oel, :ovm]
|
|
12
|
+
|
|
13
|
+
def self.instances
|
|
14
|
+
# this exclude list is all from /sbin/service (5.x), but I did not exclude kudzu
|
|
15
|
+
self.get_services(['/etc/init.d'], ['functions', 'halt', 'killall', 'single', 'linuxconf', 'reboot', 'boot'])
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def self.defpath
|
|
19
|
+
superclass.defpath
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# Remove the symlinks
|
|
23
|
+
def disable
|
|
24
|
+
# The off method operates on run levels 2,3,4 and 5 by default We ensure
|
|
25
|
+
# all run levels are turned off because the reset method may turn on the
|
|
26
|
+
# service in run levels 0, 1 and/or 6
|
|
27
|
+
output = chkconfig("--level", "0123456", @resource[:name], :off)
|
|
28
|
+
rescue Puppet::ExecutionFailure
|
|
29
|
+
raise Puppet::Error, "Could not disable #{self.name}: #{output}"
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def enabled?
|
|
33
|
+
begin
|
|
34
|
+
output = chkconfig(@resource[:name])
|
|
35
|
+
rescue Puppet::ExecutionFailure
|
|
36
|
+
return :false
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# If it's disabled on SuSE, then it will print output showing "off"
|
|
40
|
+
# at the end
|
|
41
|
+
if output =~ /.* off$/
|
|
42
|
+
return :false
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
:true
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# Don't support them specifying runlevels; always use the runlevels
|
|
49
|
+
# in the init scripts.
|
|
50
|
+
def enable
|
|
51
|
+
output = chkconfig(@resource[:name], :on)
|
|
52
|
+
rescue Puppet::ExecutionFailure => detail
|
|
53
|
+
raise Puppet::Error, "Could not enable #{self.name}: #{detail}"
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def initscript
|
|
57
|
+
raise Puppet::Error, "Do not directly call the init script for '#{@resource[:name]}'; use 'service' instead"
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# use hasstatus=>true when its set for the provider.
|
|
61
|
+
def statuscmd
|
|
62
|
+
((@resource.provider.get(:hasstatus) == true) || (@resource[:hasstatus] == :true)) && [command(:service), @resource[:name], "status"]
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def restartcmd
|
|
66
|
+
(@resource[:hasrestart] == :true) && [command(:service), @resource[:name], "restart"]
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def startcmd
|
|
70
|
+
[command(:service), @resource[:name], "start"]
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def stopcmd
|
|
74
|
+
[command(:service), @resource[:name], "stop"]
|
|
75
|
+
end
|
|
76
|
+
end
|