These are the new features, enhancements, resolved issues, and deprecations in this version of PE.
You can now manage patches on *nix and Windows nodes in the Patch Management section of the console. After setting up patching node groups, you can view the patch status for your nodes, filter available patches by type and operating system, and run a pre-filled task to apply patches to selected nodes from the Patches page. For information on configuring patch management and applying patches, see Managing patches.
Lockless code deploys
Using Code Manager, you can now optionally deploy code to versioned code directories rather than the live code directory. This change enables Puppet Server to continue serving catalog requests even as you deploy code.
You can enable lockless code deploys by setting
true. For more information about lockless code deploys, see
Deploy code without blocking requests to Puppet Server.
puppet infrastructure upgrade
When you specify more than one compiler to upgrade, the
upgrade compiler command now upgrades all compilers at the same time,
rather than sequentially. Additionally, with both the compiler and replica upgrade
commands, you can now specify the location of an authentication token other than the
default. For example:
puppet infrastructure upgrade compiler
More secure code deploys
Permissions for the Puppet code directory are now managed by file sync directly, instead of relying on symlinks. This change improves security during code deployment.
puppet infrastructure commands that
use the orchestrator
A new log file located at
/var/log/puppetlabs/installer/orchestrator_info.log contains run
puppet infrastructure commands that
use the orchestrator, including the commands to provision and upgrade compilers,
convert legacy compilers, and regenerate agent and compiler
Improved error handling for plans
Before running plans, the built-in check for node connectivity now provides more descriptive error messages, such as host key verification failures.
Unspecified default values for tasks and plans are supplied automatically
optionalin the console.
New scheduling options in the console
You can now specify scheduled tasks and Puppet jobs to run every two weeks or every four weeks.
Plan support for
apply() on pcp
Plans now support using the
apply_prep() function and
blocks of Puppet code within calls to
apply(). The feature is only available on targets
connected to PE using the PCP transport and does not
work on nodes connected over SSH or WinRM.
Support for new options in the command/deploy endpoint
This version adds support for these platforms
- macOS 10.15
Deprecations and removals
Razor removedRazor has been removed from PE in this release. If you want to continue using Razor, you can use the open source version of the tool.
bolt.yaml settings in plans
bolt.yaml are no longer read from the
environment directory. The
modulepath setting is
only configurable from
Support for these platforms is removed in this release:
- Enterprise Linux 6
- Ubuntu 16.04
Upgrade removed custom classification rules from PE Master node group
Custom rules that you used to classify compilers in the PE Master
node group were removed upon upgrade, or when you ran
Upgrade failed with a Could not retrieve facts error
Could not retrieve facts ... undefined method `split' for nil:NilClass (Puppet::Error)from /opt/puppetlabs/installer/lib/ruby/gems/2.5.0/gems/facter-4.0.20/lib/custom_facts/util/loader.rb:125:in `load'
Upgrading a replica could temporarily lock the agent on the master
If you tried to run Puppet on your master before the
puppet infrastructure upgrade replica command
completed, you could encounter an error that a Puppet
run was already in progress.
FIPS installs didn't fully support cert chain validation
In FIPS environments, RBAC could not connect to LDAP using a
Command to remove old PostgreSQL versions failed on Ubuntu
When run on Ubuntu nodes, the
puppet infrastructure run remove_old_postgresql_versions command
failed, erroneously reporting that PostgreSQL wasn't
Enabling a replica could fail immediately after provisioning
puppet infrastructure provision replica --enable, the
command could fail after the replica was provisioned but before it was enabled if
services on the replica were still starting up. The command now waits for services
to start and verifies that replication has completed before enabling the
Ubuntu 20.04 couldn't be installed with PE package management
Ubuntu 20.04 wasn't available for installation as a
pe_repo class, even though it was a supported
Loading plan lists crashed console services
When plan run results were large, the console crashed due to high memory usage on the
Plan details page. An optional results query parameter
has been added to the
GET/plan_jobs endpoint. This
parameter keeps you from experiencing high memory usage in the console when loading
results for large plan runs.
Default value for tasks and plans dropped in middleware
When a task had a default value of
null, the console metadata panel did not display the
Event inspector displayed wrong table types
Browsing the event inspector sometimes created inconsistencies in tables and errors in table links.