Pipelines 1.21.1

JFrog Release Information


Released: January 29, 2022


Pipelines 1.21.1 requires Artifactory 7.31.10 and above.

Resource Version Pinning

Resources versions can now be pinned to fix the version used by steps. This is useful when you want to use a specific version of an input resource for a run. For more information, see Pinning Resource Versions.Pipelines Resources

Sensitive Data Masked

Sensitive content from Project integrations is now masked in the console logs.

New APIs for Logging

Added new APIs for changing services log level at runtime. For more information, seeSystem Log Level.SYSTEM LOG LEVEL

Step Logs Improvements

Following an unsuccessful step, the step logs will now contain information about which input step caused a step to be skipped.The logs will show the unmet dependency and the expected state of the dependency.

Pipelines Utility Functions Export

Pipelines utility functions are now exported. This means they can be called from scripts that are invoked from the build script without having to use the 'source' command.

Metrics Data

Pipelines now provides a new metrics API, which can be used to get metrics data for Pipelines, such as CPU, memory, number of pipelines per project, and more . For more information, see Pipelines Metrics.Get Pipelines Metrics Data

In addition, a new log file (/pipelines/controlplane/logs/reqsealer-eventMetric.log) has been introduced to provide detailed information about steps and runs.

Pipelines Service Images on UBI Micro

All Pipelines service images are now built on top of Red Hat's Universal Base Micro Image.

Resolved Issues
  • Fixed an issue whereby, when triggering a pipeline by updating the same resource multiple times before the earlier runs are fully created, runs could be created with a more recent version of the resource.

  • Fixed an issue whereby, SSH key integrations sometimes caused a step to fail when the SSH directory did not already exist.

  • Fixed an issue whereby, the user is unable to delete the multi-branch pipeline source in one go.

  • Fixed an issue whereby, resources belonging to one Project environment could be used by another Project environment.

  • Fixed an issue whereby, integrations test connection was failing if the URL had a trailing slash.

  • Fixed an issue whereby, calling the save_tests utility function on an empty directory caused PowerShell steps to fail.

  • Fixed an issue whereby, in some cases, WebSocket updates were unavailable until Pipelines was restarted.

  • Fixed an issue whereby, details in logs were missing for errors from access client.

  • Fixed an issue whereby, steps configured to run when an input step is canceled were skipped when the input was in canceling state.

  • Fixed an issue whereby, pipeline source could be posted from a template even in a failed sync status.

  • Fixed an issue whereby, the CreateReleaseBundle native step had a duplicate call to JFrog Distribution.

  • Fixed an issue whereby, steps were skipped when using a node pool that was shared from the default Project.

  • Fixed an issue whereby, Jenkins step could get stuck when using a shared Project integration.

  • Fixed an issue whereby, the stale build plane messages were blocking the build plane exclusively, causing the steps to wait for the node longer than expected.

  • Fixed an issue whereby, Pipelines sync messages had 'undefined' as a file name in non-SCM flows.Added default value for non-SCM flows to fix the issue.

  • Fixed an issue whereby, an error message was displayed when initializing static RHEL 8 nodes without Docker pre-installed.

  • Fixed an issue that was causing build nodes to take longer to stream the latest run logs.

  • Non-admin users can now only see the general status of Pipelines services. Only admins can see detailed status of the services.

  • Upgraded Redis image version to 6.2.6 in VM installs.

  • Changed the root user to non-root user for containers DB, Redis, and Msg (RabbitMq). This change is only applicable for fresh installs of Pipelines on on-prem machines.

  • In k8 installs, the installer init container logs will now be available in the same shared logs volume used by the Pipelines' services.