summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-01-06puppet (3.7.2-1+dyson1) unstable; urgency=mediumHEADdyson/3.7.2-1+dyson1masterIgor Pashev1-0/+8
* Package for Dyson * Added SMF services * Use dh-smf on illumos, dh-systemd on linux
2015-01-06Use dh-smf on illumosIgor Pashev2-2/+13
2015-01-06Added SMF manifestsIgor Pashev2-0/+73
2014-10-24releasing package puppet version 3.7.2-1debian/3.7.2-1Stig Sandbeck Mathisen1-2/+3
2014-10-24Declare compliance with Debian Policy 3.9.6Stig Sandbeck Mathisen1-1/+1
2014-10-24Imported upstream release 3.7.2Stig Sandbeck Mathisen1-0/+6
2014-10-24Merge tag 'upstream/3.7.2'Stig Sandbeck Mathisen59-229/+968
Upstream version 3.7.2 # gpg: Signature made Fri 24 Oct 2014 01:27:51 PM CEST # gpg: using DSA key 0x40E354D9FA26E2EE # gpg: Good signature from "Stig Sandbeck Mathisen <ssm@fnord.no>" [ultimate] # gpg: aka "Stig Sandbeck Mathisen <ssm@debian.org>" [ultimate] # gpg: aka "Stig Sandbeck Mathisen <stigsm@gmail.com>" [ultimate] # gpg: aka "Stig Sandbeck Mathisen <ssm@linpro.no>" [ultimate] # gpg: aka "Stig Sandbeck Mathisen <ssm@online.no>" [ultimate] # gpg: aka "Stig Sandbeck Mathisen <ssm@redpill-linpro.com>" [ultimate]
2014-10-24Imported Upstream version 3.7.2upstream/3.7.2Stig Sandbeck Mathisen59-229/+968
2014-10-21(packaging) Update PUPPETVERSION to 3.7.2Rob Reynolds1-1/+1
2014-10-21Merge pull request #3215 from joshcooper/ticket/stable/PUP-3467-reject-sslv3Adrien Thebo4-11/+52
(PUP-3467) Reject SSLv3
2014-10-20(PUP-3467) Reject SSLv3 when initiating SSL connectionsJosh Cooper2-2/+14
Previously, when puppet initiated SSL connections, e.g. puppet agent, puppet module, etc, it could downgrade to SSLv3. This commit ensures puppet will not downgrade to SSLv3 by setting the `OpenSSL::SSL::OP_NO_SSLv3` bit. However, unlike SSLv2, we cannot remove SSLv3 ciphersuites, since they are the same ones used in TLSv1. From the openssl ciphers man page, "The TLSv1.0 ciphers are flagged with SSLv3". [1] https://www.openssl.org/docs/ssl/SSL_CIPHER_get_name.html
2014-10-20(PUP-3467) Update webrick ciphersuites to match passengerJosh Cooper2-7/+28
Previously, puppet's webrick server did not specify which ciphersuites it would accept. Depending on the ruby and openssl, the default set of ciphersuites is: $ ruby -ropenssl -e 'puts OpenSSL::SSL::SSLContext::DEFAULT_PARAMS[:ciphers]' ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW Note that "ALL:!ADH" does not exclude AECDH, and the default param string includes "LOW", e.g. DES-CBC-SHA. This commit updates the webrick ciphersuites to match the value used in passenger in commit 204b2974b. The resulting ciphersuites are: [["DHE-RSA-AES256-GCM-SHA384", "TLSv1/SSLv3", 256, 256], ["DHE-RSA-AES256-SHA256", "TLSv1/SSLv3", 256, 256], ["ECDHE-RSA-AES256-GCM-SHA384", "TLSv1/SSLv3", 256, 256], ["ECDHE-RSA-AES256-SHA384", "TLSv1/SSLv3", 256, 256], ["DHE-RSA-AES128-GCM-SHA256", "TLSv1/SSLv3", 128, 128], ["DHE-RSA-AES128-SHA256", "TLSv1/SSLv3", 128, 128], ["ECDHE-RSA-AES128-GCM-SHA256", "TLSv1/SSLv3", 128, 128], ["ECDHE-RSA-AES128-SHA256", "TLSv1/SSLv3", 128, 128], ["DHE-RSA-CAMELLIA256-SHA", "TLSv1/SSLv3", 256, 256], ["DHE-RSA-AES256-SHA", "TLSv1/SSLv3", 256, 256], ["ECDHE-RSA-AES256-SHA", "TLSv1/SSLv3", 256, 256], ["DHE-RSA-CAMELLIA128-SHA", "TLSv1/SSLv3", 128, 128], ["DHE-RSA-AES128-SHA", "TLSv1/SSLv3", 128, 128], ["ECDHE-RSA-AES128-SHA", "TLSv1/SSLv3", 128, 128], ["CAMELLIA256-SHA", "TLSv1/SSLv3", 256, 256], ["AES256-SHA", "TLSv1/SSLv3", 256, 256], ["CAMELLIA128-SHA", "TLSv1/SSLv3", 128, 128], ["AES128-SHA", "TLSv1/SSLv3", 128, 128]]
2014-10-20(PUP-3467) Reject SSLv3 connections in webrickJosh Cooper2-2/+10
Webrick will now reject SSLv3 connections. If an SSL client tries to connection with SSLv3, webrick+openssl will issue an sslv3 alert handshake failure.
2014-10-17Merge pull request #3210 from ↵Henrik Lindberg9-56/+64
zaphod42/issue/stable/pup-3201-incorrect-string-for-undef (PUP-3201) Stop using :undef for parameters in 4x
2014-10-16(PUP-3201) Stop using :undef for parameters in 4xAndrew Parker8-44/+51
The :undef symbol was still leaking all over the place internally. This caused type inference to sometimes end up with Runtime[ruby, Symbol]. By using nil instead of :undef, everything can be much more straightforward. Once the code removal for puppet 4 comes into play even more oddities around how resource parameters are handled can be performed.
2014-10-16(maint) Only test lookup() with future parserAndrew Parker1-12/+13
The lookup function only works when the future parser is in effect. This changes the spec tests to turn on the future parser.
2014-10-16Merge branch 'issue/stable/pup-3277-envdir-perms' into stableJosh Partlow2-3/+6
* issue/stable/pup-3277-envdir-perms: (PUP-3277) Ensure agents re-enabled after disable agent test (PUP-3277) Use owner from puppet settings rather than beaker defaults
2014-10-16(PUP-3277) Ensure agents re-enabled after disable agent testJosh Partlow1-0/+3
And a step in the agent_disable_lockfile step to ensure that agents are re-enabled. This should insulate subsequent tests from a failure partway through agenet_disable_lockfile leaving disabled agents in its wake.
2014-10-16(PUP-3277) Use owner from puppet settings rather than beaker defaultsJosh Partlow1-3/+3
The beaker host['user'] default setting is root, but the actual user setting from puppet defaults is likely to be puppet or pe-puppet. By using the puppet settings, we are more likely to stay in sync with how the files are being set by packaging or managed by puppet or supporting puppetlabs modules. This should cut down on spurious changes to environment owner/modes that were cropping up in some pe test runs.
2014-10-16Merge pull request #3195 from hlindberg/PUP-3401_fix-pattern-typeAndrew Parker2-3/+35
(PUP-3401) Fix type calculations of "all Patterns"
2014-10-15Merge pull request #3197 from ↵Josh Partlow3-3/+71
hkenney/issue/stable/pup-3334_fix_environment_conf_not_changing_issue (PUP-3334) Fix issue around settings not updating with environment.conf
2014-10-15(PUP-3334) Add test to ensure cache is clearedHailee Kenney2-2/+51
In order to ensure that we don't encounter this issue again, add a test case to environments_spec to ensure that the cache is being properly cleared. Additionally, fix a small bug in environment's list method where a string should been converted to a symbol.
2014-10-15(PUP-3334) Clear environment settings cachesHailee Kenney2-1/+20
Prior to this commit, environment settings were not being updated when environment.conf was changed, even if environment timeout had expired. This was because they were being cached in places in Puppet.settings that were not being cleared. Now, all the cached data for a particular environment is cleared when the environment timeout expires.
2014-10-15Merge pull request #3164 from ↵Kylo Ginsberg6-2/+70
ffrank/ticket/3.7.x/PUP-3357-purge-unnamed-ssh-keys (PUP-3357) purge unnamed ssh keys
2014-10-15(PUP-3357) integration test for purging of unnamed ssh authorized keysFelix Frank1-1/+22
Add an integration test with an ssh keyfile in which two keys have no name and make sure that both are successfully purged.
2014-10-15(PUP-3357) unit tests for the purging of multiple unnamed keysFelix Frank3-0/+21
Just makes sure that the user type and ssh_authorized_keys provider generate pseudo-names for keys following the same pattern.
2014-10-15(PUP-3357) generate implicit names for ssh_authorized_keys if neededFelix Frank2-1/+27
Generated resources from the user type share an empty resource name if more than one unmanaged key has no comment in the authorized_keys file (the comment is used for the namevar). This leads to duplicate declaration errors when the user tries to purge those keys through the user { purge_ssh_keys } parameter. Make the provider use an internal pseudo-name in such cases. Generated resources get the same respective pseudo-name for successful purging. It is composed of the file name and a numeric index.
2014-10-15(PUP-3401) Fix type calculations of "all Patterns"Henrik Lindberg2-3/+35
The type calculator did not correctly compute assignability for a non parameterized Pattern. Such a Pattern is equal to "any string", and is thus assignable from any other Pattern, Enum or String. This was missing in the calculator and this resulted in Pattern neither being equal to, less than, or greater than parameterized patterns.
2014-10-14(PUP-3244) Fixup test for windows and future parserJosh Cooper1-4/+4
The test failed on windows nodes because the acceptance test wasn't using the `puppet` method from beaker. The test failed on future parser due to the bare file mode, in 4.0 only string modes will be allowed. This commit fixes up those issues, and removes the `acceptable_exit_codes => [0]` since that is the default behavior.
2014-10-14Merge pull request #3194 from zaphod42/issue/stable/pup-3201-undef-not-workingHenrik Lindberg3-4/+26
(PUP-3201) Treat :undef as PNilType
2014-10-14Merge branch 'issue/stable/pup-3244-acceptance-enc-needs-hashbang' into stableJosh Partlow1-17/+20
* issue/stable/pup-3244-acceptance-enc-needs-hashbang: (PUP-3244) Add a hashbang line to the acceptance test enc (maint) Fix typo in test name
2014-10-14Merge pull request #3188 from hlindberg/PUP-3345-memory-leakAndrew Parker6-8/+322
(PUP-3345) Fix memory leak (and add some tooling to find leaks)
2014-10-14(maint) Allow catalog_memory to be skipped on < 2.1.0Andrew Parker1-2/+2
The previous attempt to skip catalog_memory on < 2.1.0 caused the `rake benchmark:all:run` task to abort because of a failed command. By changing the exit to 0, rake is allowed to continue.
2014-10-14(PUP-3244) Add a hashbang line to the acceptance test encJosh Partlow1-17/+20
Ruby's Kernel.exec has different behavior on different platforms when handling a script without a hashbang line. On rhel6, for instance: [root@a3m9lej0pifviyl ~]# cat /root/test echo 'foo' [root@a3m9lej0pifviyl ~]# /root/test arg foo [root@a3m9lej0pifviyl ~]# irb irb(main):001:0> exec('/root/test', 'arg') Errno::ENOEXEC: Exec format error - /root/test from (irb):1:in `exec' from (irb):1 from :0 This seems to depend on how the underlying platforms exec functions handle this case. Rewriting the enc as a ruby file with a hashbang line sidesteps this issue and allows the test to run. Also dropped the environment.conf usage since it seemed superfluous.
2014-10-14(maint) Fix typo in test nameJosh Partlow1-0/+0
2014-10-13Merge pull request #3191 from ↵Josh Partlow1-4/+6
zaphod42/maint/stable/agent-errors-on-invalid-env-in-cached-catalog (maint) Always use a remote env in the configurer
2014-10-13(maint) Always use a remote env in the configurerAndrew Parker1-4/+6
Before this commit the configurer would track the appropriate environment to request from the master in the `@environment` variable. This contained simply the name of the remote environment. The value was passed through to various indirection requests as the `:environment` parameter. However, as part of PUP-3244, something changed that caused the configurer to begin failing when * The requested environment did not exist remotely * There was a cached catalog locally * The cached catalog referenced an environment that did not exist locally This situation caused the indirector requests to contain an environment name that the Puppet::Indirector::Request code would then try to expand into a full environment instance by calling `Puppet.lookup(:environments).get!(env)`. However, since the environment didn't exist locally the `get!` method raised an error. This commit changes it so that the configurer always converts the `@environment`, which is always the environment from the server for the current run, to `Puppet::Node::Environment.remote`. This stops `Puppet::Indirector::Request` from trying to load the environment locally. I don't know how this ever worked...
2014-10-14(maint) Make catalog_memory a noop unless running on 2.1.0.Henrik Lindberg2-0/+13
This makes the catalog_memory benchmark print a message about 2.1.0 being required and then exit with -1 unless the ruby version is >= than 2.1.0.
2014-10-13Merge pull request #3187 from ↵Rob Reynolds2-22/+45
zaphod42/issue/stable/pup-3244-error-when-agent-uses-missing-env (PUP-3244) Allow autoload to handle missing environment
2014-10-13(maint) Separate test for missing module directoryAndrew Parker1-2/+7
The test of behavior when a module directory is specified as part of an environment but is missing on disk was hidden inside another test. This splits it out and calls out that the behavior is that the directory is simply ignored.
2014-10-13(PUP-3345) Fix memory leak / remove cache of "non-deprecation" resourceHenrik Lindberg1-8/+1
A memory leak was introduced by caching all resource types that does not handle deprecations (all types but one). This caused the problem because the cache was held as a class instance variable and was never evacuated. This changes the Puppet::Resource class to not cache non-deprecation resources.
2014-10-13(maint) Add memwalk.rake task that outputs a graph of bound objectsHenrik Lindberg1-0/+194
This adds a command that processes the dumped heap information produced by "catalog_memory" benchmark (or other similar heap-dumps). The result is a .dot file that can be rendered. This tool is useful when tracking a memory leak.
2014-10-13(maint) Add "catalog_memory" benchmark to output heap and show mem infoHenrik Lindberg4-0/+114
This adds a benchmark "catalog_memory" that is running an empty catalog (one call to log). A baseline sample of memory is taken at first run, and at last. A diff of bound objects is produced. Two heap dumps in json formats "diff.json", and "heap.json" are produced. The diff contains the dump of each bound object, and the heap a dump of all objects. The benchmark also prints basic information about memory.
2014-10-13(PUP-3244) Allow autoload to handle missing environmentAndrew Parker2-21/+39
When a previous commit changed from get() to get!() the agent stopped being able to use an environment that is available on the master, but not available locally. I had misread the code and missed a trailing `&&`. This caused me to think that the environment lookup in this case was required, where in fact it is still optional. This changes the structure of the code to make it much clearer that the environment is optional, changes from get!() to get(), and adds some tests around these code paths.
2014-10-13Merge pull request #3182 from demophoon/fix/stable/pup-3244Rob Reynolds2-3/+16
(PUP-3244) ENC ignores missing directory environments
2014-10-13Merge pull request #3179 from ferventcoder/ticket/stable/PUP-3244-enc-cached-getRob Reynolds2-8/+22
(PUP-3244) ENC directory environments - Remove unnecessary Cached.get!
2014-10-12(PUP-3244) Remove unnecessary Cached.get!Rob Reynolds1-0/+22
This removes a function that was provided by the super class.
2014-10-12(PUP-3244) Remove redundant methods and refactor.Britt Gresham3-15/+17
Before this commit the Puppet::Environments::Cached#get! was not needed as it was defined in a parent class. Puppet::Environments::Combined#get! now calls get! in environment objects instead of assuming how get! should work. This commit also refactors areas in the code where Puppet::Environments::EnvironmentNotFound was raised after calling get in favor of the new get! method.
2014-10-10(PUP-3244) Remove unnecessary Cached.get!Rob Reynolds2-8/+22
This removes a function that was provided by the super class.
2014-10-10(PUP-3201) Treat :undef as PNilTypeAndrew Parker3-4/+26
For PUP-2857 :undef was changed from being a PNilType to a PRuntimeType. This stopped the undef literal in the language from being able to be assigned to Optional parameters. However, this only happened when the undef was the default expression for the parameter.