summaryrefslogtreecommitdiffstats
path: root/spec/unit
Commit message (Collapse)AuthorAgeFilesLines
...
| * This is the first version where mongrel and webrick are reliably startable ↵Rick Bradley2008-04-112-11/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and stoppable via Puppet::Network::Server. Added a network/server integration spec, testing startup, shutdown, reachability, and collision of webrick and mongrel servers in the new network code. Converted Puppet::Network::HTTP::Handler class to a module, as mongrel Handler should be subclassed; converting subclasses to include the module instead. Mongrel will actually stop if you .stop it, graceful_shutdown didn't seem quite so reliable. Webrick requires running in its own Thread to avoid hanging the entire process; this requires introduction of a Mutex to make things safe. We're only supporting the REST protocol. Made this explicit. Fixed http server setup args, w/ specs, ah the glory of integration testing.
| * the indirector will not serve xmlrpc (this is the responsibility of the ↵Rick Bradley2008-04-112-14/+4
| | | | | | | | legacy networking code; it was a mistake to include stubbed support for it in the new code); removing
* | Merge branch '0.24.x'Luke Kanies2008-04-1135-942/+1179
|\|
| * Modified the 'master' handler to use the Catalog class toLuke Kanies2008-04-112-52/+9
| | | | | | | | | | | | | | | | | | | | compile node configurations, rather than using the Configuration handler, which was never used directly. I removed the Configuration handler as a result. Modified the 'master' handler (responsible for sending configurations to clients) to always return Time.now as its compile date, so configurations will always get recompiled.
| * Removed the code from the client that tries to avoid recompilingLuke Kanies2008-04-101-25/+0
| | | | | | | | | | | | the catalog. The client will now always recompile, assuming it can reach the server. It will still use the cached config if there's a failure.
| * Fixing #1173 -- classes and definitions can now have the sameLuke Kanies2008-04-101-1/+1
| | | | | | | | name as a directory with no failures.
| * Fixing #1173 -- classes and definitions can now have the sameLuke Kanies2008-04-101-0/+9
| | | | | | | | name as a directory with no failures.
| * Fixing the expire method (it wasn't using a requestLuke Kanies2008-04-101-8/+30
| | | | | | | | | | | | internally), and fixing the Facts class so it auto-expires any associated cached nodes when facts are saved.
| * Moved the request creation into the IndirectionLuke Kanies2008-04-102-183/+220
| | | | | | | | | | | | class instead of the Indirector module. Also, added an 'expire' method to the indirector, so there's an easy way to expire cached instances.
| * Ported the rest of the indirection terminuses over toLuke Kanies2008-04-089-141/+82
| | | | | | | | expecting requests instead of having a random interface.
| * Intermediate commit.Luke Kanies2008-04-0816-278/+301
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds a Request instance into the indirection, pushing it all the way to the terminus instances. It's a big commit because it requires modifying every terminus class. There are still some thorny design issues. In particular, who should be responsible for making the request object? I've tried having both the indirection class and the Indirector module creating it, and both have their issues. Also, the Catalog class previously allowed passing Node instances directly to the find method, which is now no longer possible because the Request class would treat the node as the instance being found. We need the request class to have two modes, one when it's passed an instance and one when it's passed a key.
| * Fixing some tests that were failing because new base typesLuke Kanies2008-04-081-31/+39
| | | | | | | | | | were added to Naginator, but no new related resource types were added.
| * Adding the ability for indirection requests to be createdLuke Kanies2008-04-081-0/+15
| | | | | | | | with instances instead of just keys.
| * Fixing the tests that were failing because of the useLuke Kanies2008-04-081-95/+109
| | | | | | | | of the indirection request object.
| * Adding a Request class to the Indirection layer. ThisLuke Kanies2008-04-082-82/+169
| | | | | | | | | | | | | | | | | | class is currently only used internally by the Indirection instances, but I expect that I will soon be pushing it to all of the terminus types. I still need to fix a couple of tests that will get broken by this commit.
| * Fixing one other test that was failing because of the changeLuke Kanies2008-04-081-3/+1
| | | | | | | | to Indirection#destroy.
| * Changing how destroy works, just a bit -- it now acceptsLuke Kanies2008-04-082-13/+9
| | | | | | | | | | the name of the instance to be destroyed, rather than the instance itself.
| * Reworking the caching layer to use TTLs instead of versionsLuke Kanies2008-04-081-442/+485
| | | | | | | | | | | | based on timestamps. This just modifies the indirection class itself, there is still some work to do to remove version code from other classes.
| * Adding an envelope module to handle indirected instanceLuke Kanies2008-04-081-0/+47
| | | | | | | | expiration.
| * Making a test executableLuke Kanies2008-04-081-0/+0
| |
| * Used stubs to decouple our code behavior from the behavior of the underlying ↵Paul Lathrop2008-04-071-19/+23
| | | | | | | | filesystem, as well as removing the need to sleep (which caused the tests to take a long time).
| * Merge branch '0.24.x' of git://reductivelabs.com/puppet into unit-testsPaul Lathrop2008-03-3110-10/+10
| |\
| | * Fixes #1148 - replaces #!/usr/bin/ruby with #!/usr/bin/env ruby.Paul Lathrop2008-03-2810-10/+10
| | |
| * | Added some more tests for loadedfile, based off the old unit tests.Paul Lathrop2008-03-251-2/+23
| | |
| * | Added rspec tests for loadedfilePaul Lathrop2008-03-241-0/+40
| |/
* | Fixing tests that were failing as a result of the merge,Luke Kanies2008-04-014-49/+2
| | | | | | | | | | including removing some now-obsolete code and tests from the Settings class.
* | Merge branch 'master' into master_no_global_resourcesLuke Kanies2008-03-3159-3188/+5183
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: lib/puppet/node/catalog.rb lib/puppet/type/pfile.rb lib/puppet/type/pfilebucket.rb lib/puppet/util/filetype.rb spec/unit/node/catalog.rb spec/unit/other/transbucket.rb spec/unit/ral/provider/mount/parsed.rb spec/unit/ral/types/file.rb spec/unit/ral/types/interface.rb spec/unit/ral/types/mount.rb spec/unit/ral/types/package.rb spec/unit/ral/types/schedule.rb spec/unit/ral/types/service.rb test/language/compile.rb test/language/lexer.rb test/language/snippets.rb test/lib/puppettest.rb test/ral/types/basic.rb test/ral/types/cron.rb test/ral/types/exec.rb test/ral/types/file.rb test/ral/types/file/target.rb test/ral/types/filebucket.rb test/ral/types/fileignoresource.rb test/ral/types/filesources.rb test/ral/types/group.rb test/ral/types/host.rb test/ral/types/parameter.rb test/ral/types/sshkey.rb test/ral/types/tidy.rb test/ral/types/user.rb test/ral/types/yumrepo.rb
| * | Merge branch '0.24.x'Luke Kanies2008-03-256-102/+172
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: install.rb lib/puppet/defaults.rb man/man8/puppet.8
| | * Moved the configuration of the Node cache to the puppetmasterdLuke Kanies2008-03-241-2/+2
| | | | | | | | | | | | | | | executable, since it otherwise causes caches to be used in all cases, which we don't want (e.g., bin/puppet was using them).
| | * Fixing #1138 -- the yamldir is automatically created by theLuke Kanies2008-03-241-1/+0
| | | | | | | | | | | | | | | server now that it's in the :puppetmasterd section rather than a separate :yaml section.
| | * Disabling http keep-alive as a means of preventing #1010.Luke Kanies2008-03-242-96/+161
| | | | | | | | | | | | | | | | | | | | | There is now a constant in Puppet::Network::HttpPool that will disable or enable this feature, but note that we determined that it can cause corruption, especially in file serving (but it's client-side corruption).
| | * Fixing a test I broke with my fix to #1147Luke Kanies2008-03-201-3/+3
| | |
| | * Fixed #1147: Cached nodes are correctly considered out ofLuke Kanies2008-03-201-0/+6
| | | | | | | | | | | | | | | | | | date if the node facts have been updated (thus causing node facts to again be available in manifests, for those cases where they were not).
| * | Merge branch '0.24.x'Luke Kanies2008-03-2010-74/+193
| |\|
| | * Fixing some tests that only failed under certainLuke Kanies2008-03-182-7/+8
| | | | | | | | | | | | | | | circumstances (mostly, when loaded with other files, or when loaded from rake or autotest rather than separately).
| | * Refactoring how the catalog creation handles errors.Luke Kanies2008-03-182-15/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, if there were an error creating a resource, the error would propagate leaving any previously created resources still in memory. Now, resources are removed by default when an error happens during instantiation, and the error propagates to the caller so that they can log or whatever. This also allows the Settings class to correctly and separately handle the cases where we can't create the catalog (which should never happen in normal usage but was happening because of this error -- later catalogs couldn't be created because earlier catalogs left resources lying around) from those where we can't apply the catalog.
| | * Settings now (again?) do not use a section more thanLuke Kanies2008-03-181-0/+13
| | | | | | | | | | | | once, which should make the system a bit more efficient.
| | * Removing explicit requires of types and providers,Luke Kanies2008-03-182-6/+1
| | | | | | | | | | | | | | | | | | because they were conflicting with Puppet's autoloading. This is clearly a sign that our autoloading is silly, if Ruby's own loading easily makes it unhappy.
| | * Hopefully *finally* fixed the "already being managed" problemLuke Kanies2008-03-181-1/+29
| | | | | | | | | | | | | | | | | | (#1036). The problem only cropped up if there was a failure when trying to manage the system -- this would cause the setting-based resources not to get cleaned up.
| | * Modified the ldap node terminus to also use the facts versionLuke Kanies2008-03-161-0/+7
| | | | | | | | | | | | | | | as the version for a node, which should similarly encourage the use of the yaml cache. (Related to #1130)
| | * Caching node information in yaml (I figured caching in memory willLuke Kanies2008-03-162-44/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cause ever-larger memory growth), and changing the external node terminus to use the version of the facts as their version. This will usually result in the cached node information being used, instead of always hitting the external node app during file serving. Note that if the facts aren't changed by the client, then this will result in the cached node being used, but at this point, the client always updates its facts. (#1130)
| | * Modifying the yaml terminus base class to use the timestampLuke Kanies2008-03-161-1/+11
| | | | | | | | | | | | of the yaml file as the version of the object.
| | * Fixing #1118 -- downloading plugins and facts now ignores noop.Luke Kanies2008-03-131-0/+38
| | | | | | | | | | | | | | | | | | Note that this changes the behaviour a bit -- the resource's noop setting always beats the global setting (previously, whichever was true would win).
| * | Merge branch '0.24.x'Luke Kanies2008-03-074-88/+276
| |\|
| | * Merge commit 'andrew/0.24.x' into 0.24.xLuke Kanies2008-03-061-0/+2
| | |\
| | | * Fix for 1094Luke Kanies2008-03-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Replace the catalog with the newly created one when converting to ral types. The aliases were being lost because the resources had references to the old catalog being converted
| | * | Fixing the rest of #1113: External node commands can specifyLuke Kanies2008-03-061-0/+6
| | | | | | | | | | | | | | | | an environment and Puppet will now use it.
| | * | Partially fixing #1113: LDAP nodes now support environments,Luke Kanies2008-03-061-83/+112
| | | | | | | | | | | | | | | | and the schema has been updated accordingly.
| | * | Always duplicating resource defaults in the parser, so thatLuke Kanies2008-03-061-5/+156
| | |/ | | | | | | | | | | | | | | | stacked metaparameter values do not result in all resources that receive a given default also getting those stacked values.
| * | Merge branch '0.24.x'Luke Kanies2008-03-0517-275/+317
| |\|