VERSION 3.1.0 *in this release*
✨ *new features* - Bolt now automatically imports PowerShell modules that are included in a task's files list. PowerShell tasks no longer need to add separate Import-Module statements to include these extra files. For more information, see Writing tasks <https://puppet.com/docs/bolt/latest/writing_tasks.html>. - Bolt now ships with the powershell_task_helper module, which includes several helper functions for writing tasks in PowerShell. Learn more about using these helper functions in your tasks by checking out the documentation <https://forge.puppet.com/modules/puppetlabs/powershell_task_helper> on the Forge. - The BoltSpec library now includes a config_data method that makes it easy to set Bolt configuration in tests for your plans. You can learn more about BoltSpec and overriding Bolt's configuration in tests by reading the documentation <https://https://puppet.com/docs/bolt/latest/testing_plans.html#overriding-configuration> . 🔧 *bug fixes* - Bolt now supports using Puppet file syntax ( puppet:///modules/<MODULE>/<FILE>) in apply blocks for files in a Bolt project. Previously, referring to these files using Puppet file syntax would result in an error. - The Result data type's to_data function now correctly serializes Sensitive task output. - Errors raised from running scripts in PowerShell on targets with an execution policy of Restricted or AllSigned now include clearer messages. - Bolt's inventory is now correctly exposed to the BoltSpec library. Previously, referencing targets in Bolt's inventory with BoltSpec would result in an 'Undefined method' error. 📚 *documentation* - We've officially added documentation for Bolt's built-in testing library: BoltSpec! This long-hidden (and incredibly useful) feature lets you easily write unit tests for your plans. Check out the documentation here <https://puppet.com/docs/bolt/latest/testing_plans.html>. VIEW FULL RELEASE NOTES <https://github.com/puppetlabs/bolt/blob/main/CHANGELOG.md#bolt-310-2021-03-01> *in the works* - Look out for Windows Performance improvements coming soon. - We're working on a prototype for streaming output during remote execution. - Bolt will soon have a new transport that lets you connect to Linux containers. *nuts and bolts* Each month, we'll highlight a different Bolt feature and cover the details on what it is, why you might want to use it, and how it can be used in your workflows. March's highlighted feature is: *BoltSpec*! *What is BoltSpec?* BoltSpec is a library of helpers that ships with Bolt. It is intended to be used with RSpec, a testing tool, to write unit tests for your plans. Specifically, BoltSpec's helpers let you test the behavior of your plans without the need to connect to targets. *Why should I use BoltSpec?* Because plans can include complex logic that automates different jobs, it's important to test that the plan behaves as you expect. BoltSpec lets you easily write tests for your plans so you can test their behavior in development and catch any errors before your plans are used in production. Also, because BoltSpec stubs out Bolt functions that connect to targets, you don't need to worry about provisioning containers or VMs to run these tests. *How do I use BoltSpec?* Using BoltSpec is as easy as installing and configuring rspec-puppet for your module or project, and then adding a couple lines to your tests' configuration file. If you already develop Puppet modules using the Puppet Development Kit (PDK), then most of this is already done for you. Going over all the details of using BoltSpec to test your plans is a little much for an email. So if you're interested in testing your plans, why not check out our new Testing Plans <https://puppet.com/docs/bolt/latest/testing_plans.html> documentation? VIEW THE DOCUMENTATION <https://puppet.com/docs/bolt/latest/testing_plans.html> [image: Tw] <https://twitter.com/puppetize> [image: Yt] <https://www.youtube.com/channel/UCPfMWIY-qNbLhIrbZm2BFMQ> [image: In] <https://www.linkedin.com/company/puppet/> *Bolt Documentation <https://puppet.com/docs/bolt/latest/bolt.html>* -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/CAGdD-pVrupp9_1SHoJaP0RaZG%2BVjz%3DrRd%2BBBeD6%2BunmV1NVpPQ%40mail.gmail.com.