VERSION 3.9.0

*in this release*

✨  *new features*

   - Plans now support fire-and-forget parallelism with the background()
   and wait() plan functions. For more information about using these new
   functions, see the documentation <https://pup.pt/bolt-parallelism>.
   - The docker, lxd, and podman transports now support the run-as
   configuration option, as well as all other privilege escalation options.
   For a detailed list of configuration options available to these transports,
   see the reference page
   <https://puppet.com/docs/bolt/latest/bolt_transports_reference.html>.

🔧  *bug fixes*

   - Project plugin files are now uploaded to the correct directory when
   running the apply_prep and apply functions. Previously, these files were
   uploaded to the wrong directory, causing plans to fail if they referenced
   project files using Puppet file syntax (
   puppet:///modules/<project>/<file>).
   - Setting the docker.service-url configuration option now correctly sets
   the DOCKER_HOST environment variable. Previously, this environment
   variable was not set, preventing connections to remote Docker hosts.

VIEW FULL RELEASE NOTES
<https://github.com/puppetlabs/bolt/blob/main/CHANGELOG.md#bolt-390-2021-05-25>

*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.

May's highlighted feature is: *scripts*!

*What is a script?*

A script is a list of commands that are executed by a certain program or
scripting engine. Scripts may be used to automate processes. Script files
are usually just text documents that contain instructions written in a
certain scripting language. When opened by the appropriate scripting
engine, the commands within the script are executed.

Bolt can execute scripts either on the command line or from a Bolt plan
using the run_script() function.


*How is a script different from a task?*

Bolt tasks are similar to scripts, but they are kept in modules and
optionally have a defined API for input into the task and output from the
task. This allows you to reuse and share them, and interact with them
programmatically more easily. Using the API capabilities of tasks requires
adding a JSON metadata file next to the task, which oftentimes is
unnecessary work for users who simply want to run a script.

VIEW THE DOCUMENTATION
<https://puppet.com/docs/bolt/latest/running_bolt_commands.html#run-a-script>
[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 Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/CAGdD-pVjKZaVMgDverTnuUwcHftUuOOD0-opcr0MJyPVSYy7fg%40mail.gmail.com.

Reply via email to