VERSION 2.33.1

*in this release*

✨  *new features*

   - Errors raised in plans when running a command, script, or task now
   include the file and line number where the error occurred under the error's
   details key.
   - Errors raised in YAML plans when evaluating code now include the file
   and line number where the error occurred under the error's details key.
   - Several modules that ship with Bolt have been updated to their latest
   versions:
      - cron_core 1.0.5
      <https://forge.puppet.com/puppetlabs/cron_core/changelog>
      - puppet_agent 4.2.0
      <https://forge.puppet.com/puppetlabs/puppet_agent/changelog>
      - sshkeys_core 2.2.0
      <https://forge.puppet.com/puppetlabs/sshkeys_core/changelog>
      - zfs_core 1.2.0
      <https://forge.puppet.com/puppetlabs/zfs_core/changelog>

🔧  *bug fixes*

   - Bolt now safely deletes the temporary directory used to configure
   Puppet during plan and task runs. Previously, if the temporary directory
   was deleted prior to the plan or task run finishing, Bolt would error with
   a stacktrace.
   - The Bolt PowerShell module no longer overrides the SSL_CERT_DIR and
   SSL_CERT_FILE environment variables if they are already set. Previously,
   the PowerShell module would always override these variables, potentially
   resulting in SSL certificate verification errors.

🚨  *removals*

   - Folded scalar values in YAML plans are no longer evaluated as code and
   are instead treated as string literals. What is a folded scalar value? It's
   a multi-line string that begins with an angled bracket > like so:

     - eval: >
       This is a folded scalar value!

   Literal scalar values - multi-line strings beginning with a pipe | - are
   still evaluated as code.


VIEW FULL RELEASE NOTES
<https://github.com/puppetlabs/bolt/blob/main/CHANGELOG.md>

*in the works*

   - Work continues on bringing parallelism to plans. This feature is
   currently in the testing phase.
   - Work continues on refreshing the Bolt documentation, including making
   improvements to the "Getting Started" guide.

*nuts and bolts*

Each month, we'll highlight a different Bolt feature and cover the details
of what it is, why you might want to use it, and how it can be used in your
workflows.

October's highlighted feature is: *YAML plans*!

*What are YAML plans?*

Like plans written in the Puppet language, YAML plans allow you to define
workflows that include multiple tasks. However, YAML plans are much simpler
in structure and do not require learning the Puppet language. YAML plans
allow you to define a list of steps for Bolt to execute in order, such as
executing a command, running a task, or applying resources to a Target. You
can also define and use variables or evaluate Puppet code snippets as
needed. Because YAML plans are simpler to write, they're a great way to
quickly start defining workflows for your project.


*When should I use YAML plans?*

In general, if your plan only needs to define a simple workflow that does
not require sophisticated control flow or error handling, then a YAML plan
may be preferable to a Puppet language plan. YAML plans are simple to write
and don't require any knowledge of the Puppet language, so they're also
easier for users new to Bolt to understand.

But don't worry if you start writing a YAML plan only to find that you need
some features only available to Puppet language plans. Bolt has a built-in
command that makes converting YAML plans to Puppet language plans easy.
Simply run the bolt plan convert shell command or
Convert-BoltPlan PowerShell cmdlet to convert an existing YAML plan.


*How do I start writing a YAML plan?*

The first thing you'll want to do is check out the documentation on writing
plans in YAML <https://pup.pt/bolt-yaml-plans>. Once you know how to write
a YAML plan, you can create a new plan in a module or in your project's
plans directory. Bolt has a built-in command that you can use to quickly
create a new YAML plan with the basic structure of the plan filled out for
you.

To create a new plan with Bolt, run the bolt plan new shell command or the
New-BoltPlan PowerShell cmdlet. The command will create a new plan file in
the plans directory of your project.

Happy planning!


VIEW THE DOCUMENTATION <https://pup.pt/bolt-yaml-plans>
[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-pXtSuQ%3DuCVDcf4Ej8Bqz%2Bocx30vRyk%3DHh1y2qKcTnv-yQ%40mail.gmail.com.

Reply via email to