This article will introduce you to module management with Bolt, including why you might want to use it how you can use it in your workflows.
What is the module management feature?
Bolt can manage your project's module dependencies for you. By adding your project's direct dependencies to the project configuration file, Bolt will be able to resolve all transitive dependencies and version requirements, generate a Puppetfile, and install the modules.
Why should I have Bolt manage my project's modules?
Using the module management feature greatly simplifies the process of installing and adding new modules to your project. Instead of needing to locate all of a module's dependencies, find compatible versions for each module, and manually updating your Puppetfile, you can offload this work to Bolt. All you need to do is list the modules you care about in your project configuration file and Bolt will take care of the rest!
How do I start managing my project's modules with Bolt?
To have Bolt manage your project's module dependencies, you'll need to enable the feature by updating your project. We've made this process easy by updating the bolt project migrate command and Update-BoltProject Powershell cmdlet, which will guide you through the process of selecting which of your project's modules are direct dependencies and set up your project to use the new module management feature.
Can I still manage modules on my own?
Yes! Bolt still supports the legacy workflow of writing your own Puppetfile and installing modules without automatically resolving dependencies. Check out the documentation to learn how to manually manage a project's modules.
The module management feature includes several new Bolt commands, changes to Bolt's default configuration, and a few other changes as well. To get the most out of this feature, make sure to check out the documentation.