Puppet Enterprise 2018.1

These are the issues resolved in PE 2018.1.x.

Dynamic node matching using either start- or end-of-line regex erroneously showed no matches (2018.1.3)

When using a start-of-line anchor (^) or an end-of-line anchor ($) to dynamically match nodes in the console, no matches were found, even if matches existed. For example, if you had a node named jupiter, using a regex match (~) for iter shows 1 match, but using a regex match iter$ showed no matches.

Puppet runs were slow when the puppetlabs-puppetserver_gem was installed on the master (2018.1.3)

When the puppetlabs-puppetserver_gem was installed on the master, Puppet runs became markedly slower, with a long pause before the catalogue was applied.

MCollective was installed on new high availability replicas (2018.1.3)

MCollective was installed on new replicas even though the feature was deprecated and no longer installed on new masters beginning in 2018.1.0.

Enabling package data collection affected MCollective (2018.1.3)

When enabling package data collection to view a node's current package inventory, MCollective fact filtering would break. This has been fixed.

Certificate API requests deadlocked high availability replicas (2018.1.3)

Submitting a CA API request to a replica caused the replica to run out of free worker threads and deadlock.

Critical corruptive permissions issue with Windows installer for Puppet agents 1.10.13, 5.3.7, and 5.5.2 (2018.1.2)

Due to a critical issue with the Windows installer, Puppet agents 1.10.13, 5.3.7, and 5.5.2 could inadvertently change permissions on files across a Windows node's filesystem during installation or upgrade.

Upgrades failed on compile masters set to use cached catalogs (2018.1.2)

If use_cached_catalogs was set to true on a compile master, upgrade failed.

puppet generate types failed on the pe_java_ks module (2018.1.2)

Running puppet generate types on the pe_java_ks module resulted in an error.

PostgreSQL temporary file logging was excessive (2018.1.2)

PE-PostgreSQL logged an excess of temporary files created by a new PuppetDB query. With this release, temporary files are logged only if they're larger than the size specified by the PostgreSQLwork_mem setting.

Options missing from RBAC external directory page (2018.1.2)

Security protocols, hostname and wildcard validation, and other configuration options have been added to the External directory page in the console. Previously, you were required to configure these options through the directory service (ds) API endpoints.

Parameters missing from PXP agent class (2018.1.2)

The parameters task-download-connect-timeout and task-download-timeout have been added to the class puppet_enterprise::pxp_agent. For each parameter, set an integer that specifies how much time should pass before the connection or download times out.

Invalid URL appeared in analytics web service logging (2018.1.2)

The invalid URL http://null:null/analytics/v1 has been removed from the web service logging output message.

Slow response times for list of fact values (2018.1.2)

The drop-down list of facts, available when you write rules to assign nodes to a group, has been limited to 500 entries in order to improve response time. In previous releases, installations with large numbers of custom facts sometimes experienced slow response times to view this list.

Slow response times for node classification (2018.1.2)

An internal cache of the classes has been added to improve the response times from the classifier when creating and updating node groups. In previous releases, installations with large numbers of environments sometimes experienced slow response times.

Unquoted hyphens not permitted in identifiers (2018.1.2)

You can use hyphens without quotation marks when you enter identifiers in PE. For example, the following is valid task metadata: {"parameters": {"action": {"type": "Enum[com-start]"}}}. Previously, such an identifier would cause errors.

Disallowed  Code Manager proxy setting for the Forge

This release fixes a regression that disallowed the proxy key for the Code Managerforge_settings parameter.

Tasks that produce output with null bytes remain "in progress" after failing (2018.1)

Tasks that produce output with null bytes result in node failures rather than hanging the entire job run.

pcore-java uses java.util.regex instead of jruby/joni (2018.1)

Previously, the type checking for tasks using data types involving regular expressions could be exposed to subtle differences between the regexp implementations in Ruby and the implementations in JVM. The type system support running on Orchestrator has been updated to use the same regular expression implementation as JRuby. 

Note: This change may result in patterns accepting input that they did not before. In particular, /\w+/ matches partial strings; to restore the original behavior use anchors, for example, /\A\w+\z/.

Errors when creating node group UUIDs through the API (2018.1)

Previously, if you created a group with a self-generated UUID using the PUT /v1/groups/:id end point, the classifier would accept some UUIDs that the console considered invalid. As a result the console would generate the error, "Error retrieving group hierarchy: The group id specified is invalid." The regular expression used to validate these identifiers in the console has been made less restrictive to match the classifier behavior. It is: [0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}

Back to top