0.7.0
This commit is contained in:
parent
dd9a9113ba
commit
83c30de44a
8 changed files with 340 additions and 14 deletions
|
|
@ -6,4 +6,4 @@ uglyURLs = true
|
|||
disableKinds = ["taxonomy", "term", "RSS", "sitemap"]
|
||||
|
||||
[params]
|
||||
description = "Enroll inspects Debian-like and RedHat-like Linux hosts and generates Ansible roles/playbooks from what it finds. Harvest → Manifest → Manage."
|
||||
description = "Enroll inspects Debian-like and RedHat-like Linux hosts and generates Ansible, Puppet, or Salt manifests from what it finds. Harvest → Manifest → Manage."
|
||||
|
|
|
|||
|
|
@ -117,6 +117,14 @@
|
|||
"minLength": 1,
|
||||
"type": "string"
|
||||
},
|
||||
"group": {
|
||||
"minLength": 1,
|
||||
"type": "string"
|
||||
},
|
||||
"section": {
|
||||
"minLength": 1,
|
||||
"type": "string"
|
||||
},
|
||||
"version": {
|
||||
"minLength": 1,
|
||||
"type": "string"
|
||||
|
|
@ -364,6 +372,12 @@
|
|||
},
|
||||
"type": "array"
|
||||
},
|
||||
"section": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"version": {
|
||||
"type": [
|
||||
"string",
|
||||
|
|
@ -390,6 +404,16 @@
|
|||
"package": {
|
||||
"minLength": 1,
|
||||
"type": "string"
|
||||
},
|
||||
"has_config": {
|
||||
"type": "boolean",
|
||||
"default": true
|
||||
},
|
||||
"section": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
|
|
@ -571,6 +595,21 @@
|
|||
"$ref": "#/$defs/UserEntry"
|
||||
},
|
||||
"type": "array"
|
||||
},
|
||||
"user_flatpaks": {
|
||||
"additionalProperties": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/FlatpakInstall"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"user_flatpak_remotes": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/FlatpakRemote"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
|
|
@ -652,6 +691,256 @@
|
|||
"notes"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"SysctlSnapshot": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"role_name": {
|
||||
"const": "sysctl"
|
||||
},
|
||||
"managed_files": {
|
||||
"items": {
|
||||
"$ref": "#/$defs/ManagedFile"
|
||||
},
|
||||
"type": "array"
|
||||
},
|
||||
"parameters": {
|
||||
"additionalProperties": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"notes": {
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"role_name",
|
||||
"managed_files",
|
||||
"parameters",
|
||||
"notes"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"FlatpakInstall": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
},
|
||||
"method": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"system",
|
||||
"user"
|
||||
]
|
||||
},
|
||||
"remote": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"branch": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"arch": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"kind": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
],
|
||||
"enum": [
|
||||
"app",
|
||||
"runtime",
|
||||
null
|
||||
]
|
||||
},
|
||||
"ref": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"user": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"home": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"source": {
|
||||
"type": "string"
|
||||
},
|
||||
"from_url": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"method"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"FlatpakRemote": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
},
|
||||
"method": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"system",
|
||||
"user"
|
||||
]
|
||||
},
|
||||
"url": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
},
|
||||
"user": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"home": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"source": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"method",
|
||||
"url"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"SnapInstall": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
},
|
||||
"channel": {
|
||||
"type": [
|
||||
"string",
|
||||
"null"
|
||||
]
|
||||
},
|
||||
"revision": {
|
||||
"type": [
|
||||
"integer",
|
||||
"null"
|
||||
],
|
||||
"minimum": 0
|
||||
},
|
||||
"classic": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"devmode": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"dangerous": {
|
||||
"type": "boolean"
|
||||
},
|
||||
"notes": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"source": {
|
||||
"type": "string"
|
||||
},
|
||||
"install_revision": {
|
||||
"type": "boolean"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"FlatpakSnapshot": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"role_name": {
|
||||
"const": "flatpak"
|
||||
},
|
||||
"system_flatpaks": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/FlatpakInstall"
|
||||
}
|
||||
},
|
||||
"remotes": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/FlatpakRemote"
|
||||
}
|
||||
},
|
||||
"notes": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"role_name"
|
||||
],
|
||||
"type": "object"
|
||||
},
|
||||
"SnapSnapshot": {
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"role_name": {
|
||||
"const": "snap"
|
||||
},
|
||||
"system_snaps": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/SnapInstall"
|
||||
}
|
||||
},
|
||||
"notes": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"role_name"
|
||||
],
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"$id": "https://enroll.sh/schema/state.schema.json",
|
||||
|
|
@ -762,6 +1051,15 @@
|
|||
},
|
||||
"firewall_runtime": {
|
||||
"$ref": "#/$defs/FirewallRuntimeSnapshot"
|
||||
},
|
||||
"sysctl": {
|
||||
"$ref": "#/$defs/SysctlSnapshot"
|
||||
},
|
||||
"flatpak": {
|
||||
"$ref": "#/$defs/FlatpakSnapshot"
|
||||
},
|
||||
"snap": {
|
||||
"$ref": "#/$defs/SnapSnapshot"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
|
|
|
|||
19
src/themes/enroll-theme/layouts/news/list.html
Normal file
19
src/themes/enroll-theme/layouts/news/list.html
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{{ define "main" }}
|
||||
{{ .Content | safeHTML }}
|
||||
<main class="py-5">
|
||||
<div class="container">
|
||||
<div class="row g-4">
|
||||
{{ range .Pages.ByDate.Reverse }}
|
||||
<div class="col-lg-6">
|
||||
<article class="feature-card p-4 h-100">
|
||||
<div class="small text-secondary mb-2">{{ .Date.Format "2 January 2006" }}</div>
|
||||
<h2 class="h4 fw-bold mb-2"><a class="link-dark text-decoration-none" href="{{ .RelPermalink }}">{{ .Title }}</a></h2>
|
||||
{{ with .Params.summary }}<p class="text-secondary">{{ . }}</p>{{ end }}
|
||||
<a class="btn btn-sm btn-outline-dark" href="{{ .RelPermalink }}">Read more</a>
|
||||
</article>
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
{{ end }}
|
||||
3
src/themes/enroll-theme/layouts/news/single.html
Normal file
3
src/themes/enroll-theme/layouts/news/single.html
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
{{ define "main" }}
|
||||
{{ .Content | safeHTML }}
|
||||
{{ end }}
|
||||
|
|
@ -3,12 +3,14 @@
|
|||
<div class="row g-4 align-items-start">
|
||||
<div class="col-lg-6">
|
||||
<div class="d-flex align-items-center gap-2 mb-2">
|
||||
<img class="brand-mark" src="assets/img/enroll.svg" alt="Enroll">
|
||||
<img class="brand-mark" src="{{ "assets/img/enroll.svg" | relURL }}" alt="Enroll">
|
||||
<div class="fw-bold">Enroll (a mig5 project)</div>
|
||||
<span class="badge badge-soft rounded-pill">CLI</span>
|
||||
<span class="badge badge-soft rounded-pill">Ansible</span>
|
||||
<span class="badge badge-soft rounded-pill">Puppet</span>
|
||||
<span class="badge badge-soft rounded-pill">Salt</span>
|
||||
</div>
|
||||
<div class="text-secondary mb-3">Reverse-engineering servers into Ansible.</div>
|
||||
<div class="text-secondary mb-3">Reverse-engineering servers into Ansible, Puppet, or Salt.</div>
|
||||
|
||||
<div class="d-flex flex-wrap gap-2">
|
||||
<a class="btn btn-sm btn-outline-dark" href="https://git.mig5.net/mig5/enroll" target="_blank" rel="noreferrer">
|
||||
|
|
@ -26,10 +28,11 @@
|
|||
<div class="col-lg-3">
|
||||
<div class="fw-semibold mb-2">Site</div>
|
||||
<ul class="list-unstyled small mb-0">
|
||||
<li><a class="link-secondary text-decoration-none" href="docs.html">Docs</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="examples.html">Examples</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="schema.html">Schema</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="security.html">Security Design</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="{{ "docs.html" | relURL }}">Docs</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="{{ "examples.html" | relURL }}">Examples</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="{{ "news.html" | relURL }}">News</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="{{ "schema.html" | relURL }}">Schema</a></li>
|
||||
<li><a class="link-secondary text-decoration-none" href="{{ "security.html" | relURL }}">Security Design</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -21,4 +21,4 @@
|
|||
<!-- Bootstrap -->
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css" rel="stylesheet">
|
||||
<link href="assets/css/site.css" rel="stylesheet">
|
||||
<link href="{{ "assets/css/site.css" | relURL }}" rel="stylesheet">
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<nav class="navbar navbar-expand-lg bg-white bg-opacity-75 sticky-top border-bottom" data-bs-theme="light">
|
||||
<div class="container py-1">
|
||||
<a class="navbar-brand fw-bold d-flex align-items-center gap-2" href="index.html">
|
||||
<img class="brand-mark" src="assets/img/enroll.svg" alt="Enroll">
|
||||
<a class="navbar-brand fw-bold d-flex align-items-center gap-2" href="{{ "index.html" | relURL }}">
|
||||
<img class="brand-mark" src="{{ "assets/img/enroll.svg" | relURL }}" alt="Enroll">
|
||||
<span>Enroll</span>
|
||||
</a>
|
||||
|
||||
|
|
@ -13,13 +13,16 @@
|
|||
<div class="collapse navbar-collapse" id="nav">
|
||||
<ul class="navbar-nav ms-auto align-items-lg-center gap-lg-2">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="docs.html">Docs</a>
|
||||
<a class="nav-link" href="{{ "docs.html" | relURL }}">Docs</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="examples.html">Examples</a>
|
||||
<a class="nav-link" href="{{ "examples.html" | relURL }}">Examples</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="security.html">Security Design</a>
|
||||
<a class="nav-link" href="{{ "news.html" | relURL }}">News</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ "security.html" | relURL }}">Security Design</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item ms-lg-2">
|
||||
|
|
|
|||
|
|
@ -5,4 +5,4 @@
|
|||
})();
|
||||
</script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
<script src="assets/js/site.js"></script>
|
||||
<script src="{{ "assets/js/site.js" | relURL }}"></script>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue