More docs tweaks
All checks were successful
CI / test (push) Successful in 2m6s

This commit is contained in:
Miguel Jacq 2026-06-21 10:26:36 +10:00
parent 8c5d99b4b6
commit ef97d75b9f
Signed by: mig5
GPG key ID: 03906B4110AAD3B8
2 changed files with 8 additions and 14 deletions

View file

@ -143,14 +143,6 @@ og_type: "website"
</div> </div>
</div> </div>
</div> </div>
<div class="callout p-4 mt-3">
<div class="fw-semibold mb-2"><i class="bi bi-lightning-charge"></i> Why sysadmins like it</div>
<div class="row g-3">
<div class="col-md-6 text-muted">• Rapid enrolling of existing infra into config management<br>• Tweak include/exclude paths as needed</div>
<div class="col-md-6 text-muted">• Capture what changed from package defaults<br><code>diff</code> mode detects and alerts about drift</div>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>

View file

@ -159,10 +159,6 @@ description: "How Enroll works: harvest, manifest, modes, and configuration."
<div class="alert alert-secondary mt-3 mb-0"> <div class="alert alert-secondary mt-3 mb-0">
<div class="fw-semibold">Does Enroll use community roles/modules?</div> <div class="fw-semibold">Does Enroll use community roles/modules?</div>
<div class="small mb-0">No, Enroll does not pull in Ansible Galaxy roles, Puppet Forge modules, or Salt formulas. It generates its own output from the harvest state. If you want to adopt community content later, Enroll can still help you discover and bootstrap the host-specific state you need to port.</div> <div class="small mb-0">No, Enroll does not pull in Ansible Galaxy roles, Puppet Forge modules, or Salt formulas. It generates its own output from the harvest state. If you want to adopt community content later, Enroll can still help you discover and bootstrap the host-specific state you need to port.</div>
<br />
<div class="small mb-0">Keep in mind that a lot of software config files are also good candidates for being Jinja templates with abstracted vars for separate hosts.</div>
<br />
<div class="small mb-0">Enroll does use my companion tool <a href="https://git.mig5.net/mig5/jinjaturtle" target="_blank" rel="noopener noreferrer">JinjaTurtle</a> if it's installed, but JinjaTurtle only recognises certain types of files (.ini style, .json, .xml, .yaml, .toml, but not special ones like Nginx or Apache conf files which have their own special syntax). When Enroll cannot turn a config file into a template, it copies the raw file instead. JinjaTurtle creates Jinja2 templates for both Ansible and Salt, and because it's a cheerful turtle, it generates <code>.erb</code> templates if you're manifesting Puppet code, too!</div>
</div> </div>
</section> </section>
@ -265,7 +261,8 @@ description: "How Enroll works: harvest, manifest, modes, and configuration."
<section id="templates" class="scroll-mt-nav mb-5"> <section id="templates" class="scroll-mt-nav mb-5">
<h2 class="section-title fw-bold">JinjaTurtle integration</h2> <h2 class="section-title fw-bold">JinjaTurtle integration</h2>
<p class="text-secondary">If <a href="https://git.mig5.net/mig5/jinjaturtle" target="_blank" rel="noopener noreferrer">JinjaTurtle</a> (one of my other projects) is installed, Enroll can also produce Jinja2 templates for ini/json/xml/toml-style config and extract variables cleanly into Ansible and Salt, and even erb files for Puppet (as of version 0.5.5).</p> <p class="text-secondary">If <a href="https://git.mig5.net/mig5/jinjaturtle" target="_blank" rel="noopener noreferrer">JinjaTurtle</a> (one of my other projects) is installed, Enroll can also produce Jinja2 templates for ini/json/xml/toml-style config files (as well as SSH configs), and extract variables cleanly into Ansible and Salt, and even erb files for Puppet (as of version 0.5.5).</p>
<p>When Enroll cannot turn a config file into a template, it copies the raw file instead.</p>
<div class="row g-3"> <div class="row g-3">
<div class="col-md-6"> <div class="col-md-6">
<div class="feature-card p-4 h-100"> <div class="feature-card p-4 h-100">
@ -282,7 +279,11 @@ description: "How Enroll works: harvest, manifest, modes, and configuration."
<div class="fw-semibold mb-2">Where variables land</div> <div class="fw-semibold mb-2">Where variables land</div>
<ul class="small mb-0"> <ul class="small mb-0">
<li>Ansible single-site: <code>roles/&lt;role&gt;/defaults/main.yml</code></li> <li>Ansible single-site: <code>roles/&lt;role&gt;/defaults/main.yml</code></li>
<li>Ansible multi-site: <code>inventory/host_vars/&lt;fqdn&gt;/&lt;role&gt;.yml</code></li> <li>Ansible multi-site (<code>--fqdn</code>): <code>inventory/host_vars/&lt;fqdn&gt;/&lt;role&gt;.yml</code></li>
<li>Puppet single-site: <code>modules/&lt;role&gt;/manifests/init.pp</code> as generated class parameter defaults</li>
<li>Puppet multi-site: <code>data/nodes/&lt;fqdn&gt;.yaml</code> as Hiera class parameter data</li>
<li>Salt single-site: inline in <code>states/roles/&lt;role&gt;/init.sls</code> as <code>file.managed</code> <code>context:</code> data</li>
<li>Salt multi-site: <code>pillar/nodes/&lt;fqdn&gt;.sls</code> under <code>enroll:roles:&lt;role&gt;:files:&lt;path&gt;:context</code></li>
</ul> </ul>
</div> </div>
</div> </div>
@ -316,6 +317,7 @@ exclude_path = /usr/local/bin/docker-*, /usr/local/bin/some-tool
[manifest] [manifest]
no_jinjaturtle = true no_jinjaturtle = true
sops = 54A91143AE0AB4F7743B01FE888ED1B423A3BC99 sops = 54A91143AE0AB4F7743B01FE888ED1B423A3BC99
target = ansible # is the default, otherwise salt, or puppet
[diff] [diff]
# ignore noisy drift # ignore noisy drift