puppet 0.18.4 → 0.22.4
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/CHANGELOG +288 -0
- data/README +2 -2
- data/Rakefile +78 -5
- data/bin/puppet +28 -36
- data/bin/puppetca +81 -38
- data/bin/puppetd +65 -62
- data/bin/puppetdoc +409 -140
- data/bin/puppetmasterd +59 -47
- data/bin/puppetrun +38 -23
- data/conf/freebsd/puppetd +26 -0
- data/conf/freebsd/puppetmasterd +26 -0
- data/conf/gentoo/conf.d/puppet +5 -0
- data/conf/gentoo/conf.d/puppetmaster +12 -0
- data/conf/gentoo/init.d/puppet +38 -0
- data/conf/gentoo/init.d/puppetmaster +50 -0
- data/conf/gentoo/puppet/fileserver.conf +12 -0
- data/conf/gentoo/puppet/puppetca.conf +29 -0
- data/conf/gentoo/puppet/puppetd.conf +29 -0
- data/conf/gentoo/puppet/puppetmasterd.conf +29 -0
- data/conf/redhat/client.init +10 -5
- data/conf/redhat/client.sysconfig +1 -1
- data/conf/redhat/fileserver.conf +2 -2
- data/conf/redhat/logrotate +1 -1
- data/conf/redhat/no-lockdir.patch +13 -0
- data/conf/redhat/puppet.spec +65 -8
- data/conf/redhat/puppetd.conf +0 -4
- data/conf/redhat/server.init +3 -6
- data/conf/solaris/pkginfo +1 -1
- data/conf/solaris/smf/svc-puppetd +2 -2
- data/conf/suse/client.init +142 -0
- data/conf/suse/puppet.spec +221 -0
- data/conf/suse/server.init +162 -0
- data/examples/code/mac_automount.pp +16 -0
- data/examples/root/bin/sleeper +3 -5
- data/examples/root/etc/init.d/sleeper +8 -2
- data/examples/root/etc/puppet/fileserver.conf +12 -2
- data/examples/root/etc/puppet/namespaceauth.conf +20 -0
- data/examples/root/etc/puppet/puppetd.conf +4 -0
- data/examples/root/etc/puppet/puppetmasterd.conf +6 -9
- data/examples/root/etc/puppet/tagmail.conf +1 -0
- data/ext/emacs/puppet-mode.el +46 -1
- data/ext/logcheck/puppet +15 -0
- data/ext/module_puppet +15 -23
- data/ext/vim/puppet.vim +4 -2
- data/install.rb +2 -1
- data/lib/puppet.rb +76 -207
- data/lib/puppet/configuration.rb +331 -0
- data/lib/puppet/daemon.rb +63 -246
- data/lib/puppet/dsl.rb +371 -0
- data/lib/puppet/element.rb +8 -26
- data/lib/puppet/error.rb +54 -0
- data/lib/puppet/event.rb +8 -243
- data/lib/puppet/{base64.rb → external/base64.rb} +0 -0
- data/lib/puppet/external/event-loop.rb +1 -0
- data/lib/puppet/{event-loop → external/event-loop}/better-definers.rb +0 -0
- data/lib/puppet/{event-loop → external/event-loop}/event-loop.rb +2 -2
- data/lib/puppet/{event-loop → external/event-loop}/signal-system.rb +1 -1
- data/lib/puppet/external/gratr.rb +33 -0
- data/lib/puppet/external/gratr/adjacency_graph.rb +257 -0
- data/lib/puppet/external/gratr/base.rb +34 -0
- data/lib/puppet/external/gratr/biconnected.rb +116 -0
- data/lib/puppet/external/gratr/chinese_postman.rb +123 -0
- data/lib/puppet/external/gratr/common.rb +73 -0
- data/lib/puppet/external/gratr/comparability.rb +92 -0
- data/lib/puppet/external/gratr/digraph.rb +116 -0
- data/lib/puppet/external/gratr/digraph_distance.rb +185 -0
- data/lib/puppet/external/gratr/dot.rb +90 -0
- data/lib/puppet/external/gratr/edge.rb +145 -0
- data/lib/puppet/external/gratr/graph.rb +303 -0
- data/lib/puppet/external/gratr/graph_api.rb +83 -0
- data/lib/puppet/external/gratr/import.rb +44 -0
- data/lib/puppet/external/gratr/labels.rb +90 -0
- data/lib/puppet/external/gratr/maximum_flow.rb +64 -0
- data/lib/puppet/external/gratr/rdot.rb +327 -0
- data/lib/puppet/external/gratr/search.rb +409 -0
- data/lib/puppet/external/gratr/strong_components.rb +127 -0
- data/lib/puppet/external/gratr/undirected_graph.rb +153 -0
- data/lib/puppet/{lock.rb → external/lock.rb} +1 -1
- data/lib/puppet/feature/base.rb +20 -0
- data/lib/puppet/feature/rails.rb +52 -0
- data/lib/puppet/metatype/attributes.rb +719 -0
- data/lib/puppet/metatype/closure.rb +111 -0
- data/lib/puppet/metatype/container.rb +94 -0
- data/lib/puppet/metatype/evaluation.rb +118 -0
- data/lib/puppet/metatype/instances.rb +261 -0
- data/lib/puppet/metatype/manager.rb +169 -0
- data/lib/puppet/metatype/metaparams.rb +409 -0
- data/lib/puppet/metatype/providers.rb +260 -0
- data/lib/puppet/metatype/relationships.rb +116 -0
- data/lib/puppet/metatype/schedules.rb +39 -0
- data/lib/puppet/metatype/tags.rb +39 -0
- data/lib/puppet/modules.rb +113 -0
- data/lib/puppet/network/authconfig.rb +168 -0
- data/lib/puppet/network/authorization.rb +84 -0
- data/lib/puppet/network/authstore.rb +293 -0
- data/lib/puppet/network/client.rb +187 -0
- data/lib/puppet/network/client/ca.rb +56 -0
- data/lib/puppet/network/client/dipper.rb +81 -0
- data/lib/puppet/network/client/file.rb +7 -0
- data/lib/puppet/network/client/logger.rb +6 -0
- data/lib/puppet/network/client/master.rb +644 -0
- data/lib/puppet/{client → network/client}/proxy.rb +3 -3
- data/lib/puppet/{client/reporter.rb → network/client/report.rb} +4 -7
- data/lib/puppet/{client/pelement.rb → network/client/resource.rb} +6 -19
- data/lib/puppet/network/client/runner.rb +13 -0
- data/lib/puppet/network/client/status.rb +5 -0
- data/lib/puppet/network/client_request.rb +32 -0
- data/lib/puppet/network/handler.rb +33 -0
- data/lib/puppet/{server → network/handler}/ca.rb +5 -6
- data/lib/puppet/network/handler/filebucket.rb +180 -0
- data/lib/puppet/{server → network/handler}/fileserver.rb +277 -219
- data/lib/puppet/{server → network/handler}/logger.rb +3 -5
- data/lib/puppet/{server → network/handler}/master.rb +42 -8
- data/lib/puppet/network/handler/report.rb +158 -0
- data/lib/puppet/network/handler/resource.rb +190 -0
- data/lib/puppet/{server → network/handler}/runner.rb +17 -18
- data/lib/puppet/network/handler/status.rb +13 -0
- data/lib/puppet/network/rights.rb +74 -0
- data/lib/puppet/network/server.rb +5 -0
- data/lib/puppet/network/server/mongrel.rb +138 -0
- data/lib/puppet/network/server/webrick.rb +153 -0
- data/lib/puppet/network/xmlrpc/client.rb +129 -0
- data/lib/puppet/network/xmlrpc/processor.rb +91 -0
- data/lib/puppet/network/xmlrpc/server.rb +20 -0
- data/lib/puppet/network/xmlrpc/webrick_servlet.rb +121 -0
- data/lib/puppet/parameter.rb +390 -346
- data/lib/puppet/parser/ast.rb +116 -147
- data/lib/puppet/parser/ast/astarray.rb +17 -33
- data/lib/puppet/parser/ast/branch.rb +2 -0
- data/lib/puppet/parser/ast/caseopt.rb +7 -12
- data/lib/puppet/parser/ast/casestatement.rb +23 -32
- data/lib/puppet/parser/ast/collection.rb +19 -80
- data/lib/puppet/parser/ast/collexpr.rb +81 -0
- data/lib/puppet/parser/ast/component.rb +160 -89
- data/lib/puppet/parser/ast/else.rb +30 -0
- data/lib/puppet/parser/ast/function.rb +9 -2
- data/lib/puppet/parser/ast/hostclass.rb +47 -131
- data/lib/puppet/parser/ast/ifstatement.rb +43 -0
- data/lib/puppet/parser/ast/leaf.rb +10 -21
- data/lib/puppet/parser/ast/node.rb +32 -79
- data/lib/puppet/parser/ast/resourcedef.rb +222 -0
- data/lib/puppet/parser/ast/{typedefaults.rb → resourcedefaults.rb} +10 -16
- data/lib/puppet/parser/ast/resourceoverride.rb +62 -0
- data/lib/puppet/parser/ast/{objectparam.rb → resourceparam.rb} +12 -6
- data/lib/puppet/parser/ast/resourceref.rb +44 -0
- data/lib/puppet/parser/ast/selector.rb +16 -8
- data/lib/puppet/parser/ast/tag.rb +3 -1
- data/lib/puppet/parser/ast/vardef.rb +8 -12
- data/lib/puppet/parser/collector.rb +181 -0
- data/lib/puppet/parser/functions.rb +191 -36
- data/lib/puppet/parser/interpreter.rb +802 -380
- data/lib/puppet/parser/lexer.rb +86 -19
- data/lib/puppet/parser/parser.rb +1123 -960
- data/lib/puppet/parser/resource.rb +353 -0
- data/lib/puppet/parser/resource/param.rb +57 -0
- data/lib/puppet/parser/resource/reference.rb +71 -0
- data/lib/puppet/parser/scope.rb +573 -1000
- data/lib/puppet/parser/templatewrapper.rb +54 -0
- data/lib/puppet/pgraph.rb +208 -0
- data/lib/puppet/propertychange.rb +143 -0
- data/lib/puppet/provider.rb +302 -0
- data/lib/puppet/provider/cron/crontab.rb +187 -0
- data/lib/puppet/provider/group/groupadd.rb +29 -0
- data/lib/puppet/provider/group/netinfo.rb +12 -0
- data/lib/puppet/provider/group/pw.rb +31 -0
- data/lib/puppet/provider/host/netinfo.rb +18 -0
- data/lib/puppet/provider/host/parsed.rb +73 -0
- data/lib/puppet/provider/mount.rb +57 -0
- data/lib/puppet/provider/mount/netinfo.rb +38 -0
- data/lib/puppet/provider/mount/parsed.rb +37 -0
- data/lib/puppet/provider/nameservice.rb +344 -0
- data/lib/puppet/provider/nameservice/netinfo.rb +210 -0
- data/lib/puppet/provider/nameservice/objectadd.rb +45 -0
- data/lib/puppet/provider/nameservice/pw.rb +22 -0
- data/lib/puppet/provider/package/apple.rb +53 -0
- data/lib/puppet/provider/package/apt.rb +119 -0
- data/lib/puppet/provider/package/aptitude.rb +30 -0
- data/lib/puppet/provider/package/aptrpm.rb +79 -0
- data/lib/puppet/provider/package/blastwave.rb +114 -0
- data/lib/puppet/provider/package/darwinport.rb +88 -0
- data/lib/puppet/provider/package/dpkg.rb +109 -0
- data/lib/puppet/provider/package/freebsd.rb +43 -0
- data/lib/puppet/provider/package/gem.rb +104 -0
- data/lib/puppet/provider/package/openbsd.rb +93 -0
- data/lib/puppet/provider/package/pkgdmg.rb +119 -0
- data/lib/puppet/provider/package/portage.rb +112 -0
- data/lib/puppet/provider/package/ports.rb +94 -0
- data/lib/puppet/provider/package/rpm.rb +125 -0
- data/lib/puppet/provider/package/rug.rb +53 -0
- data/lib/puppet/provider/package/sun.rb +168 -0
- data/lib/puppet/provider/package/sunfreeware.rb +9 -0
- data/lib/puppet/provider/package/up2date.rb +45 -0
- data/lib/puppet/provider/package/yum.rb +54 -0
- data/lib/puppet/provider/parsedfile.rb +342 -0
- data/lib/puppet/provider/port/parsed.rb +174 -0
- data/lib/puppet/provider/service/base.rb +136 -0
- data/lib/puppet/provider/service/debian.rb +32 -0
- data/lib/puppet/provider/service/gentoo.rb +49 -0
- data/lib/puppet/{type → provider}/service/init.rb +42 -40
- data/lib/puppet/provider/service/redhat.rb +59 -0
- data/lib/puppet/{type → provider}/service/smf.rb +24 -13
- data/lib/puppet/provider/sshkey/parsed.rb +36 -0
- data/lib/puppet/provider/user/netinfo.rb +106 -0
- data/lib/puppet/provider/user/pw.rb +41 -0
- data/lib/puppet/provider/user/useradd.rb +67 -0
- data/lib/puppet/provider/zone/solaris.rb +208 -0
- data/lib/puppet/rails.rb +102 -66
- data/lib/puppet/rails/database/001_add_indexes.rb +38 -0
- data/lib/puppet/rails/database/schema.rb +89 -0
- data/lib/puppet/rails/external/tagging/acts_as_taggable.rb +62 -0
- data/lib/puppet/rails/external/tagging/init.rb +5 -0
- data/lib/puppet/rails/external/tagging/tag.rb +50 -0
- data/lib/puppet/rails/external/tagging/tagging.rb +12 -0
- data/lib/puppet/rails/fact_name.rb +7 -0
- data/lib/puppet/rails/fact_value.rb +5 -0
- data/lib/puppet/rails/host.rb +95 -46
- data/lib/puppet/rails/param_name.rb +28 -0
- data/lib/puppet/rails/param_value.rb +5 -0
- data/lib/puppet/rails/puppet_class.rb +9 -0
- data/lib/puppet/rails/resource.rb +95 -0
- data/lib/puppet/rails/source_file.rb +5 -0
- data/lib/puppet/relationship.rb +63 -0
- data/lib/puppet/reports/log.rb +14 -0
- data/lib/puppet/reports/rrdgraph.rb +114 -10
- data/lib/puppet/reports/store.rb +64 -0
- data/lib/puppet/reports/tagmail.rb +144 -71
- data/lib/puppet/sslcertificates.rb +38 -5
- data/lib/puppet/sslcertificates/ca.rb +142 -37
- data/lib/puppet/sslcertificates/certificate.rb +3 -3
- data/lib/puppet/sslcertificates/inventory.rb +53 -0
- data/lib/puppet/sslcertificates/support.rb +128 -0
- data/lib/puppet/transaction.rb +568 -189
- data/lib/puppet/transaction/report.rb +14 -3
- data/lib/puppet/transportable.rb +18 -10
- data/lib/puppet/type.rb +279 -2299
- data/lib/puppet/type/component.rb +63 -63
- data/lib/puppet/type/cron.rb +294 -710
- data/lib/puppet/type/exec.rb +185 -129
- data/lib/puppet/type/group.rb +38 -89
- data/lib/puppet/type/host.rb +110 -0
- data/lib/puppet/type/mount.rb +189 -0
- data/lib/puppet/type/notify.rb +47 -0
- data/lib/puppet/type/package.rb +129 -257
- data/lib/puppet/type/parsedtype.rb +172 -297
- data/lib/puppet/type/pfile.rb +540 -319
- data/lib/puppet/type/pfile/checksum.rb +103 -76
- data/lib/puppet/type/pfile/content.rb +16 -10
- data/lib/puppet/type/pfile/ensure.rb +52 -34
- data/lib/puppet/type/pfile/group.rb +25 -18
- data/lib/puppet/type/pfile/mode.rb +7 -4
- data/lib/puppet/type/pfile/{uid.rb → owner.rb} +21 -17
- data/lib/puppet/type/pfile/source.rb +119 -124
- data/lib/puppet/type/pfile/target.rb +29 -45
- data/lib/puppet/type/pfile/type.rb +2 -2
- data/lib/puppet/type/pfilebucket.rb +18 -14
- data/lib/puppet/type/port.rb +121 -0
- data/lib/puppet/type/property.rb +530 -0
- data/lib/puppet/type/resources.rb +150 -0
- data/lib/puppet/type/schedule.rb +38 -22
- data/lib/puppet/type/service.rb +70 -326
- data/lib/puppet/type/sshkey.rb +76 -0
- data/lib/puppet/type/tidy.rb +197 -97
- data/lib/puppet/type/user.rb +107 -183
- data/lib/puppet/type/yumrepo.rb +53 -34
- data/lib/puppet/type/zone.rb +55 -208
- data/lib/puppet/util.rb +239 -201
- data/lib/puppet/util/autoload.rb +107 -0
- data/lib/puppet/util/classgen.rb +208 -0
- data/lib/puppet/{config.rb → util/config.rb} +102 -54
- data/lib/puppet/util/docs.rb +104 -0
- data/lib/puppet/util/errors.rb +55 -0
- data/lib/puppet/util/execution.rb +22 -0
- data/lib/puppet/util/feature.rb +76 -0
- data/lib/puppet/util/fileparsing.rb +380 -0
- data/lib/puppet/util/filetype.rb +300 -0
- data/lib/puppet/util/graph.rb +39 -0
- data/lib/puppet/util/inifile.rb +209 -0
- data/lib/puppet/util/loadedfile.rb +71 -0
- data/lib/puppet/util/log.rb +549 -0
- data/lib/puppet/util/logging.rb +20 -0
- data/lib/puppet/util/metaid.rb +22 -0
- data/lib/puppet/util/methodhelper.rb +37 -0
- data/lib/puppet/util/metric.rb +160 -0
- data/lib/puppet/util/package.rb +31 -0
- data/lib/puppet/util/pidlock.rb +68 -0
- data/lib/puppet/util/plist.rb +24 -0
- data/lib/puppet/util/plist/generator.rb +226 -0
- data/lib/puppet/util/plist/parser.rb +227 -0
- data/lib/puppet/util/posix.rb +87 -0
- data/lib/puppet/util/provider_features.rb +170 -0
- data/lib/puppet/util/rails/collection_merger.rb +42 -0
- data/lib/puppet/util/storage.rb +103 -0
- data/lib/puppet/util/subclass_loader.rb +83 -0
- data/lib/puppet/util/suidmanager.rb +86 -0
- data/lib/puppet/util/variables.rb +39 -0
- data/lib/puppet/util/warnings.rb +15 -0
- data/test/Rakefile +97 -0
- data/test/certmgr/ca.rb +81 -0
- data/test/certmgr/certmgr.rb +77 -50
- data/test/certmgr/inventory.rb +79 -0
- data/test/certmgr/support.rb +81 -0
- data/test/executables/filebucket.rb +49 -0
- data/test/executables/puppetbin.rb +28 -12
- data/test/executables/puppetca.rb +75 -54
- data/test/executables/puppetd.rb +10 -13
- data/test/executables/puppetmasterd.rb +12 -17
- data/test/executables/puppetmodule.rb +18 -17
- data/test/language/ast.rb +242 -798
- data/test/language/ast/casestatement.rb +104 -0
- data/test/language/ast/component.rb +133 -0
- data/test/language/ast/hostclass.rb +162 -0
- data/test/language/ast/selector.rb +62 -0
- data/test/language/ast/variable.rb +31 -0
- data/test/language/collector.rb +369 -0
- data/test/language/functions.rb +305 -18
- data/test/language/interpreter.rb +894 -125
- data/test/language/lexer.rb +98 -12
- data/test/language/node.rb +37 -53
- data/test/language/parser.rb +455 -148
- data/test/language/resource.rb +535 -0
- data/test/language/scope.rb +451 -561
- data/test/language/snippets.rb +101 -111
- data/test/language/transportable.rb +6 -8
- data/test/lib/mocha.rb +19 -0
- data/test/lib/mocha/any_instance_method.rb +35 -0
- data/test/lib/mocha/auto_verify.rb +113 -0
- data/test/lib/mocha/central.rb +35 -0
- data/test/lib/mocha/class_method.rb +62 -0
- data/test/lib/mocha/expectation.rb +295 -0
- data/test/lib/mocha/expectation_error.rb +6 -0
- data/test/lib/mocha/infinite_range.rb +27 -0
- data/test/lib/mocha/inspect.rb +37 -0
- data/test/lib/mocha/instance_method.rb +8 -0
- data/test/lib/mocha/metaclass.rb +7 -0
- data/test/lib/mocha/mock.rb +20 -0
- data/test/lib/mocha/mock_methods.rb +122 -0
- data/test/lib/mocha/object.rb +100 -0
- data/test/lib/mocha/pretty_parameters.rb +28 -0
- data/test/lib/mocha/setup_and_teardown.rb +23 -0
- data/test/lib/mocha/standalone.rb +30 -0
- data/test/lib/mocha/test_case_adapter.rb +49 -0
- data/test/lib/mocha_standalone.rb +2 -0
- data/test/lib/puppettest.rb +294 -0
- data/test/lib/puppettest/certificates.rb +61 -0
- data/test/lib/puppettest/exetest.rb +123 -0
- data/test/lib/puppettest/fakes.rb +194 -0
- data/test/lib/puppettest/fileparsing.rb +33 -0
- data/test/lib/puppettest/filetesting.rb +231 -0
- data/test/lib/puppettest/graph.rb +41 -0
- data/test/lib/puppettest/parsertesting.rb +392 -0
- data/test/lib/puppettest/railstesting.rb +56 -0
- data/test/lib/puppettest/reporttesting.rb +19 -0
- data/test/lib/puppettest/resourcetesting.rb +73 -0
- data/test/lib/puppettest/servertest.rb +72 -0
- data/test/lib/puppettest/support.rb +8 -0
- data/test/lib/puppettest/support/assertions.rb +101 -0
- data/test/lib/puppettest/support/helpers.rb +23 -0
- data/test/lib/puppettest/support/resources.rb +37 -0
- data/test/lib/puppettest/support/utils.rb +160 -0
- data/test/lib/puppettest/testcase.rb +48 -0
- data/test/lib/rake/puppet_test_loader.rb +17 -0
- data/test/lib/rake/puppet_testtask.rb +17 -0
- data/test/lib/spec.rb +8 -0
- data/test/lib/spec/callback.rb +11 -0
- data/test/lib/spec/callback/callback_container.rb +60 -0
- data/test/lib/spec/callback/extensions/module.rb +24 -0
- data/test/lib/spec/callback/extensions/object.rb +37 -0
- data/test/lib/spec/deprecated.rb +3 -0
- data/test/lib/spec/expectations.rb +59 -0
- data/test/lib/spec/expectations/differs/default.rb +62 -0
- data/test/lib/spec/expectations/errors.rb +6 -0
- data/test/lib/spec/expectations/extensions.rb +3 -0
- data/test/lib/spec/expectations/extensions/object.rb +109 -0
- data/test/lib/spec/expectations/extensions/proc.rb +57 -0
- data/test/lib/spec/expectations/extensions/string_and_symbol.rb +17 -0
- data/test/lib/spec/expectations/handler.rb +47 -0
- data/test/lib/spec/expectations/should.rb +5 -0
- data/test/lib/spec/expectations/should/base.rb +64 -0
- data/test/lib/spec/expectations/should/change.rb +69 -0
- data/test/lib/spec/expectations/should/have.rb +128 -0
- data/test/lib/spec/expectations/should/not.rb +74 -0
- data/test/lib/spec/expectations/should/should.rb +81 -0
- data/test/lib/spec/expectations/sugar.rb +47 -0
- data/test/lib/spec/matchers.rb +160 -0
- data/test/lib/spec/matchers/be.rb +161 -0
- data/test/lib/spec/matchers/be_close.rb +37 -0
- data/test/lib/spec/matchers/change.rb +120 -0
- data/test/lib/spec/matchers/eql.rb +43 -0
- data/test/lib/spec/matchers/equal.rb +43 -0
- data/test/lib/spec/matchers/has.rb +44 -0
- data/test/lib/spec/matchers/have.rb +140 -0
- data/test/lib/spec/matchers/include.rb +50 -0
- data/test/lib/spec/matchers/match.rb +41 -0
- data/test/lib/spec/matchers/raise_error.rb +100 -0
- data/test/lib/spec/matchers/respond_to.rb +35 -0
- data/test/lib/spec/matchers/satisfy.rb +47 -0
- data/test/lib/spec/matchers/throw_symbol.rb +75 -0
- data/test/lib/spec/mocks.rb +232 -0
- data/test/lib/spec/mocks/argument_expectation.rb +132 -0
- data/test/lib/spec/mocks/error_generator.rb +85 -0
- data/test/lib/spec/mocks/errors.rb +10 -0
- data/test/lib/spec/mocks/extensions/object.rb +3 -0
- data/test/lib/spec/mocks/message_expectation.rb +231 -0
- data/test/lib/spec/mocks/methods.rb +40 -0
- data/test/lib/spec/mocks/mock.rb +26 -0
- data/test/lib/spec/mocks/mock_handler.rb +166 -0
- data/test/lib/spec/mocks/order_group.rb +29 -0
- data/test/lib/spec/rake/spectask.rb +173 -0
- data/test/lib/spec/rake/verify_rcov.rb +47 -0
- data/test/lib/spec/runner.rb +132 -0
- data/test/lib/spec/runner/backtrace_tweaker.rb +55 -0
- data/test/lib/spec/runner/command_line.rb +34 -0
- data/test/lib/spec/runner/context.rb +154 -0
- data/test/lib/spec/runner/context_eval.rb +142 -0
- data/test/lib/spec/runner/context_runner.rb +55 -0
- data/test/lib/spec/runner/drb_command_line.rb +21 -0
- data/test/lib/spec/runner/execution_context.rb +17 -0
- data/test/lib/spec/runner/extensions/kernel.rb +17 -0
- data/test/lib/spec/runner/extensions/object.rb +32 -0
- data/test/lib/spec/runner/formatter.rb +5 -0
- data/test/lib/spec/runner/formatter/base_text_formatter.rb +118 -0
- data/test/lib/spec/runner/formatter/html_formatter.rb +219 -0
- data/test/lib/spec/runner/formatter/progress_bar_formatter.rb +27 -0
- data/test/lib/spec/runner/formatter/rdoc_formatter.rb +22 -0
- data/test/lib/spec/runner/formatter/specdoc_formatter.rb +23 -0
- data/test/lib/spec/runner/heckle_runner.rb +71 -0
- data/test/lib/spec/runner/heckle_runner_win.rb +10 -0
- data/test/lib/spec/runner/option_parser.rb +224 -0
- data/test/lib/spec/runner/reporter.rb +105 -0
- data/test/lib/spec/runner/spec_matcher.rb +25 -0
- data/test/lib/spec/runner/spec_parser.rb +41 -0
- data/test/lib/spec/runner/spec_should_raise_handler.rb +74 -0
- data/test/lib/spec/runner/specification.rb +114 -0
- data/test/lib/spec/translator.rb +87 -0
- data/test/lib/spec/version.rb +30 -0
- data/test/lib/stubba.rb +2 -0
- data/test/network/authconfig.rb +72 -0
- data/test/network/authorization.rb +138 -0
- data/test/network/authstore.rb +450 -0
- data/test/network/client/ca.rb +38 -0
- data/test/{client → network/client}/client.rb +107 -24
- data/test/network/client/dipper.rb +35 -0
- data/test/network/client/master.rb +627 -0
- data/test/{client/pelement.rb → network/client/resource.rb} +13 -29
- data/test/network/client_request.rb +39 -0
- data/test/network/daemon.rb +71 -0
- data/test/{server → network/handler}/bucket.rb +103 -27
- data/test/{server → network/handler}/ca.rb +14 -19
- data/test/{server → network/handler}/fileserver.rb +443 -68
- data/test/network/handler/handler.rb +64 -0
- data/test/{server → network/handler}/logger.rb +26 -26
- data/test/network/handler/master.rb +352 -0
- data/test/network/handler/report.rb +185 -0
- data/test/{server/pelement.rb → network/handler/resource.rb} +25 -38
- data/test/{server → network/handler}/runner.rb +17 -16
- data/test/network/rights.rb +38 -0
- data/test/network/server/webrick.rb +140 -0
- data/test/network/xmlrpc/client.rb +68 -0
- data/test/network/xmlrpc/processor.rb +80 -0
- data/test/network/xmlrpc/server.rb +28 -0
- data/test/network/xmlrpc/webrick_servlet.rb +26 -0
- data/test/other/dsl.rb +218 -0
- data/test/other/events.rb +22 -15
- data/test/other/overrides.rb +9 -14
- data/test/other/pgraph.rb +289 -0
- data/test/other/propertychange.rb +142 -0
- data/test/other/provider.rb +162 -0
- data/test/other/puppet.rb +63 -10
- data/test/other/relationship.rb +74 -0
- data/test/other/relationships.rb +199 -123
- data/test/other/report.rb +152 -23
- data/test/other/transactions.rb +824 -78
- data/test/puppet/conffiles.rb +16 -11
- data/test/puppet/defaults.rb +7 -10
- data/test/puppet/{error.rb → errortest.rb} +5 -8
- data/test/puppet/modules.rb +58 -0
- data/test/puppet/tc_suidmanager.rb +107 -0
- data/test/rails/host.rb +177 -0
- data/test/rails/rails.rb +27 -0
- data/test/rails/railsparameter.rb +62 -0
- data/test/rails/railsresource.rb +100 -0
- data/test/ral/manager/attributes.rb +296 -0
- data/test/ral/manager/manager.rb +55 -0
- data/test/ral/manager/provider.rb +54 -0
- data/test/ral/manager/type.rb +837 -0
- data/test/ral/providers/cron/crontab.rb +346 -0
- data/test/ral/providers/group.rb +252 -0
- data/test/ral/providers/host/netinfo.rb +58 -0
- data/test/ral/providers/host/parsed.rb +226 -0
- data/test/ral/providers/mount/netinfo.rb +80 -0
- data/test/ral/providers/mount/parsed.rb +223 -0
- data/test/ral/providers/nameservice.rb +33 -0
- data/test/ral/providers/package.rb +253 -0
- data/test/ral/providers/package/apt.rb +89 -0
- data/test/ral/providers/package/aptitude.rb +69 -0
- data/test/ral/providers/package/aptrpm.rb +89 -0
- data/test/ral/providers/package/dpkg.rb +64 -0
- data/test/ral/providers/parsedfile.rb +668 -0
- data/test/ral/providers/parsedport.rb +233 -0
- data/test/ral/providers/provider.rb +423 -0
- data/test/{types → ral/providers}/service.rb +20 -121
- data/test/ral/providers/service/base.rb +75 -0
- data/test/ral/providers/sshkey/parsed.rb +111 -0
- data/test/ral/providers/user.rb +567 -0
- data/test/ral/providers/user/useradd.rb +250 -0
- data/test/ral/types/basic.rb +90 -0
- data/test/ral/types/component.rb +113 -0
- data/test/ral/types/cron.rb +480 -0
- data/test/{types → ral/types}/exec.rb +278 -82
- data/test/ral/types/file.rb +1799 -0
- data/test/ral/types/file/target.rb +363 -0
- data/test/{types → ral/types}/filebucket.rb +15 -17
- data/test/{types → ral/types}/fileignoresource.rb +9 -15
- data/test/ral/types/filesources.rb +1046 -0
- data/test/ral/types/group.rb +169 -0
- data/test/ral/types/host.rb +155 -0
- data/test/ral/types/mount.rb +312 -0
- data/test/ral/types/package.rb +85 -0
- data/test/ral/types/parameter.rb +172 -0
- data/test/ral/types/port.rb +148 -0
- data/test/ral/types/property.rb +343 -0
- data/test/ral/types/resources.rb +221 -0
- data/test/{types → ral/types}/schedule.rb +34 -12
- data/test/ral/types/service.rb +37 -0
- data/test/{types → ral/types}/sshkey.rb +75 -65
- data/test/ral/types/tidy.rb +240 -0
- data/test/ral/types/user.rb +493 -0
- data/test/{types → ral/types}/yumrepo.rb +7 -11
- data/test/{types → ral/types}/zone.rb +45 -45
- data/test/tagging/tagging.rb +17 -26
- data/test/util/autoload.rb +130 -0
- data/test/util/classgen.rb +227 -0
- data/test/{other → util}/config.rb +373 -113
- data/test/util/execution.rb +34 -0
- data/test/util/features.rb +94 -0
- data/test/util/fileparsing.rb +677 -0
- data/test/{other → util}/filetype.rb +9 -12
- data/test/util/graph.rb +108 -0
- data/test/{other → util}/inifile.rb +24 -11
- data/test/util/loadedfile.rb +106 -0
- data/test/{other → util}/log.rb +96 -50
- data/test/{other → util}/metrics.rb +7 -17
- data/test/util/package.rb +27 -0
- data/test/util/pidlock.rb +126 -0
- data/test/util/posixtest.rb +173 -0
- data/test/util/storage.rb +123 -0
- data/test/util/subclass_loader.rb +100 -0
- data/test/util/utiltest.rb +368 -0
- metadata +449 -169
- data/examples/code/classing +0 -35
- data/examples/code/failers/badclassnoparam +0 -10
- data/examples/code/failers/badclassparam +0 -10
- data/examples/code/failers/badcompnoparam +0 -9
- data/examples/code/failers/badcompparam +0 -9
- data/examples/code/failers/badtypeparam +0 -3
- data/examples/code/failers/noobjectrvalue +0 -1
- data/examples/code/snippets/aliastest.pp +0 -16
- data/examples/code/snippets/argumentdefaults +0 -14
- data/examples/code/snippets/casestatement.pp +0 -58
- data/examples/code/snippets/classheirarchy.pp +0 -15
- data/examples/code/snippets/classincludes.pp +0 -17
- data/examples/code/snippets/classpathtest +0 -11
- data/examples/code/snippets/componentmetaparams.pp +0 -11
- data/examples/code/snippets/deepclassheirarchy.pp +0 -23
- data/examples/code/snippets/defineoverrides.pp +0 -17
- data/examples/code/snippets/dirchmod +0 -19
- data/examples/code/snippets/emptyclass.pp +0 -9
- data/examples/code/snippets/emptyexec.pp +0 -3
- data/examples/code/snippets/failmissingexecpath.pp +0 -13
- data/examples/code/snippets/falsevalues.pp +0 -3
- data/examples/code/snippets/filecreate +0 -11
- data/examples/code/snippets/implicititeration +0 -15
- data/examples/code/snippets/multipleinstances +0 -7
- data/examples/code/snippets/namevartest +0 -9
- data/examples/code/snippets/scopetest +0 -13
- data/examples/code/snippets/selectorvalues.pp +0 -42
- data/examples/code/snippets/simpledefaults +0 -5
- data/examples/code/snippets/simpleselector +0 -38
- data/examples/code/snippets/singleary.pp +0 -19
- data/examples/code/snippets/singlequote.pp +0 -11
- data/examples/code/snippets/singleselector.pp +0 -22
- data/examples/code/snippets/tag.pp +0 -9
- data/examples/code/snippets/tagged.pp +0 -35
- data/lib/puppet/client.rb +0 -177
- data/lib/puppet/client/ca.rb +0 -21
- data/lib/puppet/client/dipper.rb +0 -76
- data/lib/puppet/client/file.rb +0 -20
- data/lib/puppet/client/log.rb +0 -17
- data/lib/puppet/client/master.rb +0 -531
- data/lib/puppet/client/runner.rb +0 -17
- data/lib/puppet/client/status.rb +0 -7
- data/lib/puppet/event-loop.rb +0 -1
- data/lib/puppet/filetype.rb +0 -308
- data/lib/puppet/inifile.rb +0 -201
- data/lib/puppet/log.rb +0 -524
- data/lib/puppet/metric.rb +0 -132
- data/lib/puppet/networkclient.rb +0 -175
- data/lib/puppet/parsedfile.rb +0 -58
- data/lib/puppet/parser/ast/classdef.rb +0 -79
- data/lib/puppet/parser/ast/compdef.rb +0 -75
- data/lib/puppet/parser/ast/nodedef.rb +0 -73
- data/lib/puppet/parser/ast/objectdef.rb +0 -284
- data/lib/puppet/parser/ast/objectref.rb +0 -77
- data/lib/puppet/rails/database.rb +0 -40
- data/lib/puppet/rails/rails_object.rb +0 -42
- data/lib/puppet/rails/rails_parameter.rb +0 -5
- data/lib/puppet/server.rb +0 -196
- data/lib/puppet/server/authconfig.rb +0 -177
- data/lib/puppet/server/authstore.rb +0 -226
- data/lib/puppet/server/filebucket.rb +0 -155
- data/lib/puppet/server/pelement.rb +0 -188
- data/lib/puppet/server/report.rb +0 -184
- data/lib/puppet/server/rights.rb +0 -78
- data/lib/puppet/server/servlet.rb +0 -274
- data/lib/puppet/statechange.rb +0 -129
- data/lib/puppet/storage.rb +0 -98
- data/lib/puppet/type/nameservice.rb +0 -264
- data/lib/puppet/type/nameservice/netinfo.rb +0 -232
- data/lib/puppet/type/nameservice/objectadd.rb +0 -146
- data/lib/puppet/type/nameservice/posix.rb +0 -12
- data/lib/puppet/type/nameservice/pw.rb +0 -107
- data/lib/puppet/type/package/apple.rb +0 -41
- data/lib/puppet/type/package/apt.rb +0 -107
- data/lib/puppet/type/package/blastwave.rb +0 -136
- data/lib/puppet/type/package/darwinport.rb +0 -97
- data/lib/puppet/type/package/dpkg.rb +0 -113
- data/lib/puppet/type/package/freebsd.rb +0 -19
- data/lib/puppet/type/package/gem.rb +0 -119
- data/lib/puppet/type/package/openbsd.rb +0 -112
- data/lib/puppet/type/package/ports.rb +0 -103
- data/lib/puppet/type/package/rpm.rb +0 -121
- data/lib/puppet/type/package/sun.rb +0 -174
- data/lib/puppet/type/package/sunfreeware.rb +0 -7
- data/lib/puppet/type/package/yum.rb +0 -52
- data/lib/puppet/type/parsedtype/host.rb +0 -144
- data/lib/puppet/type/parsedtype/mount.rb +0 -271
- data/lib/puppet/type/parsedtype/port.rb +0 -261
- data/lib/puppet/type/parsedtype/sshkey.rb +0 -123
- data/lib/puppet/type/service/base.rb +0 -12
- data/lib/puppet/type/service/debian.rb +0 -46
- data/lib/puppet/type/service/redhat.rb +0 -38
- data/lib/puppet/type/state.rb +0 -393
- data/lib/puppet/type/symlink.rb +0 -186
- data/test/client/master.rb +0 -207
- data/test/language/rails.rb +0 -105
- data/test/other/parsedfile.rb +0 -58
- data/test/other/storage.rb +0 -100
- data/test/puppet/utiltest.rb +0 -299
- data/test/puppettest.rb +0 -1170
- data/test/server/authconfig.rb +0 -56
- data/test/server/authstore.rb +0 -218
- data/test/server/master.rb +0 -201
- data/test/server/report.rb +0 -93
- data/test/server/rights.rb +0 -41
- data/test/server/server.rb +0 -152
- data/test/test +0 -61
- data/test/types/basic.rb +0 -117
- data/test/types/component.rb +0 -298
- data/test/types/cron.rb +0 -718
- data/test/types/file.rb +0 -1314
- data/test/types/filesources.rb +0 -590
- data/test/types/group.rb +0 -323
- data/test/types/host.rb +0 -186
- data/test/types/mount.rb +0 -294
- data/test/types/package.rb +0 -538
- data/test/types/parameter.rb +0 -107
- data/test/types/port.rb +0 -201
- data/test/types/query.rb +0 -101
- data/test/types/state.rb +0 -92
- data/test/types/symlink.rb +0 -120
- data/test/types/tidy.rb +0 -102
- data/test/types/type.rb +0 -469
- data/test/types/user.rb +0 -563
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This file is only necessary if your clients listen.
|
|
2
|
+
# Note that it affects all puppet daemons, including puppetmasterd,
|
|
3
|
+
# which is why puppetmaster is in there.
|
|
4
|
+
[fileserver]
|
|
5
|
+
allow *.madstop.com
|
|
6
|
+
|
|
7
|
+
[puppetmaster]
|
|
8
|
+
allow *.madstop.com
|
|
9
|
+
|
|
10
|
+
[pelementserver]
|
|
11
|
+
allow puppet.madstop.com
|
|
12
|
+
|
|
13
|
+
[puppetrunner]
|
|
14
|
+
allow culain.madstop.com
|
|
15
|
+
|
|
16
|
+
[puppetbucket]
|
|
17
|
+
allow *.madstop.com
|
|
18
|
+
|
|
19
|
+
[puppetreports]
|
|
20
|
+
allow *.madstop.com
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
[
|
|
2
|
-
|
|
3
|
-
handlers = master, ca
|
|
1
|
+
[puppetmasterd]
|
|
2
|
+
reports = store,rrdgraph,tagmail,log
|
|
4
3
|
|
|
5
|
-
[
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
[master]
|
|
10
|
-
File = $config/manifest.pp
|
|
4
|
+
[ldap]
|
|
5
|
+
ldapnodes = true
|
|
6
|
+
ldapserver = culain.madstop.com
|
|
7
|
+
ldapbase = dc=madstop,dc=com
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
all: user@domain.com
|
data/ext/emacs/puppet-mode.el
CHANGED
|
@@ -89,6 +89,48 @@
|
|
|
89
89
|
(make-local-variable 'paragraph-ignore-fill-prefix)
|
|
90
90
|
(setq paragraph-ignore-fill-prefix t))
|
|
91
91
|
|
|
92
|
+
(defun puppet-indent-line ()
|
|
93
|
+
"Indent current line as puppet code."
|
|
94
|
+
(interactive)
|
|
95
|
+
(beginning-of-line)
|
|
96
|
+
(if (bobp)
|
|
97
|
+
(indent-line-to 0) ; First line is always non-indented
|
|
98
|
+
(let ((not-indented t) cur-indent)
|
|
99
|
+
(if (looking-at "^.*}") ; If the line we are looking at is the end of
|
|
100
|
+
; a block, then decrease the indentation
|
|
101
|
+
(progn
|
|
102
|
+
(save-excursion
|
|
103
|
+
(forward-line -1)
|
|
104
|
+
|
|
105
|
+
(if (looking-at "^.*}")
|
|
106
|
+
(progn
|
|
107
|
+
(setq cur-indent (- (current-indentation) 2))
|
|
108
|
+
(setq not-indented nil))
|
|
109
|
+
(setq cur-indent (- (current-indentation) 2))))
|
|
110
|
+
(if (< cur-indent 0) ; We can't indent past the left margin
|
|
111
|
+
(setq cur-indent 0)))
|
|
112
|
+
(save-excursion
|
|
113
|
+
(while not-indented ; Iterate backwards until we find an
|
|
114
|
+
; indentation hint
|
|
115
|
+
(forward-line -1)
|
|
116
|
+
(if (looking-at "^.*}") ; This hint indicates that we need to
|
|
117
|
+
; indent at the level of the END_ token
|
|
118
|
+
(progn
|
|
119
|
+
(setq cur-indent (current-indentation))
|
|
120
|
+
(setq not-indented nil))
|
|
121
|
+
(if (looking-at "^.*{") ; This hint indicates that we need to
|
|
122
|
+
; indent an extra level
|
|
123
|
+
(progn
|
|
124
|
+
; Do the actual indenting
|
|
125
|
+
(setq cur-indent (+ (current-indentation) 2))
|
|
126
|
+
(setq not-indented nil))
|
|
127
|
+
(if (bobp)
|
|
128
|
+
(setq not-indented nil)))))))
|
|
129
|
+
(if cur-indent
|
|
130
|
+
(indent-line-to cur-indent)
|
|
131
|
+
(indent-line-to 0)))))
|
|
132
|
+
|
|
133
|
+
|
|
92
134
|
;;;###autoload
|
|
93
135
|
(defun puppet-mode ()
|
|
94
136
|
"Major mode for editing puppet manifests.
|
|
@@ -101,9 +143,12 @@ The variable puppet-indent-level controls the amount of indentation.
|
|
|
101
143
|
(setq mode-name "Puppet")
|
|
102
144
|
(setq major-mode 'puppet-mode)
|
|
103
145
|
(puppet-mode-variables)
|
|
104
|
-
|
|
146
|
+
;; Register our indentation function
|
|
147
|
+
(set (make-local-variable 'indent-line-function) 'puppet-indent-line)
|
|
105
148
|
(run-hooks 'puppet-mode-hook))
|
|
106
149
|
|
|
150
|
+
|
|
151
|
+
|
|
107
152
|
(cond
|
|
108
153
|
((featurep 'font-lock)
|
|
109
154
|
(or (boundp 'font-lock-variable-name-face)
|
data/ext/logcheck/puppet
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetmasterd\[[0-9]+\]: Starting Puppet server version [.0-9]+$
|
|
2
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetmasterd\[[0-9]+\]: Compiled configuration for [._[:alnum:]-]+ in [.0-9]+ seconds$
|
|
3
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetmasterd\[[0-9]+\]: Caught TERM; shutting down$
|
|
4
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetmasterd\[[0-9]+\]: Shutting down$
|
|
5
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Starting Puppet client version [.0-9]+$
|
|
6
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: getting config$
|
|
7
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Caching configuration at [\/._[:alnum:]-]+$
|
|
8
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Loaded state in [.0-9]+ seconds$
|
|
9
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Calling puppetmaster.getconfig$
|
|
10
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Retrieved configuration in [.0-9]+ seconds$
|
|
11
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Starting configuration run$
|
|
12
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Finished configuration run in [.0-9]+ seconds$
|
|
13
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Caught (TERM|INT); shutting down$
|
|
14
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Shutting down$
|
|
15
|
+
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ puppetd\[[0-9]+\]: Restarting with .*$
|
data/ext/module_puppet
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#!/usr/bin/ruby
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
2
|
|
|
3
3
|
#
|
|
4
4
|
# = Synopsis
|
|
@@ -47,18 +47,10 @@
|
|
|
47
47
|
# Licensed under the GNU Public License
|
|
48
48
|
|
|
49
49
|
require 'puppet'
|
|
50
|
-
require 'puppet/
|
|
51
|
-
require 'puppet/client'
|
|
50
|
+
require 'puppet/network/handler'
|
|
51
|
+
require 'puppet/network/client'
|
|
52
52
|
require 'getoptlong'
|
|
53
53
|
|
|
54
|
-
$haveusage = true
|
|
55
|
-
|
|
56
|
-
begin
|
|
57
|
-
require 'rdoc/usage'
|
|
58
|
-
rescue LoadError
|
|
59
|
-
$haveusage = false
|
|
60
|
-
end
|
|
61
|
-
|
|
62
54
|
options = [
|
|
63
55
|
[ "--debug", "-d", GetoptLong::NO_ARGUMENT ],
|
|
64
56
|
[ "--help", "-h", GetoptLong::NO_ARGUMENT ],
|
|
@@ -92,7 +84,7 @@ begin
|
|
|
92
84
|
puts "%s" % Puppet.version
|
|
93
85
|
exit
|
|
94
86
|
when "--help"
|
|
95
|
-
if
|
|
87
|
+
if Puppet.features.usage?
|
|
96
88
|
RDoc::usage && exit
|
|
97
89
|
else
|
|
98
90
|
puts "No help available unless you have RDoc::usage installed"
|
|
@@ -101,16 +93,16 @@ begin
|
|
|
101
93
|
when "--use-nodes"
|
|
102
94
|
master[:UseNodes] = true
|
|
103
95
|
when "--verbose"
|
|
104
|
-
Puppet::Log.level = :info
|
|
105
|
-
Puppet::Log.newdestination(:console)
|
|
96
|
+
Puppet::Util::Log.level = :info
|
|
97
|
+
Puppet::Util::Log.newdestination(:console)
|
|
106
98
|
verbose = true
|
|
107
99
|
when "--debug"
|
|
108
|
-
Puppet::Log.level = :debug
|
|
109
|
-
Puppet::Log.newdestination(:console)
|
|
100
|
+
Puppet::Util::Log.level = :debug
|
|
101
|
+
Puppet::Util::Log.newdestination(:console)
|
|
110
102
|
debug = true
|
|
111
103
|
when "--logdest"
|
|
112
104
|
begin
|
|
113
|
-
Puppet::Log.newdestination arg
|
|
105
|
+
Puppet::Util::Log.newdestination arg
|
|
114
106
|
setdest=true
|
|
115
107
|
rescue => detail
|
|
116
108
|
$stderr.puts detail.to_s
|
|
@@ -121,9 +113,9 @@ begin
|
|
|
121
113
|
}
|
|
122
114
|
rescue GetoptLong::InvalidOption => detail
|
|
123
115
|
$stderr.puts "Try '#{$0} --help'"
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
116
|
+
if Puppet.features.usage?
|
|
117
|
+
RDoc::usage(1,'usage')
|
|
118
|
+
end
|
|
127
119
|
exit(1)
|
|
128
120
|
end
|
|
129
121
|
|
|
@@ -155,7 +147,7 @@ unless ARGV.length > 0
|
|
|
155
147
|
end
|
|
156
148
|
|
|
157
149
|
unless setdest
|
|
158
|
-
Puppet::Log.newdestination(:syslog)
|
|
150
|
+
Puppet::Util::Log.newdestination(:syslog)
|
|
159
151
|
end
|
|
160
152
|
|
|
161
153
|
master[:Manifest] = ARGV.shift
|
|
@@ -177,14 +169,14 @@ end
|
|
|
177
169
|
master[:Classes] = classes
|
|
178
170
|
|
|
179
171
|
begin
|
|
180
|
-
server = Puppet::
|
|
172
|
+
server = Puppet::Network::Handler.master.new(master)
|
|
181
173
|
rescue => detail
|
|
182
174
|
$stderr.puts detail
|
|
183
175
|
exit(1)
|
|
184
176
|
end
|
|
185
177
|
|
|
186
178
|
begin
|
|
187
|
-
client = Puppet::Client
|
|
179
|
+
client = Puppet::Network::Client.master.new(
|
|
188
180
|
:Master => server,
|
|
189
181
|
:Cache => false
|
|
190
182
|
)
|
data/ext/vim/puppet.vim
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
" Filename: puppet.vim
|
|
3
3
|
" Language: puppet configuration file
|
|
4
4
|
" Maintainer: Luke Kanies <luke@madstop.com>
|
|
5
|
-
" URL:
|
|
5
|
+
" URL:
|
|
6
6
|
" Last Change:
|
|
7
7
|
" Version:
|
|
8
8
|
"
|
|
9
|
-
" $Id: puppet.vim 875 2006-02-07 23:56:16Z luke $
|
|
10
9
|
|
|
11
10
|
" Copied from the cfengine, ruby, and perl syntax files
|
|
12
11
|
" For version 5.x: Clear all syntax items
|
|
@@ -22,6 +21,9 @@ syn keyword puppetDefType class define site node inherits contained
|
|
|
22
21
|
syn keyword puppetInherits inherits contained
|
|
23
22
|
syn region puppetDefArguments start="(" end=")" contains=puppetArgument
|
|
24
23
|
syn match puppetArgument "\w\+" contained
|
|
24
|
+
syn match puppetArgument "\$\w\+" contained
|
|
25
|
+
syn match puppetArgument "'[^']+'" contained
|
|
26
|
+
syn match puppetArgument '"[^"]+"' contained
|
|
25
27
|
syn match puppetDefName "\w\+" contained
|
|
26
28
|
|
|
27
29
|
syn match puppetInstance "\w\+\s*{" contains=puppetTypeBrace,puppetTypeName,puppetTypeDefault
|
data/install.rb
CHANGED
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
# 5) Install all library files ending in .rb from lib/ into Ruby's
|
|
31
31
|
# site_lib/version directory.
|
|
32
32
|
#
|
|
33
|
-
# $Id: install.rb
|
|
33
|
+
# $Id: install.rb 1479 2006-08-21 23:04:32Z luke $
|
|
34
34
|
#++
|
|
35
35
|
|
|
36
36
|
require 'rbconfig'
|
|
@@ -91,6 +91,7 @@ def check_prereqs
|
|
|
91
91
|
require pre
|
|
92
92
|
rescue LoadError
|
|
93
93
|
puts "Could not load %s; cannot install" % pre
|
|
94
|
+
exit -1
|
|
94
95
|
end
|
|
95
96
|
}
|
|
96
97
|
end
|
data/lib/puppet.rb
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
# see the bottom of the file for further inclusions
|
|
1
2
|
require 'singleton'
|
|
2
|
-
require '
|
|
3
|
+
require 'facter'
|
|
4
|
+
require 'puppet/error'
|
|
5
|
+
require 'puppet/external/event-loop'
|
|
3
6
|
require 'puppet/util'
|
|
4
|
-
require 'puppet/log'
|
|
5
|
-
require 'puppet/
|
|
6
|
-
|
|
7
|
-
|
|
7
|
+
require 'puppet/util/log'
|
|
8
|
+
require 'puppet/util/autoload'
|
|
9
|
+
require 'puppet/util/config'
|
|
10
|
+
require 'puppet/util/feature'
|
|
11
|
+
require 'puppet/util/suidmanager'
|
|
8
12
|
|
|
9
13
|
#------------------------------------------------------------
|
|
10
14
|
# the top-level module
|
|
@@ -13,8 +17,9 @@ require 'puppet/config'
|
|
|
13
17
|
# preferences for things like debugging
|
|
14
18
|
#
|
|
15
19
|
# it's also a place to find top-level commands like 'debug'
|
|
20
|
+
|
|
16
21
|
module Puppet
|
|
17
|
-
PUPPETVERSION = '0.
|
|
22
|
+
PUPPETVERSION = '0.22.4'
|
|
18
23
|
|
|
19
24
|
def Puppet.version
|
|
20
25
|
return PUPPETVERSION
|
|
@@ -29,63 +34,23 @@ module Puppet
|
|
|
29
34
|
# To keep a copy of arguments. Set within Config#addargs, because I'm
|
|
30
35
|
# lazy.
|
|
31
36
|
attr_accessor :args
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
class Error < RuntimeError
|
|
35
|
-
attr_accessor :stack, :line, :file
|
|
36
|
-
attr_writer :backtrace
|
|
37
|
-
|
|
38
|
-
def backtrace
|
|
39
|
-
if defined? @backtrace
|
|
40
|
-
return @backtrace
|
|
41
|
-
else
|
|
42
|
-
return super
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
def initialize(message)
|
|
47
|
-
@message = message
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
def to_s
|
|
51
|
-
str = nil
|
|
52
|
-
if defined? @file and defined? @line and @file and @line
|
|
53
|
-
str = "%s in file %s at line %s" %
|
|
54
|
-
[@message.to_s, @file, @line]
|
|
55
|
-
elsif defined? @line and @line
|
|
56
|
-
str = "%s at line %s" %
|
|
57
|
-
[@message.to_s, @line]
|
|
58
|
-
else
|
|
59
|
-
str = @message.to_s
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
return str
|
|
63
|
-
end
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
class DevError < Error; end
|
|
67
|
-
|
|
68
|
-
def self.name
|
|
69
|
-
unless defined? @name
|
|
70
|
-
@name = $0.gsub(/.+#{File::SEPARATOR}/,'').sub(/\.rb$/, '')
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
return @name
|
|
37
|
+
attr_reader :features
|
|
38
|
+
attr_writer :name
|
|
74
39
|
end
|
|
75
40
|
|
|
76
41
|
# the hash that determines how our system behaves
|
|
77
|
-
@@config = Puppet::Config.new
|
|
42
|
+
@@config = Puppet::Util::Config.new
|
|
78
43
|
|
|
79
44
|
# The services running in this process.
|
|
80
45
|
@services ||= []
|
|
81
46
|
|
|
82
47
|
# define helper messages for each of the message levels
|
|
83
|
-
Puppet::Log.eachlevel { |level|
|
|
48
|
+
Puppet::Util::Log.eachlevel { |level|
|
|
84
49
|
define_method(level,proc { |args|
|
|
85
50
|
if args.is_a?(Array)
|
|
86
51
|
args = args.join(" ")
|
|
87
52
|
end
|
|
88
|
-
Puppet::Log.create(
|
|
53
|
+
Puppet::Util::Log.create(
|
|
89
54
|
:level => level,
|
|
90
55
|
:message => args
|
|
91
56
|
)
|
|
@@ -96,157 +61,23 @@ module Puppet
|
|
|
96
61
|
# I keep wanting to use Puppet.error
|
|
97
62
|
# XXX this isn't actually working right now
|
|
98
63
|
alias :error :err
|
|
64
|
+
|
|
65
|
+
# The feature collection
|
|
66
|
+
@features = Puppet::Util::Feature.new('puppet/feature')
|
|
67
|
+
|
|
68
|
+
# Load the base features.
|
|
69
|
+
require 'puppet/feature/base'
|
|
99
70
|
|
|
100
71
|
# Store a new default value.
|
|
101
72
|
def self.setdefaults(section, hash)
|
|
102
73
|
@@config.setdefaults(section, hash)
|
|
103
74
|
end
|
|
104
75
|
|
|
105
|
-
# If we're running the standalone puppet process as a non-root user,
|
|
106
|
-
# use basedirs that are in the user's home directory.
|
|
107
|
-
conf = nil
|
|
108
|
-
var = nil
|
|
109
|
-
if self.name == "puppet" and Process.uid != 0
|
|
110
|
-
conf = File.expand_path("~/.puppet")
|
|
111
|
-
var = File.expand_path("~/.puppet/var")
|
|
112
|
-
else
|
|
113
|
-
# Else, use system-wide directories.
|
|
114
|
-
conf = "/etc/puppet"
|
|
115
|
-
var = "/var/puppet"
|
|
116
|
-
end
|
|
117
|
-
|
|
118
|
-
self.setdefaults(:puppet,
|
|
119
|
-
:confdir => [conf, "The main Puppet configuration directory."],
|
|
120
|
-
:vardir => [var, "Where Puppet stores dynamic and growing data."]
|
|
121
|
-
)
|
|
122
|
-
|
|
123
|
-
if self.name == "puppetmasterd"
|
|
124
|
-
self.setdefaults(:puppetmasterd,
|
|
125
|
-
:logdir => {:default => "$vardir/log",
|
|
126
|
-
:mode => 0750,
|
|
127
|
-
:owner => "$user",
|
|
128
|
-
:group => "$group",
|
|
129
|
-
:desc => "The Puppet log directory."
|
|
130
|
-
}
|
|
131
|
-
)
|
|
132
|
-
else
|
|
133
|
-
self.setdefaults(:puppet,
|
|
134
|
-
:logdir => ["$vardir/log", "The Puppet log directory."]
|
|
135
|
-
)
|
|
136
|
-
end
|
|
137
|
-
|
|
138
|
-
self.setdefaults(:puppet,
|
|
139
|
-
:statedir => { :default => "$vardir/state",
|
|
140
|
-
:mode => 01777,
|
|
141
|
-
:desc => "The directory where Puppet state is stored. Generally,
|
|
142
|
-
this directory can be removed without causing harm (although it
|
|
143
|
-
might result in spurious service restarts)."
|
|
144
|
-
},
|
|
145
|
-
:rundir => { :default => "$vardir/run",
|
|
146
|
-
:mode => 01777,
|
|
147
|
-
:desc => "Where Puppet PID files are kept."
|
|
148
|
-
},
|
|
149
|
-
:lockdir => { :default => "$vardir/locks",
|
|
150
|
-
:mode => 01777,
|
|
151
|
-
:desc => "Where lock files are kept."
|
|
152
|
-
},
|
|
153
|
-
:statefile => { :default => "$statedir/state.yaml",
|
|
154
|
-
:mode => 0660,
|
|
155
|
-
:desc => "Where puppetd and puppetmasterd store state associated
|
|
156
|
-
with the running configuration. In the case of puppetmasterd,
|
|
157
|
-
this file reflects the state discovered through interacting
|
|
158
|
-
with clients."
|
|
159
|
-
},
|
|
160
|
-
:ssldir => {
|
|
161
|
-
:default => "$confdir/ssl",
|
|
162
|
-
:mode => 0771,
|
|
163
|
-
:owner => "root",
|
|
164
|
-
:desc => "Where SSL certificates are kept."
|
|
165
|
-
},
|
|
166
|
-
:genconfig => [false,
|
|
167
|
-
"Whether to just print a configuration to stdout and exit. Only makes
|
|
168
|
-
sense when used interactively. Takes into account arguments specified
|
|
169
|
-
on the CLI."],
|
|
170
|
-
:genmanifest => [false,
|
|
171
|
-
"Whether to just print a manifest to stdout and exit. Only makes
|
|
172
|
-
sense when used interactively. Takes into account arguments specified
|
|
173
|
-
on the CLI."],
|
|
174
|
-
:color => [true, "Whether to use ANSI colors when logging to the console."],
|
|
175
|
-
:mkusers => [false,
|
|
176
|
-
"Whether to create the necessary user and group that puppetd will
|
|
177
|
-
run as."]
|
|
178
|
-
)
|
|
179
|
-
|
|
180
|
-
# Define the config default.
|
|
181
|
-
self.setdefaults(self.name,
|
|
182
|
-
:config => ["$confdir/#{self.name}.conf",
|
|
183
|
-
"The configuration file for #{self.name}."]
|
|
184
|
-
)
|
|
185
|
-
|
|
186
|
-
self.setdefaults("puppetmasterd",
|
|
187
|
-
:user => ["puppet", "The user puppetmasterd should run as."],
|
|
188
|
-
:group => ["puppet", "The group puppetmasterd should run as."],
|
|
189
|
-
:manifestdir => ["$confdir/manifests",
|
|
190
|
-
"Where puppetmasterd looks for its manifests."],
|
|
191
|
-
:manifest => ["$manifestdir/site.pp",
|
|
192
|
-
"The entry-point manifest for puppetmasterd."],
|
|
193
|
-
:masterlog => { :default => "$logdir/puppetmaster.log",
|
|
194
|
-
:owner => "$user",
|
|
195
|
-
:group => "$group",
|
|
196
|
-
:mode => 0660,
|
|
197
|
-
:desc => "Where puppetmasterd logs. This is generally not used,
|
|
198
|
-
since syslog is the default log destination."
|
|
199
|
-
},
|
|
200
|
-
:masterhttplog => { :default => "$logdir/masterhttp.log",
|
|
201
|
-
:owner => "$user",
|
|
202
|
-
:group => "$group",
|
|
203
|
-
:mode => 0660,
|
|
204
|
-
:create => true,
|
|
205
|
-
:desc => "Where the puppetmasterd web server logs."
|
|
206
|
-
},
|
|
207
|
-
:masterport => [8140, "Which port puppetmasterd listens on."],
|
|
208
|
-
:parseonly => [false, "Just check the syntax of the manifests."]
|
|
209
|
-
)
|
|
210
|
-
|
|
211
|
-
self.setdefaults("puppetd",
|
|
212
|
-
:localconfig => { :default => "$confdir/localconfig",
|
|
213
|
-
:owner => "root",
|
|
214
|
-
:mode => 0660,
|
|
215
|
-
:desc => "Where puppetd caches the local configuration. An
|
|
216
|
-
extension indicating the cache format is added automatically."},
|
|
217
|
-
:classfile => { :default => "$confdir/classes.txt",
|
|
218
|
-
:owner => "root",
|
|
219
|
-
:mode => 0644,
|
|
220
|
-
:desc => "The file in which puppetd stores a list of the classes
|
|
221
|
-
associated with the retrieved configuratiion. Can be loaded in
|
|
222
|
-
the separate ``puppet`` executable using the ``--loadclasses``
|
|
223
|
-
option."},
|
|
224
|
-
:puppetdlog => { :default => "$logdir/puppetd.log",
|
|
225
|
-
:owner => "root",
|
|
226
|
-
:mode => 0640,
|
|
227
|
-
:desc => "The log file for puppetd. This is generally not used."
|
|
228
|
-
},
|
|
229
|
-
:httplog => { :default => "$logdir/http.log",
|
|
230
|
-
:owner => "root",
|
|
231
|
-
:mode => 0640,
|
|
232
|
-
:desc => "Where the puppetd web server logs."
|
|
233
|
-
},
|
|
234
|
-
:server => ["puppet",
|
|
235
|
-
"The server to which server puppetd should connect"],
|
|
236
|
-
:ignoreschedules => [false,
|
|
237
|
-
"Boolean; whether puppetd should ignore schedules. This is useful
|
|
238
|
-
for initial puppetd runs."],
|
|
239
|
-
:puppetport => [8139, "Which port puppetd listens on."],
|
|
240
|
-
:noop => [false, "Whether puppetd should be run in noop mode."],
|
|
241
|
-
:runinterval => [1800, # 30 minutes
|
|
242
|
-
"How often puppetd applies the client configuration; in seconds"]
|
|
243
|
-
)
|
|
244
|
-
|
|
245
76
|
# configuration parameter access and stuff
|
|
246
77
|
def self.[](param)
|
|
247
78
|
case param
|
|
248
79
|
when :debug:
|
|
249
|
-
if Puppet::Log.level == :debug
|
|
80
|
+
if Puppet::Util::Log.level == :debug
|
|
250
81
|
return true
|
|
251
82
|
else
|
|
252
83
|
return false
|
|
@@ -267,9 +98,9 @@ module Puppet
|
|
|
267
98
|
|
|
268
99
|
def self.debug=(value)
|
|
269
100
|
if value
|
|
270
|
-
Puppet::Log.level=(:debug)
|
|
101
|
+
Puppet::Util::Log.level=(:debug)
|
|
271
102
|
else
|
|
272
|
-
Puppet::Log.level=(:notice)
|
|
103
|
+
Puppet::Util::Log.level=(:notice)
|
|
273
104
|
end
|
|
274
105
|
end
|
|
275
106
|
|
|
@@ -277,7 +108,33 @@ module Puppet
|
|
|
277
108
|
@@config
|
|
278
109
|
end
|
|
279
110
|
|
|
111
|
+
# Load all of the configuration parameters.
|
|
112
|
+
require 'puppet/configuration'
|
|
113
|
+
|
|
280
114
|
def self.genconfig
|
|
115
|
+
if Puppet[:configprint] != ""
|
|
116
|
+
val = Puppet[:configprint]
|
|
117
|
+
if val == "all"
|
|
118
|
+
hash = {}
|
|
119
|
+
Puppet.config.each do |name, obj|
|
|
120
|
+
val = obj.value
|
|
121
|
+
case val
|
|
122
|
+
when true, false, "": val = val.inspect
|
|
123
|
+
end
|
|
124
|
+
hash[name] = val
|
|
125
|
+
end
|
|
126
|
+
hash.sort { |a,b| a[0].to_s <=> b[0].to_s }.each do |name, val|
|
|
127
|
+
puts "%s = %s" % [name, val]
|
|
128
|
+
end
|
|
129
|
+
elsif val =~ /,/
|
|
130
|
+
val.split(/\s*,\s*/).sort.each do |v|
|
|
131
|
+
puts "%s = %s" % [v, Puppet[v]]
|
|
132
|
+
end
|
|
133
|
+
else
|
|
134
|
+
puts Puppet[val]
|
|
135
|
+
end
|
|
136
|
+
exit(0)
|
|
137
|
+
end
|
|
281
138
|
if Puppet[:genconfig]
|
|
282
139
|
puts Puppet.config.to_config
|
|
283
140
|
exit(0)
|
|
@@ -332,6 +189,7 @@ module Puppet
|
|
|
332
189
|
command = $0 + " " + self.args.join(" ")
|
|
333
190
|
Puppet.notice "Restarting with '%s'" % command
|
|
334
191
|
Puppet.shutdown(false)
|
|
192
|
+
Puppet::Util::Log.reopen
|
|
335
193
|
exec(command)
|
|
336
194
|
end
|
|
337
195
|
|
|
@@ -341,13 +199,15 @@ module Puppet
|
|
|
341
199
|
[:INT, :TERM].each do |signal|
|
|
342
200
|
trap(signal) do
|
|
343
201
|
Puppet.notice "Caught #{signal}; shutting down"
|
|
202
|
+
Puppet.debug "Signal caught here:"
|
|
203
|
+
caller.each { |l| Puppet.debug l }
|
|
344
204
|
Puppet.shutdown
|
|
345
205
|
end
|
|
346
206
|
end
|
|
347
207
|
|
|
348
208
|
# Handle restarting.
|
|
349
209
|
trap(:HUP) do
|
|
350
|
-
if client = @services.find { |s| s.is_a? Puppet::Client::
|
|
210
|
+
if client = @services.find { |s| s.is_a? Puppet::Network::Client::Master } and client.running?
|
|
351
211
|
client.restart
|
|
352
212
|
else
|
|
353
213
|
Puppet.restart
|
|
@@ -358,7 +218,7 @@ module Puppet
|
|
|
358
218
|
trap(:USR1) do
|
|
359
219
|
done = 0
|
|
360
220
|
Puppet.notice "Caught USR1; triggering client run"
|
|
361
|
-
@services.find_all { |s| s.is_a? Puppet::Client }.each do |client|
|
|
221
|
+
@services.find_all { |s| s.is_a? Puppet::Network::Client }.each do |client|
|
|
362
222
|
if client.respond_to? :running?
|
|
363
223
|
if client.running?
|
|
364
224
|
Puppet.info "Ignoring running %s" % client.class
|
|
@@ -380,6 +240,10 @@ module Puppet
|
|
|
380
240
|
Puppet.notice "No clients were run"
|
|
381
241
|
end
|
|
382
242
|
end
|
|
243
|
+
|
|
244
|
+
trap(:USR2) do
|
|
245
|
+
Puppet::Util::Log.reopen
|
|
246
|
+
end
|
|
383
247
|
end
|
|
384
248
|
|
|
385
249
|
# Shutdown our server process, meaning stop all services and all threads.
|
|
@@ -399,6 +263,7 @@ module Puppet
|
|
|
399
263
|
|
|
400
264
|
# Stop our services
|
|
401
265
|
defined? @services and @services.each do |svc|
|
|
266
|
+
next unless svc.respond_to?(:shutdown)
|
|
402
267
|
begin
|
|
403
268
|
timeout(20) do
|
|
404
269
|
svc.shutdown
|
|
@@ -428,12 +293,12 @@ module Puppet
|
|
|
428
293
|
# waiting for someone, somewhere, to generate events of some kind.
|
|
429
294
|
def self.start(block = true)
|
|
430
295
|
# Starting everything in its own thread, fwiw
|
|
431
|
-
defined? @services and @services.each do |svc|
|
|
296
|
+
defined? @services and @services.dup.each do |svc|
|
|
432
297
|
newthread do
|
|
433
298
|
begin
|
|
434
299
|
svc.start
|
|
435
300
|
rescue => detail
|
|
436
|
-
if Puppet[:
|
|
301
|
+
if Puppet[:trace]
|
|
437
302
|
puts detail.backtrace
|
|
438
303
|
end
|
|
439
304
|
@services.delete svc
|
|
@@ -442,15 +307,15 @@ module Puppet
|
|
|
442
307
|
end
|
|
443
308
|
end
|
|
444
309
|
|
|
310
|
+
# We need to give the services a chance to register their timers before
|
|
311
|
+
# we try to start monitoring them.
|
|
312
|
+
sleep 0.5
|
|
313
|
+
|
|
445
314
|
unless @services.length > 0
|
|
446
315
|
Puppet.notice "No remaining services; exiting"
|
|
447
316
|
exit(1)
|
|
448
317
|
end
|
|
449
318
|
|
|
450
|
-
# We need to give the services a chance to register their timers before
|
|
451
|
-
# we try to start monitoring them.
|
|
452
|
-
sleep 0.5
|
|
453
|
-
|
|
454
319
|
if defined? @timers and ! @timers.empty?
|
|
455
320
|
@timers.each do |timer|
|
|
456
321
|
EventLoop.current.monitor_timer timer
|
|
@@ -510,8 +375,8 @@ module Puppet
|
|
|
510
375
|
end
|
|
511
376
|
|
|
512
377
|
# Create a new type. Just proxy to the Type class.
|
|
513
|
-
def self.newtype(name,
|
|
514
|
-
Puppet::Type.newtype(name,
|
|
378
|
+
def self.newtype(name, options = {}, &block)
|
|
379
|
+
Puppet::Type.newtype(name, options, &block)
|
|
515
380
|
end
|
|
516
381
|
|
|
517
382
|
# Retrieve a type by name. Just proxy to the Type class.
|
|
@@ -520,8 +385,12 @@ module Puppet
|
|
|
520
385
|
end
|
|
521
386
|
end
|
|
522
387
|
|
|
523
|
-
require 'puppet/server'
|
|
524
388
|
require 'puppet/type'
|
|
525
|
-
require 'puppet/
|
|
389
|
+
require 'puppet/modules'
|
|
390
|
+
require 'puppet/util/storage'
|
|
391
|
+
require 'puppet/parser/interpreter'
|
|
392
|
+
if Puppet[:storeconfigs]
|
|
393
|
+
require 'puppet/rails'
|
|
394
|
+
end
|
|
526
395
|
|
|
527
|
-
# $Id: puppet.rb
|
|
396
|
+
# $Id: puppet.rb 2446 2007-05-01 03:52:33Z luke $
|