Puppet Extension for Visual Studio Code is moving!
We are proud to announce that Official Puppet VS Code Extension is moving to the Puppetlabs namespace in the VS Code Marketplace!
The new extension will live at Puppet VS Code with the ID
All of the Github repos for the Puppet VS Code Extension will be transferred from the Lingua Pupuli Github Organization to the Puppet Github Organization. The repository links will automatically forward and all documentation will be updated with the new links. For the most part, this move will be transparent to users of the extension.
Puppet VSCode Website
We are proud to announce the new Puppet VSCode website https://puppet-vscode.github.io/! This website contains all of the documenation previously held in this README, simplified and organinzed. There is also new content that shows off all the current features in greater detail, as well as new ways to use the Puppet VSCode Extension with other technologies like the Microsoft Remote Development Extension Pack. This README retains some quick information on how to get started and where to get help if things go wrong.
Table of Contents
This extension provides full Puppet Language support for Visual Studio Code.
It is currently in technical preview, so that we can gather bug reports and find out what new features to add.
Supported Puppet Versions
The Puppet Extension for VSCode works with Puppet 4 or higher. Some features will be slower or not work on Puppet 4, and are noted in the section for that feature. See open source Puppet and Puppet Enterprise lifecycle pages for version support details.
You can find instructions and installation links here:
Installing the Extension
You can install the official release of the Puppet extension by following the steps in the Visual Studio Code documentation. In the Extensions pane, search for "puppet-vscode" extension and install it there. You will get notified automatically about any future extension updates!
You can also install the extension without access to the internet by following these instructions
Experience a Problem?
Puppet Agent Install
A commonly encountered problem is not having the PDK or Puppet Agent installed on the computer you are running VSCode on. As noted in the Requirements section, you will need to have the PDK or Puppet Agent installed in order to fully use this extension, as the extension uses the Puppet binaries and the Ruby language bundled into the PDK or agent install in order to function.
If you are receiving an error right after opening a Puppet file saying that a Puppet Agent install could not be found, ensure that Puppet is installed on the system. The VSCode extension attempts to find a valid Puppet install if a path is not configured in
Reloading the Puppet VSCode extension
If you haven't see the Problems Pane update in awhile, or hover and intellisense doesn't seem to showing up, and you might not know what to do. Sometimes the Puppet extension can experience problems which cause the language server to crash or not respond. The extension has a way of logging the crash, but there is something you can do to get right back to working: reload the Puppet Language Server.
You can reload the Puppet Lanuguage Server by opening the command palette and starting to type
If you're having trouble with the Puppet extension, please follow these instructions to file an issue on our GitHub repository:
1. File an issue on our Issues Page
Make sure to fill in the information that is requested in the issue template as it will help us investigate the problem more quickly.
2. Capture verbose logs and send them to us
If you're having an issue with crashing or other erratic behavior, add the following line to your User Settings in Visual Studio Code:
Restart Visual Studio Code and try to reproduce the problem, then examine the log. If the issue persists please open an issue and add both the content of the
This extension collects telemetry data to help us build a better experience for writing manifest and modules with Puppet and VS Code. We only collect data on which commands are executed. We do not collect any information about files, paths, etc. The extension respects the
This extension is licensed under the Apache-2.0 License.