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,94 @@
|
|
|
1
|
+
Puppet::Type.type(:package).provide :ports, :parent => :freebsd, :source => :freebsd do
|
|
2
|
+
desc "Support for FreeBSD's ports. Note that this, too, mixes packages and ports."
|
|
3
|
+
|
|
4
|
+
commands :portupgrade => "/usr/local/sbin/portupgrade",
|
|
5
|
+
:portversion => "/usr/local/sbin/portversion",
|
|
6
|
+
:portuninstall => "/usr/local/sbin/pkg_deinstall",
|
|
7
|
+
:portinfo => "/usr/sbin/pkg_info"
|
|
8
|
+
|
|
9
|
+
defaultfor :operatingsystem => :freebsd
|
|
10
|
+
|
|
11
|
+
# I hate ports
|
|
12
|
+
%w{INTERACTIVE UNAME}.each do |var|
|
|
13
|
+
ENV.delete(var) if ENV.include?(var)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def install
|
|
17
|
+
# -N: install if the package is missing, otherwise upgrade
|
|
18
|
+
# -M: yes, we're a batch, so don't ask any questions
|
|
19
|
+
cmd = %w{-N -M BATCH=yes} << @resource[:name]
|
|
20
|
+
|
|
21
|
+
output = portupgrade(*cmd)
|
|
22
|
+
if output =~ /\*\* No such /
|
|
23
|
+
raise Puppet::ExecutionFailure, "Could not find package #{@resource[:name]}"
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# If there are multiple packages, we only use the last one
|
|
28
|
+
def latest
|
|
29
|
+
cmd = ["-v", @resource[:name]]
|
|
30
|
+
|
|
31
|
+
begin
|
|
32
|
+
output = portversion(*cmd)
|
|
33
|
+
rescue Puppet::ExecutionFailure
|
|
34
|
+
raise Puppet::Error.new(output)
|
|
35
|
+
end
|
|
36
|
+
line = output.split("\n").pop
|
|
37
|
+
|
|
38
|
+
unless line =~ /^(\S+)\s+(\S)\s+(.+)$/
|
|
39
|
+
# There's no "latest" version, so just return a placeholder
|
|
40
|
+
return :latest
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
pkgstuff = $1
|
|
44
|
+
match = $2
|
|
45
|
+
info = $3
|
|
46
|
+
|
|
47
|
+
unless pkgstuff =~ /^(\S+)-([^-\s]+)$/
|
|
48
|
+
raise Puppet::Error,
|
|
49
|
+
"Could not match package info '#{pkgstuff}'"
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
name, version = $1, $2
|
|
53
|
+
|
|
54
|
+
if match == "=" or match == ">"
|
|
55
|
+
# we're up to date or more recent
|
|
56
|
+
return version
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# Else, we need to be updated; we need to pull out the new version
|
|
60
|
+
|
|
61
|
+
unless info =~ /\((\w+) has (.+)\)/
|
|
62
|
+
raise Puppet::Error,
|
|
63
|
+
"Could not match version info '#{info}'"
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
source, newversion = $1, $2
|
|
67
|
+
|
|
68
|
+
debug "Newer version in #{source}"
|
|
69
|
+
newversion
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def query
|
|
73
|
+
# support portorigin_glob such as "mail/postfix"
|
|
74
|
+
name = self.name
|
|
75
|
+
if name =~ /\//
|
|
76
|
+
name = self.name.split(/\//).slice(1)
|
|
77
|
+
end
|
|
78
|
+
self.class.instances.each do |instance|
|
|
79
|
+
if instance.name == name
|
|
80
|
+
return instance.properties
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
nil
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
def uninstall
|
|
88
|
+
portuninstall @resource[:name]
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
def update
|
|
92
|
+
install
|
|
93
|
+
end
|
|
94
|
+
end
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
# Whole new package, so include pack stuff
|
|
2
|
+
require 'puppet/provider/package'
|
|
3
|
+
|
|
4
|
+
Puppet::Type.type(:package).provide :portupgrade, :parent => Puppet::Provider::Package do
|
|
5
|
+
include Puppet::Util::Execution
|
|
6
|
+
|
|
7
|
+
desc "Support for FreeBSD's ports using the portupgrade ports management software.
|
|
8
|
+
Use the port's full origin as the resource name. eg (ports-mgmt/portupgrade)
|
|
9
|
+
for the portupgrade port."
|
|
10
|
+
|
|
11
|
+
## has_features is usually autodetected based on defs below.
|
|
12
|
+
# has_features :installable, :uninstallable, :upgradeable
|
|
13
|
+
|
|
14
|
+
commands :portupgrade => "/usr/local/sbin/portupgrade",
|
|
15
|
+
:portinstall => "/usr/local/sbin/portinstall",
|
|
16
|
+
:portversion => "/usr/local/sbin/portversion",
|
|
17
|
+
:portuninstall => "/usr/local/sbin/pkg_deinstall",
|
|
18
|
+
:portinfo => "/usr/sbin/pkg_info"
|
|
19
|
+
|
|
20
|
+
## Activate this only once approved by someone important.
|
|
21
|
+
# defaultfor :operatingsystem => :freebsd
|
|
22
|
+
|
|
23
|
+
# Remove unwanted environment variables.
|
|
24
|
+
%w{INTERACTIVE UNAME}.each do |var|
|
|
25
|
+
if ENV.include?(var)
|
|
26
|
+
ENV.delete(var)
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
######## instances sub command (builds the installed packages list)
|
|
31
|
+
|
|
32
|
+
def self.instances
|
|
33
|
+
Puppet.debug "portupgrade.rb Building packages list from installed ports"
|
|
34
|
+
|
|
35
|
+
# regex to match output from pkg_info
|
|
36
|
+
regex = %r{^(\S+)-([^-\s]+):(\S+)$}
|
|
37
|
+
# Corresponding field names
|
|
38
|
+
fields = [:portname, :ensure, :portorigin]
|
|
39
|
+
# define Temporary hash used, packages array of hashes
|
|
40
|
+
hash = Hash.new
|
|
41
|
+
packages = []
|
|
42
|
+
|
|
43
|
+
# exec command
|
|
44
|
+
cmdline = ["-aoQ"]
|
|
45
|
+
begin
|
|
46
|
+
output = portinfo(*cmdline)
|
|
47
|
+
rescue Puppet::ExecutionFailure
|
|
48
|
+
raise Puppet::Error.new(output)
|
|
49
|
+
return nil
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# split output and match it and populate temp hash
|
|
53
|
+
output.split("\n").each { |data|
|
|
54
|
+
# reset hash to nil for each line
|
|
55
|
+
hash.clear
|
|
56
|
+
if match = regex.match(data)
|
|
57
|
+
# Output matched regex
|
|
58
|
+
fields.zip(match.captures) { |field, value|
|
|
59
|
+
hash[field] = value
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
# populate the actual :name field from the :portorigin
|
|
63
|
+
# Set :provider to this object name
|
|
64
|
+
hash[:name] = hash[:portorigin]
|
|
65
|
+
hash[:provider] = self.name
|
|
66
|
+
|
|
67
|
+
# Add to the full packages listing
|
|
68
|
+
packages << new(hash)
|
|
69
|
+
else
|
|
70
|
+
# unrecognised output from pkg_info
|
|
71
|
+
Puppet.debug "portupgrade.Instances() - unable to match output: #{data}"
|
|
72
|
+
end
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
# return the packages array of hashes
|
|
76
|
+
return packages
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
######## Installation sub command
|
|
80
|
+
|
|
81
|
+
def install
|
|
82
|
+
Puppet.debug "portupgrade.install() - Installation call on #{@resource[:name]}"
|
|
83
|
+
# -M: yes, we're a batch, so don't ask any questions
|
|
84
|
+
cmdline = ["-M BATCH=yes", @resource[:name]]
|
|
85
|
+
|
|
86
|
+
# FIXME: it's possible that portinstall prompts for data so locks up.
|
|
87
|
+
begin
|
|
88
|
+
output = portinstall(*cmdline)
|
|
89
|
+
rescue Puppet::ExecutionFailure
|
|
90
|
+
raise Puppet::Error.new(output)
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
if output =~ /\*\* No such /
|
|
94
|
+
raise Puppet::ExecutionFailure, "Could not find package #{@resource[:name]}"
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# No return code required, so do nil to be clean
|
|
98
|
+
return nil
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
######## Latest subcommand (returns the latest version available, or current version if installed is latest)
|
|
102
|
+
|
|
103
|
+
def latest
|
|
104
|
+
Puppet.debug "portupgrade.latest() - Latest check called on #{@resource[:name]}"
|
|
105
|
+
# search for latest version available, or return current version.
|
|
106
|
+
# cmdline = "portversion -v <portorigin>", returns "<portname> <code> <stuff>"
|
|
107
|
+
# or "** No matching package found: <portname>"
|
|
108
|
+
cmdline = ["-v", @resource[:name]]
|
|
109
|
+
|
|
110
|
+
begin
|
|
111
|
+
output = portversion(*cmdline)
|
|
112
|
+
rescue Puppet::ExecutionFailure
|
|
113
|
+
raise Puppet::Error.new(output)
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
# Check: output format.
|
|
117
|
+
if output =~ /^\S+-([^-\s]+)\s+(\S)\s+(.*)/
|
|
118
|
+
installedversion = $1
|
|
119
|
+
comparison = $2
|
|
120
|
+
otherdata = $3
|
|
121
|
+
|
|
122
|
+
# Only return a new version number when it's clear that there is a new version
|
|
123
|
+
# all others return the current version so no unexpected 'upgrades' occur.
|
|
124
|
+
case comparison
|
|
125
|
+
when "=", ">"
|
|
126
|
+
Puppet.debug "portupgrade.latest() - Installed package is latest (#{installedversion})"
|
|
127
|
+
return installedversion
|
|
128
|
+
when "<"
|
|
129
|
+
# "portpkg-1.7_5 < needs updating (port has 1.14)"
|
|
130
|
+
# "portpkg-1.7_5 < needs updating (port has 1.14) (=> 'newport/pkg')
|
|
131
|
+
if otherdata =~ /\(port has (\S+)\)/
|
|
132
|
+
newversion = $1
|
|
133
|
+
Puppet.debug "portupgrade.latest() - Installed version needs updating to (#{newversion})"
|
|
134
|
+
return newversion
|
|
135
|
+
else
|
|
136
|
+
Puppet.debug "portupgrade.latest() - Unable to determine new version from (#{otherdata})"
|
|
137
|
+
return installedversion
|
|
138
|
+
end
|
|
139
|
+
when "?", "!", "#"
|
|
140
|
+
Puppet.debug "portupgrade.latest() - Comparison Error reported from portversion (#{output})"
|
|
141
|
+
return installedversion
|
|
142
|
+
else
|
|
143
|
+
Puppet.debug "portupgrade.latest() - Unknown code from portversion output (#{output})"
|
|
144
|
+
return installedversion
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
else
|
|
148
|
+
# error: output not parsed correctly, error out with nil.
|
|
149
|
+
# Seriously - this section should never be called in a perfect world.
|
|
150
|
+
# as verification that the port is installed has already happened in query.
|
|
151
|
+
if output =~ /^\*\* No matching package /
|
|
152
|
+
raise Puppet::ExecutionFailure, "Could not find package #{@resource[:name]}"
|
|
153
|
+
else
|
|
154
|
+
# Any other error (dump output to log)
|
|
155
|
+
raise Puppet::ExecutionFailure, "Unexpected output from portversion: #{output}"
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
# Just in case we still are running, return nil
|
|
159
|
+
return nil
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
# At this point normal operation has finished and we shouldn't have been called.
|
|
163
|
+
# Error out and let the admin deal with it.
|
|
164
|
+
raise Puppet::Error, "portversion.latest() - fatal error with portversion: #{output}"
|
|
165
|
+
return nil
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
###### Query subcommand - return a hash of details if exists, or nil if it doesn't.
|
|
169
|
+
# Used to make sure the package is installed
|
|
170
|
+
|
|
171
|
+
def query
|
|
172
|
+
Puppet.debug "portupgrade.query() - Called on #{@resource[:name]}"
|
|
173
|
+
|
|
174
|
+
cmdline = ["-qO", @resource[:name]]
|
|
175
|
+
begin
|
|
176
|
+
output = portinfo(*cmdline)
|
|
177
|
+
rescue Puppet::ExecutionFailure
|
|
178
|
+
raise Puppet::Error.new(output)
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
# Check: if output isn't in the right format, return nil
|
|
182
|
+
if output =~ /^(\S+)-([^-\s]+)/
|
|
183
|
+
# Fill in the details
|
|
184
|
+
hash = Hash.new
|
|
185
|
+
hash[:portorigin] = self.name
|
|
186
|
+
hash[:portname] = $1
|
|
187
|
+
hash[:ensure] = $2
|
|
188
|
+
|
|
189
|
+
# If more details are required, then we can do another pkg_info
|
|
190
|
+
# query here and parse out that output and add to the hash
|
|
191
|
+
# return the hash to the caller
|
|
192
|
+
return hash
|
|
193
|
+
else
|
|
194
|
+
Puppet.debug "portupgrade.query() - package (#{@resource[:name]}) not installed"
|
|
195
|
+
return nil
|
|
196
|
+
end
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
####### Uninstall command
|
|
200
|
+
|
|
201
|
+
def uninstall
|
|
202
|
+
Puppet.debug "portupgrade.uninstall() - called on #{@resource[:name]}"
|
|
203
|
+
# Get full package name from port origin to uninstall with
|
|
204
|
+
cmdline = ["-qO", @resource[:name]]
|
|
205
|
+
begin
|
|
206
|
+
output = portinfo(*cmdline)
|
|
207
|
+
rescue Puppet::ExecutionFailure
|
|
208
|
+
raise Puppet::Error.new(output)
|
|
209
|
+
end
|
|
210
|
+
|
|
211
|
+
if output =~ /^(\S+)/
|
|
212
|
+
# output matches, so uninstall it
|
|
213
|
+
portuninstall $1
|
|
214
|
+
end
|
|
215
|
+
end
|
|
216
|
+
|
|
217
|
+
######## Update/upgrade command
|
|
218
|
+
|
|
219
|
+
def update
|
|
220
|
+
Puppet.debug "portupgrade.update() - called on (#{@resource[:name]})"
|
|
221
|
+
|
|
222
|
+
cmdline = ["-qO", @resource[:name]]
|
|
223
|
+
begin
|
|
224
|
+
output = portinfo(*cmdline)
|
|
225
|
+
rescue Puppet::ExecutionFailure
|
|
226
|
+
raise Puppet::Error.new(output)
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
if output =~ /^(\S+)/
|
|
230
|
+
# output matches, so upgrade the software
|
|
231
|
+
cmdline = ["-M BATCH=yes", $1]
|
|
232
|
+
begin
|
|
233
|
+
output = portupgrade(*cmdline)
|
|
234
|
+
rescue Puppet::ExecutionFailure
|
|
235
|
+
raise Puppet::Error.new(output)
|
|
236
|
+
end
|
|
237
|
+
end
|
|
238
|
+
end
|
|
239
|
+
|
|
240
|
+
## EOF
|
|
241
|
+
end
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
require 'puppet/provider/package'
|
|
2
|
+
|
|
3
|
+
# RPM packaging. Should work anywhere that has rpm installed.
|
|
4
|
+
Puppet::Type.type(:package).provide :rpm, :source => :rpm, :parent => Puppet::Provider::Package do
|
|
5
|
+
desc "RPM packaging support; should work anywhere with a working `rpm`
|
|
6
|
+
binary."
|
|
7
|
+
|
|
8
|
+
has_feature :versionable
|
|
9
|
+
|
|
10
|
+
# The query format by which we identify installed packages
|
|
11
|
+
NEVRAFORMAT = "%{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH}"
|
|
12
|
+
NEVRA_FIELDS = [:name, :epoch, :version, :release, :arch]
|
|
13
|
+
|
|
14
|
+
commands :rpm => "rpm"
|
|
15
|
+
|
|
16
|
+
if command('rpm')
|
|
17
|
+
confine :true => begin
|
|
18
|
+
rpm('--version')
|
|
19
|
+
rescue Puppet::ExecutionFailure
|
|
20
|
+
false
|
|
21
|
+
else
|
|
22
|
+
true
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def self.instances
|
|
27
|
+
packages = []
|
|
28
|
+
|
|
29
|
+
# rpm < 4.1 don't support --nosignature
|
|
30
|
+
output = rpm "--version"
|
|
31
|
+
sig = "--nosignature"
|
|
32
|
+
if output =~ /RPM version (([123].*)|(4\.0.*))/
|
|
33
|
+
sig = ""
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# list out all of the packages
|
|
37
|
+
begin
|
|
38
|
+
execpipe("#{command(:rpm)} -qa #{sig} --nodigest --qf '#{NEVRAFORMAT}\n'") { |process|
|
|
39
|
+
# now turn each returned line into a package object
|
|
40
|
+
process.each_line { |line|
|
|
41
|
+
hash = nevra_to_hash(line)
|
|
42
|
+
packages << new(hash)
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
rescue Puppet::ExecutionFailure
|
|
46
|
+
raise Puppet::Error, "Failed to list packages"
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
packages
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# Find the fully versioned package name and the version alone. Returns
|
|
53
|
+
# a hash with entries :instance => fully versioned package name, and
|
|
54
|
+
# :ensure => version-release
|
|
55
|
+
def query
|
|
56
|
+
#NOTE: Prior to a fix for issue 1243, this method potentially returned a cached value
|
|
57
|
+
#IF YOU CALL THIS METHOD, IT WILL CALL RPM
|
|
58
|
+
#Use get(:property) to check if cached values are available
|
|
59
|
+
cmd = ["-q", @resource[:name], "--nosignature", "--nodigest", "--qf", "#{NEVRAFORMAT}\n"]
|
|
60
|
+
|
|
61
|
+
begin
|
|
62
|
+
output = rpm(*cmd)
|
|
63
|
+
rescue Puppet::ExecutionFailure
|
|
64
|
+
return nil
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# FIXME: We could actually be getting back multiple packages
|
|
68
|
+
# for multilib
|
|
69
|
+
@property_hash.update(self.class.nevra_to_hash(output))
|
|
70
|
+
|
|
71
|
+
@property_hash.dup
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# Here we just retrieve the version from the file specified in the source.
|
|
75
|
+
def latest
|
|
76
|
+
unless source = @resource[:source]
|
|
77
|
+
@resource.fail "RPMs must specify a package source"
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
cmd = [command(:rpm), "-q", "--qf", "#{NEVRAFORMAT}\n", "-p", "#{@resource[:source]}"]
|
|
81
|
+
h = self.class.nevra_to_hash(execfail(cmd, Puppet::Error))
|
|
82
|
+
h[:ensure]
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def install
|
|
86
|
+
source = nil
|
|
87
|
+
unless source = @resource[:source]
|
|
88
|
+
@resource.fail "RPMs must specify a package source"
|
|
89
|
+
end
|
|
90
|
+
# RPM gets pissy if you try to install an already
|
|
91
|
+
# installed package
|
|
92
|
+
if @resource.should(:ensure) == @property_hash[:ensure] or
|
|
93
|
+
@resource.should(:ensure) == :latest && @property_hash[:ensure] == latest
|
|
94
|
+
return
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
flag = "-i"
|
|
98
|
+
flag = "-U" if @property_hash[:ensure] and @property_hash[:ensure] != :absent
|
|
99
|
+
|
|
100
|
+
rpm flag, "--oldpackage", source
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
def uninstall
|
|
104
|
+
query unless get(:arch)
|
|
105
|
+
nvr = "#{get(:name)}-#{get(:version)}-#{get(:release)}"
|
|
106
|
+
arch = ".#{get(:arch)}"
|
|
107
|
+
# If they specified an arch in the manifest, erase that Otherwise,
|
|
108
|
+
# erase the arch we got back from the query. If multiple arches are
|
|
109
|
+
# installed and only the package name is specified (without the
|
|
110
|
+
# arch), this will uninstall all of them on successive runs of the
|
|
111
|
+
# client, one after the other
|
|
112
|
+
if @resource[:name][-arch.size, arch.size] == arch
|
|
113
|
+
nvr += arch
|
|
114
|
+
else
|
|
115
|
+
nvr += ".#{get(:arch)}"
|
|
116
|
+
end
|
|
117
|
+
rpm "-e", nvr
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
def update
|
|
121
|
+
self.install
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
def self.nevra_to_hash(line)
|
|
125
|
+
line.chomp!
|
|
126
|
+
hash = {}
|
|
127
|
+
NEVRA_FIELDS.zip(line.split) { |f, v| hash[f] = v }
|
|
128
|
+
hash[:provider] = self.name
|
|
129
|
+
hash[:ensure] = "#{hash[:version]}-#{hash[:release]}"
|
|
130
|
+
hash
|
|
131
|
+
end
|
|
132
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
Puppet::Type.type(:package).provide :rug, :parent => :rpm do
|
|
2
|
+
desc "Support for suse `rug` package manager."
|
|
3
|
+
|
|
4
|
+
has_feature :versionable
|
|
5
|
+
|
|
6
|
+
commands :rug => "/usr/bin/rug"
|
|
7
|
+
commands :rpm => "rpm"
|
|
8
|
+
defaultfor :operatingsystem => [:suse, :sles]
|
|
9
|
+
confine :operatingsystem => [:suse, :sles]
|
|
10
|
+
|
|
11
|
+
# Install a package using 'rug'.
|
|
12
|
+
def install
|
|
13
|
+
should = @resource.should(:ensure)
|
|
14
|
+
self.debug "Ensuring => #{should}"
|
|
15
|
+
wanted = @resource[:name]
|
|
16
|
+
|
|
17
|
+
# XXX: We don't actually deal with epochs here.
|
|
18
|
+
case should
|
|
19
|
+
when true, false, Symbol
|
|
20
|
+
# pass
|
|
21
|
+
else
|
|
22
|
+
# Add the package version
|
|
23
|
+
wanted += "-#{should}"
|
|
24
|
+
end
|
|
25
|
+
output = rug "--quiet", :install, "-y", wanted
|
|
26
|
+
|
|
27
|
+
unless self.query
|
|
28
|
+
raise Puppet::ExecutionFailure.new(
|
|
29
|
+
"Could not find package #{self.name}"
|
|
30
|
+
)
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# What's the latest package version available?
|
|
35
|
+
def latest
|
|
36
|
+
#rug can only get a list of *all* available packages?
|
|
37
|
+
output = rug "list-updates"
|
|
38
|
+
|
|
39
|
+
if output =~ /#{Regexp.escape @resource[:name]}\s*\|\s*([^\s\|]+)/
|
|
40
|
+
return $1
|
|
41
|
+
else
|
|
42
|
+
# rug didn't find updates, pretend the current
|
|
43
|
+
# version is the latest
|
|
44
|
+
return @property_hash[:ensure]
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def update
|
|
49
|
+
# rug install can be used for update, too
|
|
50
|
+
self.install
|
|
51
|
+
end
|
|
52
|
+
end
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# Sun packaging.
|
|
2
|
+
|
|
3
|
+
require 'puppet/provider/package'
|
|
4
|
+
|
|
5
|
+
Puppet::Type.type(:package).provide :sun, :parent => Puppet::Provider::Package do
|
|
6
|
+
desc "Sun's packaging system. Requires that you specify the source for
|
|
7
|
+
the packages you're managing."
|
|
8
|
+
commands :pkginfo => "/usr/bin/pkginfo",
|
|
9
|
+
:pkgadd => "/usr/sbin/pkgadd",
|
|
10
|
+
:pkgrm => "/usr/sbin/pkgrm"
|
|
11
|
+
|
|
12
|
+
confine :operatingsystem => :solaris
|
|
13
|
+
|
|
14
|
+
defaultfor :operatingsystem => :solaris
|
|
15
|
+
|
|
16
|
+
def self.instances
|
|
17
|
+
packages = []
|
|
18
|
+
hash = {}
|
|
19
|
+
names = {
|
|
20
|
+
"PKGINST" => :name,
|
|
21
|
+
"NAME" => nil,
|
|
22
|
+
"CATEGORY" => :category,
|
|
23
|
+
"ARCH" => :platform,
|
|
24
|
+
"VERSION" => :ensure,
|
|
25
|
+
"BASEDIR" => :root,
|
|
26
|
+
"HOTLINE" => nil,
|
|
27
|
+
"EMAIL" => nil,
|
|
28
|
+
"VENDOR" => :vendor,
|
|
29
|
+
"DESC" => :description,
|
|
30
|
+
"PSTAMP" => nil,
|
|
31
|
+
"INSTDATE" => nil,
|
|
32
|
+
"STATUS" => nil,
|
|
33
|
+
"FILES" => nil
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
cmd = "#{command(:pkginfo)} -l"
|
|
37
|
+
|
|
38
|
+
# list out all of the packages
|
|
39
|
+
execpipe(cmd) { |process|
|
|
40
|
+
# we're using the long listing, so each line is a separate
|
|
41
|
+
# piece of information
|
|
42
|
+
process.each_line { |line|
|
|
43
|
+
case line
|
|
44
|
+
when /^$/
|
|
45
|
+
hash[:provider] = :sun
|
|
46
|
+
|
|
47
|
+
packages << new(hash)
|
|
48
|
+
hash = {}
|
|
49
|
+
when /\s*(\w+):\s+(.+)/
|
|
50
|
+
name = $1
|
|
51
|
+
value = $2
|
|
52
|
+
if names.include?(name)
|
|
53
|
+
hash[names[name]] = value unless names[name].nil?
|
|
54
|
+
end
|
|
55
|
+
when /\s+\d+.+/
|
|
56
|
+
# nothing; we're ignoring the FILES info
|
|
57
|
+
end
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
packages
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# Get info on a package, optionally specifying a device.
|
|
64
|
+
def info2hash(device = nil)
|
|
65
|
+
names = {
|
|
66
|
+
"PKGINST" => :name,
|
|
67
|
+
"NAME" => nil,
|
|
68
|
+
"CATEGORY" => :category,
|
|
69
|
+
"ARCH" => :platform,
|
|
70
|
+
"VERSION" => :ensure,
|
|
71
|
+
"BASEDIR" => :root,
|
|
72
|
+
"HOTLINE" => nil,
|
|
73
|
+
"EMAIL" => nil,
|
|
74
|
+
"VSTOCK" => nil,
|
|
75
|
+
"VENDOR" => :vendor,
|
|
76
|
+
"DESC" => :description,
|
|
77
|
+
"PSTAMP" => nil,
|
|
78
|
+
"INSTDATE" => nil,
|
|
79
|
+
"STATUS" => nil,
|
|
80
|
+
"FILES" => nil
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
hash = {}
|
|
84
|
+
cmd = "#{command(:pkginfo)} -l"
|
|
85
|
+
cmd += " -d #{device}" if device
|
|
86
|
+
cmd += " #{@resource[:name]}"
|
|
87
|
+
|
|
88
|
+
begin
|
|
89
|
+
# list out all of the packages
|
|
90
|
+
execpipe(cmd) { |process|
|
|
91
|
+
# we're using the long listing, so each line is a separate
|
|
92
|
+
# piece of information
|
|
93
|
+
process.readlines.each { |line|
|
|
94
|
+
case line
|
|
95
|
+
when /^$/ # ignore
|
|
96
|
+
when /\s*([A-Z]+):\s+(.+)/
|
|
97
|
+
name = $1
|
|
98
|
+
value = $2
|
|
99
|
+
if names.include?(name)
|
|
100
|
+
hash[names[name]] = value unless names[name].nil?
|
|
101
|
+
end
|
|
102
|
+
when /\s+\d+.+/
|
|
103
|
+
# nothing; we're ignoring the FILES info
|
|
104
|
+
end
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return hash
|
|
108
|
+
rescue Puppet::ExecutionFailure => detail
|
|
109
|
+
return {:ensure => :absent} if detail.message =~ /information for "#{Regexp.escape(@resource[:name])}" was not found/
|
|
110
|
+
puts detail.backtrace if Puppet[:trace]
|
|
111
|
+
raise Puppet::Error, "Unable to get information about package #{@resource[:name]} because of: #{detail}"
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
def install
|
|
116
|
+
raise Puppet::Error, "Sun packages must specify a package source" unless @resource[:source]
|
|
117
|
+
cmd = []
|
|
118
|
+
|
|
119
|
+
cmd << "-a" << @resource[:adminfile] if @resource[:adminfile]
|
|
120
|
+
|
|
121
|
+
cmd << "-r" << @resource[:responsefile] if @resource[:responsefile]
|
|
122
|
+
|
|
123
|
+
cmd << "-d" << @resource[:source]
|
|
124
|
+
cmd << "-n" << @resource[:name]
|
|
125
|
+
|
|
126
|
+
pkgadd cmd
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# Retrieve the version from the current package file.
|
|
130
|
+
def latest
|
|
131
|
+
hash = info2hash(@resource[:source])
|
|
132
|
+
hash[:ensure]
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
def query
|
|
136
|
+
info2hash()
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
def uninstall
|
|
140
|
+
command = ["-n"]
|
|
141
|
+
|
|
142
|
+
command << "-a" << @resource[:adminfile] if @resource[:adminfile]
|
|
143
|
+
|
|
144
|
+
command << @resource[:name]
|
|
145
|
+
pkgrm command
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
# Remove the old package, and install the new one. This will probably
|
|
149
|
+
# often fail.
|
|
150
|
+
def update
|
|
151
|
+
self.uninstall if (@property_hash[:ensure] || info2hash()[:ensure]) != :absent
|
|
152
|
+
self.install
|
|
153
|
+
end
|
|
154
|
+
end
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# At this point, it's an exact copy of the Blastwave stuff.
|
|
2
|
+
Puppet::Type.type(:package).provide :sunfreeware, :parent => :blastwave, :source => :sun do
|
|
3
|
+
desc "Package management using sunfreeware.com's `pkg-get` command on Solaris.
|
|
4
|
+
At this point, support is exactly the same as `blastwave` support and
|
|
5
|
+
has not actually been tested."
|
|
6
|
+
commands :pkgget => "pkg-get"
|
|
7
|
+
|
|
8
|
+
confine :operatingsystem => :solaris
|
|
9
|
+
end
|