You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix plugins_in_modules: update product names, links, and layout
- Add layout: default frontmatter
- Replace Puppet Server/agent with OpenVox Server/agent
- Fix {{facter}} broken links to point to /openfact/latest/
- Fix /guides/custom_types.html and /guides/custom_functions.html to local pages
- Remove stale Puppet 5.3.4 pluginsync note
- Replace "master" with "primary server" in locale reference
- Remove {:.concept} markers
- Replace "Puppet loads" with "OpenVox loads"
Signed-off-by: Michael Harp <mike@mikeharp.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Puppet supports several kinds of **plug-ins,** which can be distributed in modules. These plug-ins enable new features for managing your nodes. Plug-ins are often included in modules downloaded from the Puppet Forge, and you can also develop your own.
17
+
OpenVox supports several kinds of **plug-ins,** which can be distributed in modules. These plug-ins enable new features for managing your nodes. Plug-ins are often included in modules downloaded from the Puppet Forge, and you can also develop your own.
17
18
18
-
{:.concept}
19
19
## Installing plug-ins
20
20
21
21
Plug-ins are automatically enabled when you install the module that contains them. You don't have to do anything else: once a module is installed in an environment's modulepath, its plug-ins are available when managing nodes in that environment.
22
22
23
-
{:.concept}
24
23
### Auto-download of agent-side plug-ins (pluginsync)
25
24
26
-
Some plug-ins are used by Puppet Server, which can load them directly from modules. But other plug-ins (facts, custom resource types and providers) are used by Puppet agent, which doesn't have direct access to the server's modules.
25
+
Some plug-ins are used by OpenVox Server, which can load them directly from modules. But other plug-ins (facts, custom resource types and providers) are used by OpenVox agent, which doesn't have direct access to the server's modules.
27
26
28
-
To enable this, Puppet agent automatically downloads plug-ins from the server at the start of each agent run. Those plug-ins are then available during the run.
27
+
To enable this, OpenVox agent automatically downloads plug-ins from the server at the start of each agent run. Those plug-ins are then available during the run.
29
28
30
-
Puppet agent syncs plug-in files from _every_ module in its environment's modulepath, regardless of whether that node uses any classes from a given module, as well as any translations available for each module regardless of the agent's or master's locale.
29
+
OpenVox agent syncs plug-in files from _every_ module in its environment's modulepath, regardless of whether that node uses any classes from a given module, as well as any translations available for each module regardless of the agent's or primary server's locale.
31
30
32
31
In other words, even if you don't declare any classes from the `stdlib` module, nodes will still use `stdlib`'s custom facts. Also, even if your agent's locale is set to en-US, if the module has translations for other locales, the agent will download all of those translations.
33
32
34
-
> **Note:** Puppet 5.3.4 added pluginsync of module translations. Agents running Puppet 5.3.4 or newer that connect to masters running older versions of Puppet do not automatically download translations.
35
-
36
-
{:.concept}
37
33
### Technical details of pluginsync
38
34
39
35
Pluginsync takes advantage of the same file serving features used by the `file` resource type.
40
36
41
-
Puppet Server creates special file server mount points for pluginsync, and populates them with the aggregate contents of certain subdirectories of modules. Before doing an agent run, Puppet agent recursively manages the contents of those mount points into cache directories on disk. The agent performs the following functions:
37
+
OpenVox Server creates special file server mount points for pluginsync, and populates them with the aggregate contents of certain subdirectories of modules. Before doing an agent run, OpenVox agent recursively manages the contents of those mount points into cache directories on disk. The agent performs the following functions:
42
38
43
39
1. Sends GET requests to `/puppet/v3/file_metadatas/<MOUNT POINT>`,
44
40
2. Compares the resulting checksums and ownership info to local files,
@@ -54,12 +50,11 @@ Plug-in type | Module subdirectory | Mount point | Agent directory
(`<VARDIR>` is Puppet agent's [cache directory][vardir], which is located at `/var/opt/puppetlabs/puppet/cache`, `%PROGRAMDATA%\PuppetLabs\puppet\cache`, or `~/.puppetlabs/opt/puppet/cache`.)
53
+
(`<VARDIR>` is OpenVox agent's [cache directory][vardir], which is located at `/var/opt/puppetlabs/puppet/cache`, `%PROGRAMDATA%\PuppetLabs\puppet\cache`, or `~/.puppetlabs/opt/puppet/cache`.)
58
54
59
-
{:.concept}
60
55
## Types of plug-ins
61
56
62
-
Puppet supports several kinds of plug-ins:
57
+
OpenVox supports several kinds of plug-ins:
63
58
64
59
*[Custom facts][] (written in Ruby).
65
60
*[External facts][] (executable scripts or static data).
@@ -69,9 +64,8 @@ Puppet supports several kinds of plug-ins:
69
64
*[Custom Augeas lenses][].
70
65
* Miscellaneous utility Ruby code used by other plug-ins.
71
66
72
-
Facts and Augeas lenses are used solely by Puppet agent. Functions are used solely by Puppet Server. Resource types and providers are used by both. (Note that Puppet apply acts as both agent and server.)
67
+
Facts and Augeas lenses are used solely by OpenVox agent. Functions are used solely by OpenVox Server. Resource types and providers are used by both. (Note that Puppet apply acts as both agent and server.)
73
68
74
-
{:.concept}
75
69
## Adding plug-ins to a module
76
70
77
71
To add plug-ins to a module, put them in the following directories:
@@ -115,12 +109,11 @@ To illustrate, a module that included every type of plug-in would have a directo
115
109
-`datacenter.py` (an executable script that returns fact data.)
116
110
-`locales`
117
111
118
-
{:.concept}
119
112
## Issues with server-side plug-ins
120
113
121
114
If you encounter problems with conflicting versions of the same plug-in in different environments, you can fix these issues as described below.
122
115
123
-
Environments aren't completely isolated for certain kinds of plug-ins. If a plug-in of the same name exists in different versions in multiple environments, Puppet loads the plug-in from the first environment to use that plug-in, then continues to use that version of the plug-in for all subsequent environments.
116
+
Environments aren't completely isolated for certain kinds of plug-ins. If a plug-in of the same name exists in different versions in multiple environments, OpenVox loads the plug-in from the first environment to use that plug-in, then continues to use that version of the plug-in for all subsequent environments.
124
117
125
118
This issue can occur with the following plug-in types:
0 commit comments