File sync terms
Understanding these terms is helpful for understanding file sync.
Used for storing your Puppet code and maintaining separate code for different environments (such as production, development, or testing). Each environment is represented by a branch of the control repo. For more information, refer to Managing environments with a control repository.
Each environment branch has a Puppetfile specifying exactly which modules to install in each environment. You can learn more About Environments in the Puppet documentation.
This directory contains all your Puppet manifests and modules for each environment (Code Manager creates directory environments based on the branches you've set up in your control repo). Puppet Server uses this directory for catalog compilation. This directory is present on your primary server and all compilers.
The directory's location is specified in the Puppet Servermaster-code-dir
setting and the Puppet$codedir
setting. The default value is
/etc/puppetlabs/code
, which is also the default location for the
live code directory.
In file sync configuration settings, the live code directory is sometimes abbreviated as live-dir.
Code Manager detects code changes that you make in your control repository, and then Code Manager stages the updated code in the staging code directory. From there, file sync moves the updated code to the live code directories.
While the primary server and all compilers have their own live code directories, the
staging code directory is only present on the primary server. The default location is
/etc/puppetlabs/code-staging
.