Fixes #11323 - fixed PID writing, interrupt trap and daemon logging
Fixes #10259 - Templates are now fully proxied
It was ignoring some parameters (MAC for bootdisk) as well as headers(HTTP_X_RHN_PROVISIONING_*).
Originally written by William Hefter, but completely redone from scratch.
fixes #11098: fixed ruby 1.8-specific issues around plugin and provider searches
Fixes #7008: dns providers are now plugins
fixes #10895: moved smart_proxy_chef-specific classes to the plugin itself
Fixes #10639 - stracktrace is reported via log_halt
Fixes #10116 - BMC is not able to use parameters passed in through body
Fixes #9740 - support foreman_url with path
Normalization of settings implemented by Dmitri Dolguikh <dmitri@appliedlogic.ca>
Refs #7849 - Avoid OpenSSL deprecation
deprecated openssl/x509 use: require "openssl" instead of "openssl/x509"
Fixes #8905 - bind_port config option
Fixes #7849 - re-factor trusted_hosts handling
On HTTPS we will get the FQDN from the client certificate and check against thelist.
While on HTTP we will perform both reverse DNS and forward DNS lookup to verifythe client may talk to us.
Additionally the forward_verify of DNS can be disabled.
Fixes #8853 - Actually redirect stderr to proxy error log
according to comment.
fixes #8811 - refactor per-module enabling of http(s) to http(s)_rackup
Fixes #8748 - Allow per-module enabling of http(s)
Fixes #8210 - Adding caching for smart-proxy puppet classes using Stefan Julin's implementation of cache
Refs #969 - Proxy-side changes for serving templates from the proxy
An update to @GregSutcliffe's original PR. Ports his original feature to the newplugin api.
Fixes #8006 - added STDOUT proxy log option
Fixes #7922 - promote uri and http to instance property
This will allow to re-use existing http connection for subsequentrequests.
fixes #7660: fixes first bunch of rubocop warnings
Fixes #7749 - allow using logger in log_halt helper
fixes #7596 - validate plugin dependencies when loading, various fixes
Fixes #7438: moved facter loading into the facter plugin descriptor
fixes #7297 - corrected name of DNS namespace in virsh error handlers
Refactored DNS and DHCP specifics back into the respective modules
fixes #7351: plugins no longer crash smart-proxy if they are missing either of rackup paths
fixes #7225: logger is now being correctly initialized during launch
fixes #7080: symbols are no longer being sorted
fixes #6522 - move request code out of chef module
The patch also moves foreman_ssl_ca, foreman_ssl_cert andforeman_ssl_key config options from Chef plugin config to global configand adds fallback to the ssl_* options if these are not defined.
fixes #6585 - Update Proxy::Util::CommandTask to handle Ruby 1.8 and 1.9+
In this update, use 'true' and 'false' to test $? return codes 0 and 1, respectively.In Ruby 1.8.x, the return code from Open3.popen3 is always 0, some errors will not be caught.
fixes #6289: avoids concurrent downloads of files with the same name and destination dir.
fixes #6341 - Add support for 64-bit MAC addresses
Fixes #4866: Breaking up monolithic smart-proxy into modules
Fixes #6086 - stop remote command execution and path exploit in TFTP API (CVE-2014-0007)
fixes #5675 - expect dns_key setting to be nil if not set
fixes #5856 - use public initializer for Puppet settings
Fixes #5907 - Look at all records when suggesting IPs
fixes #5677 - handle booleans from settings.yml as bools
Fixes #5739 - Only look at reservations when deleting a DHCP record
Fixes #5648 - Match the DHCP specification of last-lease-wins
Fixes #5712: Limit DHCP subnets for ISC if necessary
fixes #5561 pass arguments correctly in run puppet over ssh
fixes #5522 - future parser can be set in puppet.conf [main]
fixes #5239 - update for Puppet 3.5 future parser changes
fixes #5054 - Minor bug fixes to FreeIPA Smart Proxy
fixes #5123 - corrected string typos
fixes #5123 - IP only from the same subnet and range
fixes #5019 - puppet cert sudo command now configurable and optional
fixes #1809 - freeipa integration to smartproxy
fixes #4686 - don't rely on Puppet[:config] to store config file location
fixes #4661 - store hostname with virsh DHCP reservations
fixes #4658 - parse puppet.conf with augeas instead of puppet internals
refs #3874 - add which to wget call
refs #3699 - combine paths when running Foreman under a prefix
refs #3699 - fix typo in chef_proxy's authentication, overriding wrong variable
fixes #3991 - dnscmd provider for smart-proxy (Windows)
fixes #3943 - add simple virsh providers for libvirt DNS/DHCP
fixes #2878 - Import Classes when using parser = future, on Puppet 3.2+
fixes #3941 - Support for Junos ZTP
fixes #3874 - extend paths for FreeBSD support
fixes #3067 - add sparc solaris dhcp options for ISC
fixes #3936 added a method of running a custom tool, to trigger puppet.
fixes #3732 - Saltstack puppet provider, using 'salt host puppet.run'
fixes #3699 - chefproxy feature, proxies facts and reports to Foreman
fixes #3150 - adds ability to specify the user to invoke sudo as when calling mco/puppet kick
fixes #3173 - tell puppetca to use the configured ssl dir
fixes #2870 - Always empty PXEClient on native_ms
fixes #3048 - Add execution debug statement to the logs
fixes #3047 - added puppetrun over ssh support
fixes #3009 - add Proxy::Log to Proxy::DNS::Nsupdate class so 'logger.debug' works
fixes #2738 - handle multiple dynamic modulepaths
Fixes #2714 - corrected IO#popen parameter on ruby 1.8.7
fixes #2662 - Proxy::Util.escape_for_shell is being used in PuppetRun.run and MCollective.run methods
Fixes #2659 - Use gsub in a non-destructive manner
Fixes #2654 - Rewrite master as production when only one environment is found
fixes #2520 - defines default settings for dns and puppet
fixes #2614 - log messages regarding puppetrun via mcollective
Fixes #2119 - Properly support colon-separated modulepath
fixes #2523 - add missing require
fixes #2116 - mcollective support for the proxy to initialize puppetrun
fixes #1685 - GSS-TSIG support for DNS updates
Override the initialize method for the shell provider, as no connection setup is needed
fixes #2388 - The path to puppetca is /opt/puppet/sbin for PE.
fixes #2387 - Add shell provider to the BMC API
fixes #2067 - disable puppet's handling of 'import' to fix manifests containing it
fixes #2191 - undef in puppet class params is optional
Fixed bad indentation in the puppet clasS
fixes #2261 - fixes for CI testing under Ruby 1.9
Support minitest in Jenkins rake tasks, add rdoc and minitest deps due toold 1.9.2 versions. Fix PLATFORM under 1.9, fix 1.9.3 specific test.
Fixed CVE-2013-0210 and added test for new escape method
fixes #1674: Ignore commented lines when reading all certificates in autosign and make sure the autosign file contains a EOL on the last line
refs #1567 - fixed a copy paste error
fixes #2085 - load Puppet 3 app defaults for master mode too
Allows $confdir and other run mode specific settings to be initialised fromthe defaults present in Puppet::Util::RunMode. When requesting detail onclasses, the Puppet parser indirectly requests app level settings so both...
fixes #2114 Add warning if no environments found
fixes #2099 - fix handling of multiple module paths
Replace every occurrence of $confdir, not only the first one
fixes #2099 - interpolate $confdir if $environment not used
fixes #2077 - proxy should not return nil for parameters with a function call
in cases where puppet has class declaration such as:
class xyz($param = myfunction('p'))
the proxy would return a that param value is nil.this patch changes that, so it return it as a string, allowing users to know...
fixes #2031 - Remove dependency on net-ping
fixes #2016 Use a tmpfile+lockfile to avoid race conditions in IP suggestion
fixes #1983 - use /etc/puppet/puppet.conf by default
When initialising Puppet 3 settings directly, a config dir or file is required,so default to /etc/puppet/puppet.conf (as the puppetca code also does).
Fixes #1984 - explicitly call array.join when writing autosign.conf
fixes #1967 - missing require for Puppet constant
fixes #1915 - load environments from Puppet 3
Two changes to support loading environment settings from Puppet 3: