Released: January 29, 2022
Note
Pipelines 1.21.1 requires Artifactory 7.31.10 and above.
Highlights
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.
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.
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.
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.