puppet 0.18.4 → 0.22.4
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- data/CHANGELOG +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
data/CHANGELOG
CHANGED
@@ -1,3 +1,291 @@
|
|
1
|
+
Execs now autorequire the user they run as, as long as the user
|
2
|
+
is specified by name. (#430)
|
3
|
+
|
4
|
+
Files on the local machine but not on the remote server during
|
5
|
+
a source copy are now purged if purge => true. (#594)
|
6
|
+
|
7
|
+
Providers can now specify that some commands are optional (#585).
|
8
|
+
Also, the 'command' method returns nil on missing commands,
|
9
|
+
rather than throwing an error, so the presence of commands
|
10
|
+
be tested.
|
11
|
+
|
12
|
+
The 'useradd' provider for Users can now manage passwords.
|
13
|
+
No other providers can, at this point.
|
14
|
+
|
15
|
+
Parameters can now declare a dependency on specific
|
16
|
+
features, and parameters that require missing features
|
17
|
+
will not be instantiated. This is most useful for
|
18
|
+
properties.
|
19
|
+
|
20
|
+
FileParsing classes can now use instance_eval to add
|
21
|
+
many methods at once to a record type.
|
22
|
+
|
23
|
+
Modules no longer return directories in the list of found
|
24
|
+
manifests (#588).
|
25
|
+
|
26
|
+
The crontab provider now defaults to root when there is no
|
27
|
+
USER set in the environment.
|
28
|
+
|
29
|
+
Puppetd once again correctly responds to HUP.
|
30
|
+
|
31
|
+
Added a syntax for referring to variables defined in
|
32
|
+
other classes (e.g., $puppet::server).
|
33
|
+
|
34
|
+
STDIN, STDOUT, STDERR are now redirected to /dev/null in
|
35
|
+
service providers descending from base.
|
36
|
+
|
37
|
+
Certificates are now valid starting one day before they are
|
38
|
+
created, to help handle small amounts of clock skew.
|
39
|
+
|
40
|
+
Files are no longer considered out of sync if some properties
|
41
|
+
are out of sync but they have no properties that can create
|
42
|
+
the file.
|
43
|
+
|
44
|
+
0.22.3
|
45
|
+
Fixed backward compatibility for logs and metrics from older clients.
|
46
|
+
|
47
|
+
Fixed the location of the authconfig parameters so there aren't
|
48
|
+
loading order issues.
|
49
|
+
|
50
|
+
Enabling attribute validation on the providers that subclass
|
51
|
+
'nameservice', so we can verify that an integer is passed to
|
52
|
+
UID and GID.
|
53
|
+
|
54
|
+
Added a stand-alone filebucket client, named 'filebucket'.
|
55
|
+
|
56
|
+
Fixed the new nested paths for filebuckets; the entire md5 sum was
|
57
|
+
not being stored.
|
58
|
+
|
59
|
+
Fixing #553; -M is no longer added when home directories are being
|
60
|
+
managed on Red Hat.
|
61
|
+
|
62
|
+
0.22.2 (grover)
|
63
|
+
Users can now manage their home directories, using the managehome
|
64
|
+
parameter, partially using patches provided by Tim Stoop and
|
65
|
+
Matt Palmer. (#432)
|
66
|
+
|
67
|
+
Added 'ralsh' (formerly x2puppet) to the svn tree. When possible it
|
68
|
+
should be added to the packages.
|
69
|
+
|
70
|
+
The 'notify' type now defaults to its message being the same as its name.
|
71
|
+
|
72
|
+
Reopening $stdin to read from /dev/null during execution, in hopes that
|
73
|
+
init scripts will stop hanging.
|
74
|
+
|
75
|
+
Changed the 'servername' fact set on the server to use the server's fqdn,
|
76
|
+
instead of the short-name.
|
77
|
+
|
78
|
+
Changing the location of the configuration cache. It now defaults to being
|
79
|
+
in the state directory, rather than in the configuration directory.
|
80
|
+
|
81
|
+
All parameter instances are stored in a single @parameters instance variable
|
82
|
+
hash within resource type instances. We used to use separate hashes for
|
83
|
+
each parameter type.
|
84
|
+
|
85
|
+
Added the concept of provider features. Eventually these should be able
|
86
|
+
to express the full range of provider functionality, but for now they can
|
87
|
+
test a provider to see what methods it has set and determine what features it
|
88
|
+
provides as a result. These features are integrated into the doc generation
|
89
|
+
system so that you get feature documentation automatically.
|
90
|
+
|
91
|
+
Switched apt/aptitide to using "apt-cache policy" instead of "apt-cache showpkg"
|
92
|
+
for determining the latest available version. (#487)
|
93
|
+
|
94
|
+
FileBuckets now use a deeply nested structure for storing files, so
|
95
|
+
you do not end up with hundreds or thousands of files in the same
|
96
|
+
directory. (#447)
|
97
|
+
|
98
|
+
Facts are now cached in the state file, and when they change the configuration
|
99
|
+
is always recompiled. (#519)
|
100
|
+
|
101
|
+
Added 'ignoreimport' setting for use in commit hooks. This causes the
|
102
|
+
parser to ignore import statements so a single file can be parse-checked. (#544)
|
103
|
+
|
104
|
+
Import statements can now specify multiple comma-separated arguments.
|
105
|
+
|
106
|
+
Definitions now support both 'name' and 'title', just like any other
|
107
|
+
resource type. (#539)
|
108
|
+
|
109
|
+
Added a generate() command, which sets values to the result of an external
|
110
|
+
command. (#541)
|
111
|
+
|
112
|
+
Added a file() command to read in files with no interpolation. The first
|
113
|
+
found file has its content returned.
|
114
|
+
|
115
|
+
puppetd now exits if no cert is present in onetime mode. (#533)
|
116
|
+
|
117
|
+
The client configuration cache can be safely removed and the client
|
118
|
+
will correctly realize the client is not in sync.
|
119
|
+
|
120
|
+
Resources can now be freely deleted, thus fixing many problems introduced
|
121
|
+
when deletion of required resources was forbidden when purging was introduced.
|
122
|
+
Only resources being purged will not be deleted.
|
123
|
+
|
124
|
+
Facts and plugins now download even in noop mode (#540).
|
125
|
+
|
126
|
+
Resources in noop mode now log when they would have responded to an event (#542).
|
127
|
+
|
128
|
+
Refactored cron support entirely. Cron now uses providers, and there
|
129
|
+
is a single 'crontab' provider that handles user crontabs. While this
|
130
|
+
refactor does not include providers for /etc/crontab or cron.d, it should
|
131
|
+
now be straightforward to write those providers.
|
132
|
+
|
133
|
+
Changed the parameter sorting so that the provider parameter comes
|
134
|
+
right after name, so the provider is available when the other parameters
|
135
|
+
and properties are being created.
|
136
|
+
|
137
|
+
Redid some of the internals of the ParsedFile provider base class.
|
138
|
+
It now passes a FileRecord around instead of a hash.
|
139
|
+
|
140
|
+
Fixing a bug related to link recursion that caused link directories
|
141
|
+
to always be considered out of sync.
|
142
|
+
|
143
|
+
The bind address for puppetmasterd can now be specified with
|
144
|
+
--bindaddress.
|
145
|
+
|
146
|
+
Added (probably experimental) mongrel support. At this point you're
|
147
|
+
still responsible for starting each individual process, and you have to
|
148
|
+
set up a proxy in front of it.
|
149
|
+
|
150
|
+
Redesigned the 'network' tree to support multiple web servers, including
|
151
|
+
refactoring most of the structural code so it's much clearer and more
|
152
|
+
reusable now.
|
153
|
+
|
154
|
+
Set up the CA client to default to ca_server and ca_port, so you can
|
155
|
+
easily run a separate CA.
|
156
|
+
|
157
|
+
Supporting hosts with no domain name, thanks to a patch from
|
158
|
+
Dennis Jacobfeuerborn.
|
159
|
+
|
160
|
+
Added an 'ignorecache' option to tell puppetd to force a recompile, thanks to
|
161
|
+
a patch by Chris McEniry.
|
162
|
+
|
163
|
+
Made up2date the default for RHEL < 4 and yum the default for the rest.
|
164
|
+
|
165
|
+
The yum provider now supports versions.
|
166
|
+
|
167
|
+
Case statements correctly match when multiple values are provided,
|
168
|
+
thanks to a patch by David Schmitt.
|
169
|
+
|
170
|
+
Functions can now be called with no arguments.
|
171
|
+
|
172
|
+
String escapes parse correctly in all cases now, thanks to a patch by
|
173
|
+
cstorey.
|
174
|
+
|
175
|
+
Subclasses again search parent classes for defaults.
|
176
|
+
|
177
|
+
You can now purge apt and dpkg packages.
|
178
|
+
|
179
|
+
When doing file recursion, 'ensure' only affects the top-level directory.
|
180
|
+
|
181
|
+
States have been renamed to Properties.
|
182
|
+
|
183
|
+
0.22.1 (kermit) -- Mostly a bugfix release
|
184
|
+
Compile times now persist between restarts of puppetd.
|
185
|
+
|
186
|
+
Timeouts have been added to many parts of Puppet, reducing the likelihood
|
187
|
+
if it hanging forever on broken scripts or servers.
|
188
|
+
|
189
|
+
All of the documentation and recipes have been moved to the wiki by Peter
|
190
|
+
Abrahamsen and Ben Kite has moved the FAQ to the wiki.
|
191
|
+
|
192
|
+
Explicit relationships now override automatic relationships, allowing you
|
193
|
+
to manually specify deletion order when removing resources.
|
194
|
+
|
195
|
+
Resources with dependencies can now be deleted as long as all of their
|
196
|
+
dependencies are also being deleted.
|
197
|
+
|
198
|
+
Namespaces for both classes and definitions now work much more consistently.
|
199
|
+
You should now be able to specify a class or definition with a namespace
|
200
|
+
everywhere you would normally expect to be able to specify one without.
|
201
|
+
|
202
|
+
Downcasing of facts can be selectively disabled.
|
203
|
+
|
204
|
+
Cyclic dependency graphs are now checked for and forbidden.
|
205
|
+
|
206
|
+
The netinfo mounts provider was commented out, because it really doesn't
|
207
|
+
work at all. Stupid NetInfo stores mount information with the device as
|
208
|
+
the key, which doesn't work with my current NetInfo code.
|
209
|
+
|
210
|
+
Otherwise, lots and lots of bugfixes. Check the tickets associated with the
|
211
|
+
'kermit' milestone.
|
212
|
+
|
213
|
+
0.22.0
|
214
|
+
Integrated the GRATR graph library into Puppet, for handling resource
|
215
|
+
relationships.
|
216
|
+
|
217
|
+
Lots of bug-fixes (see bugs tickets associated with the 'minor' milestone).
|
218
|
+
|
219
|
+
Added new 'resources' metatype, which currently only includes the ability
|
220
|
+
to purge unmanaged resources.
|
221
|
+
|
222
|
+
Added better ability to generate new resource objects during transactions
|
223
|
+
(using 'generate' and 'eval_generate' methods).
|
224
|
+
|
225
|
+
Rewrote all Rails support with a much better database design. Export/collect
|
226
|
+
now works, although the database is incompatible with previous versions.
|
227
|
+
|
228
|
+
Removed downcasing of facts and made most of the language case-insensitive.
|
229
|
+
|
230
|
+
Added support for printing the graphs built during transactions.
|
231
|
+
|
232
|
+
Reworked how paths are built for logging.
|
233
|
+
|
234
|
+
Switched all providers to directly executing commands instead of going through
|
235
|
+
a subshell, which removes the need to quote or escape arguments.
|
236
|
+
|
237
|
+
0.20.1
|
238
|
+
Mostly a bug-fix release, with the most important fix being the
|
239
|
+
multiple-definition error.
|
240
|
+
|
241
|
+
Completely rewrote the ParsedFile system; each provider is now much
|
242
|
+
shorter and much more maintainable. However, fundamental problems
|
243
|
+
were found with the 'port' type, so it was disabled. Also, added
|
244
|
+
a NetInfo provider for 'host' and an experimental NetInfo provider
|
245
|
+
for 'mount'.
|
246
|
+
|
247
|
+
Made the RRDGraph report *much* better and added reference
|
248
|
+
generation for reports and functions.
|
249
|
+
|
250
|
+
0.20.0
|
251
|
+
Significantly refactored the parser. Resource overrides now consistently
|
252
|
+
work anywhere in a class hierarchy.
|
253
|
+
|
254
|
+
The language was also modified somewhat. The previous export/collect syntax
|
255
|
+
is now used for handling virtual objects, and export/collect (which is still
|
256
|
+
experimental) now uses double sigils (@@ and <<| |>>).
|
257
|
+
|
258
|
+
Resource references (e.g., File["/etc/passwd"]) now have to be capitalized,
|
259
|
+
in fitting in with capitalizing type operations.
|
260
|
+
|
261
|
+
As usual, lots of other smaller fixes, but most of the work was in the language.
|
262
|
+
|
263
|
+
0.19.3
|
264
|
+
Fixing a bug in server/master.rb that causes the hostname
|
265
|
+
not to be available in locally-executed manifests.
|
266
|
+
|
267
|
+
0.19.2
|
268
|
+
Fixing a few smaller bugs, notably in the reports system.
|
269
|
+
|
270
|
+
Refreshed objects now generate an event, which can result in further
|
271
|
+
refreshes of other objects.
|
272
|
+
|
273
|
+
0.19.1
|
274
|
+
Fixing two critical bugs: User management works again and cron jobs are
|
275
|
+
no longer added to all user accounts.
|
276
|
+
|
277
|
+
0.19.0
|
278
|
+
Added provider support.
|
279
|
+
|
280
|
+
Added support for %h, %H, and %d expansion in fileserver.conf.
|
281
|
+
|
282
|
+
Added Certificate Revocation support.
|
283
|
+
|
284
|
+
Made dynamic loading pervasive -- nearly every aspect of Puppet will now
|
285
|
+
automatically load new instances (e.g., types, providers, and reports).
|
286
|
+
|
287
|
+
Added support for automatic distribution of facts and plugins (custom types).
|
288
|
+
|
1
289
|
0.18.4
|
2
290
|
Another bug-fix release. The most import bug fixed is that
|
3
291
|
cronjobs again work even with initially empty crontabs.
|
data/README
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
Documentation (and detailed install instructions) can be found
|
2
|
-
online at http://reductivelabs.com/
|
2
|
+
online at http://reductivelabs.com/trac/puppet/wiki/DocumentationStart .
|
3
3
|
|
4
4
|
Generally, you need the following things installed:
|
5
5
|
|
@@ -24,4 +24,4 @@ Generally, you need the following things installed:
|
|
24
24
|
* Facter => 1.1.1
|
25
25
|
You can get this from http://reductivelabs.com/projects/facter
|
26
26
|
|
27
|
-
$Id: README
|
27
|
+
$Id: README 2113 2007-01-29 18:32:46Z ajax $
|
data/Rakefile
CHANGED
@@ -1,4 +1,6 @@
|
|
1
|
-
# Rakefile for Puppet
|
1
|
+
# Rakefile for Puppet -*- ruby -*-
|
2
|
+
|
3
|
+
$: << File.expand_path(File.join(File.dirname(__FILE__), 'lib'))
|
2
4
|
|
3
5
|
begin
|
4
6
|
require 'rake/reductive'
|
@@ -18,17 +20,19 @@ project = Rake::RedLabProject.new("puppet") do |p|
|
|
18
20
|
p.filelist = [
|
19
21
|
'install.rb',
|
20
22
|
'[A-Z]*',
|
21
|
-
'lib
|
23
|
+
'lib/puppet.rb',
|
24
|
+
'lib/puppet/**/*.rb',
|
22
25
|
'test/**/*.rb',
|
23
26
|
'bin/**/*',
|
24
27
|
'ext/**/*',
|
25
28
|
'examples/**/*',
|
26
29
|
'conf/**/*'
|
27
30
|
]
|
31
|
+
p.filelist.exclude("bin/pi", "bin/ralsh", "bin/filebucket")
|
28
32
|
|
29
33
|
p.add_dependency('facter', '1.1.0')
|
30
34
|
|
31
|
-
p.epmhosts = %w{culain}
|
35
|
+
#p.epmhosts = %w{culain}
|
32
36
|
p.sunpkghost = "sol10b"
|
33
37
|
p.rpmhost = "fedora1"
|
34
38
|
end
|
@@ -53,7 +57,7 @@ if project.has?(:gem)
|
|
53
57
|
'--title' << 'Puppet - Configuration Management' <<
|
54
58
|
'--main' << 'README' <<
|
55
59
|
'--line-numbers'
|
56
|
-
task.test_file = "test/
|
60
|
+
task.test_file = "test/Rakefile"
|
57
61
|
end
|
58
62
|
end
|
59
63
|
|
@@ -65,4 +69,73 @@ if project.has?(:epm)
|
|
65
69
|
end
|
66
70
|
end
|
67
71
|
|
68
|
-
|
72
|
+
rule(/_is_runnable$/) do |t|
|
73
|
+
available = false
|
74
|
+
executable = t.name.sub(/_is_runnable$/, '')
|
75
|
+
ENV['PATH'].split(':').each do |elem|
|
76
|
+
available = true if File.executable? File.join(elem, executable)
|
77
|
+
end
|
78
|
+
|
79
|
+
unless available
|
80
|
+
puts "You do not have #{executable} available in your path"
|
81
|
+
exit 1
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
file "debian" => :bzr_is_runnable do
|
86
|
+
system("bzr get http://www.hezmatt.org/~mpalmer/bzr/puppet.debian.svn debian") || exit(1)
|
87
|
+
end
|
88
|
+
|
89
|
+
task :check_build_deps => 'dpkg-checkbuilddeps_is_runnable' do
|
90
|
+
system("dpkg-checkbuilddeps") || exit(1)
|
91
|
+
end
|
92
|
+
|
93
|
+
task :debian_packages => [ "debian", :check_build_deps, :fakeroot_is_runnable ] do
|
94
|
+
system("fakeroot debian/rules clean") || exit(1)
|
95
|
+
system("fakeroot debian/rules binary") || exit(1)
|
96
|
+
end
|
97
|
+
|
98
|
+
|
99
|
+
def dailyfile(package)
|
100
|
+
"#{downdir}/#{package}/#{package}-daily-#{stamp}.tgz"
|
101
|
+
end
|
102
|
+
|
103
|
+
def daily(package)
|
104
|
+
edir = "/tmp/daily-export"
|
105
|
+
Dir.mkdir edir
|
106
|
+
Dir.chdir(edir) do
|
107
|
+
sh %{svn export http://reductivelabs.com/svn/#{package}/trunk #{package} >/dev/null}
|
108
|
+
sh %{tar cf - #{package} | gzip -c > #{dailyfile(package)}}
|
109
|
+
end
|
110
|
+
FileUtils.rm_rf(edir)
|
111
|
+
end
|
112
|
+
|
113
|
+
def downdir
|
114
|
+
ENV['DOWNLOAD_DIR'] || "/export/docroots/reductivelabs.com/htdocs/downloads"
|
115
|
+
end
|
116
|
+
|
117
|
+
def stamp
|
118
|
+
[Time.now.year, Time.now.month, Time.now.day].collect { |i| i.to_s}.join
|
119
|
+
end
|
120
|
+
|
121
|
+
pdaily = dailyfile("puppet")
|
122
|
+
fdaily = dailyfile("facter")
|
123
|
+
|
124
|
+
file pdaily do
|
125
|
+
daily("puppet")
|
126
|
+
end
|
127
|
+
|
128
|
+
file fdaily do
|
129
|
+
daily("facter")
|
130
|
+
end
|
131
|
+
|
132
|
+
task :daily => [pdaily, fdaily]
|
133
|
+
|
134
|
+
task :dailyclean do
|
135
|
+
Dir.glob("#{downdir}/*/*daily*.tgz").each do |file|
|
136
|
+
puts "Removing %s" % file
|
137
|
+
File.unlink(file)
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
# $Id: Rakefile 2354 2007-03-26 17:19:24Z luke $
|
data/bin/puppet
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
# = Usage
|
9
9
|
#
|
10
10
|
# puppet [-h|--help] [-V|--version] [-d|--debug] [-v|--verbose]
|
11
|
-
# [-l|--
|
11
|
+
# [-l|--logdest <file>] <file>
|
12
12
|
#
|
13
13
|
# = Description
|
14
14
|
#
|
@@ -22,7 +22,11 @@
|
|
22
22
|
# is also a valid long argument. For example, 'ssldir' is a valid configuration
|
23
23
|
# parameter, so you can specify '--ssldir <directory>' as an argument.
|
24
24
|
#
|
25
|
-
# See the configuration file
|
25
|
+
# See the configuration file documentation at
|
26
|
+
# http://reductivelabs.com/projects/puppet/reference/configref.html for
|
27
|
+
# the full list of acceptable parameters. A commented list of all
|
28
|
+
# configuration options can also be generated by running puppet with
|
29
|
+
# '--genconfig'.
|
26
30
|
#
|
27
31
|
# debug::
|
28
32
|
# Enable full debugging.
|
@@ -35,7 +39,7 @@
|
|
35
39
|
# /etc/puppet/classes.txt), and setting this option causes all of those classes
|
36
40
|
# to be set in your +puppet+ manifest.
|
37
41
|
#
|
38
|
-
#
|
42
|
+
# logdest::
|
39
43
|
# Where to send messages. Choose between syslog, the console, and a log file.
|
40
44
|
# Defaults to sending messages to the console.
|
41
45
|
#
|
@@ -56,18 +60,10 @@
|
|
56
60
|
# Licensed under the GNU Public License
|
57
61
|
|
58
62
|
require 'puppet'
|
59
|
-
require 'puppet/
|
60
|
-
require 'puppet/client'
|
63
|
+
require 'puppet/network/handler'
|
64
|
+
require 'puppet/network/client'
|
61
65
|
require 'getoptlong'
|
62
66
|
|
63
|
-
$haveusage = true
|
64
|
-
|
65
|
-
begin
|
66
|
-
require 'rdoc/usage'
|
67
|
-
rescue LoadError
|
68
|
-
$haveusage = false
|
69
|
-
end
|
70
|
-
|
71
67
|
options = [
|
72
68
|
[ "--debug", "-d", GetoptLong::NO_ARGUMENT ],
|
73
69
|
[ "--help", "-h", GetoptLong::NO_ARGUMENT ],
|
@@ -89,6 +85,7 @@ verbose = false
|
|
89
85
|
noop = false
|
90
86
|
logfile = false
|
91
87
|
loadclasses = false
|
88
|
+
logset = false
|
92
89
|
|
93
90
|
code = nil
|
94
91
|
|
@@ -96,8 +93,6 @@ master = {
|
|
96
93
|
:Local => true
|
97
94
|
}
|
98
95
|
|
99
|
-
Puppet::Log.newdestination(:console)
|
100
|
-
|
101
96
|
begin
|
102
97
|
result.each { |opt,arg|
|
103
98
|
case opt
|
@@ -105,7 +100,7 @@ begin
|
|
105
100
|
puts "%s" % Puppet.version
|
106
101
|
exit
|
107
102
|
when "--help"
|
108
|
-
if
|
103
|
+
if Puppet.features.usage?
|
109
104
|
RDoc::usage && exit
|
110
105
|
else
|
111
106
|
puts "No help available unless you have RDoc::usage installed"
|
@@ -123,7 +118,8 @@ begin
|
|
123
118
|
loadclasses = true
|
124
119
|
when "--logdest"
|
125
120
|
begin
|
126
|
-
Puppet::Log.newdestination(arg)
|
121
|
+
Puppet::Util::Log.newdestination(arg)
|
122
|
+
logset = true
|
127
123
|
rescue => detail
|
128
124
|
$stderr.puts detail.to_s
|
129
125
|
end
|
@@ -133,30 +129,22 @@ begin
|
|
133
129
|
}
|
134
130
|
rescue GetoptLong::InvalidOption => detail
|
135
131
|
$stderr.puts "Try '#{$0} --help'"
|
136
|
-
#if $haveusage
|
137
|
-
# RDoc::usage(1,'usage')
|
138
|
-
#end
|
139
132
|
exit(1)
|
140
133
|
end
|
141
134
|
|
135
|
+
unless logset
|
136
|
+
Puppet::Util::Log.newdestination(:console)
|
137
|
+
end
|
138
|
+
|
142
139
|
client = nil
|
143
140
|
server = nil
|
144
141
|
|
145
|
-
|
146
|
-
trap(signal) do
|
147
|
-
Puppet.notice "Caught #{signal}; shutting down"
|
148
|
-
[client, server].each { |obj|
|
149
|
-
if obj
|
150
|
-
obj.shutdown
|
151
|
-
end
|
152
|
-
}
|
153
|
-
end
|
154
|
-
end
|
142
|
+
Puppet.settraps
|
155
143
|
|
156
144
|
if debug
|
157
|
-
Puppet::Log.level = :debug
|
145
|
+
Puppet::Util::Log.level = :debug
|
158
146
|
elsif verbose
|
159
|
-
Puppet::Log.level = :info
|
147
|
+
Puppet::Util::Log.level = :info
|
160
148
|
end
|
161
149
|
|
162
150
|
# Now parse the config
|
@@ -170,7 +158,11 @@ Puppet.genmanifest
|
|
170
158
|
if code
|
171
159
|
master[:Code] = code
|
172
160
|
else
|
173
|
-
|
161
|
+
if ARGV.length > 0
|
162
|
+
master[:Manifest] = ARGV.shift
|
163
|
+
else
|
164
|
+
master[:Code] = STDIN.read
|
165
|
+
end
|
174
166
|
end
|
175
167
|
|
176
168
|
# Allow users to load the classes that puppetd creates.
|
@@ -187,8 +179,8 @@ if loadclasses
|
|
187
179
|
end
|
188
180
|
|
189
181
|
begin
|
190
|
-
server = Puppet::
|
191
|
-
client = Puppet::Client
|
182
|
+
server = Puppet::Network::Handler.master.new(master)
|
183
|
+
client = Puppet::Network::Client.master.new(
|
192
184
|
:Master => server,
|
193
185
|
:Cache => false
|
194
186
|
)
|
@@ -199,7 +191,7 @@ begin
|
|
199
191
|
client.apply
|
200
192
|
rescue => detail
|
201
193
|
$stderr.puts detail
|
202
|
-
if Puppet[:
|
194
|
+
if Puppet[:trace]
|
203
195
|
puts detail.backtrace
|
204
196
|
end
|
205
197
|
exit(1)
|