recipe-maintainer: public snapshot (secrets + deployment plans removed, single commit)
Sanitized single-commit public mirror of recipe-maintainer. - Removed test-ssh/.testenv (live creds); added test-ssh/.testenv.example placeholders. - Removed plans/ and planned-updates/ (deployment-planning docs) so no client/ deployment domains appear in the public repo. - All other secret stores were already gitignored. - docs.coopcloud.tech retained as a submodule (public upstream).
This commit is contained in:
@@ -0,0 +1 @@
|
||||
name = "lichen-markdown"
|
||||
@@ -0,0 +1,31 @@
|
||||
# Setup
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- DNS A record for `lichen-markdown.<DOMAIN_SUFFIX>` pointing to `<SERVER>`
|
||||
|
||||
## Deploy
|
||||
|
||||
```bash
|
||||
abra app new lichen-markdown --server <SERVER> --domain lichen-markdown.<DOMAIN_SUFFIX> --no-input
|
||||
abra app secret generate lichen-markdown.<DOMAIN_SUFFIX> --all -m --no-input
|
||||
abra app deploy lichen-markdown.<DOMAIN_SUFFIX> --chaos --force --no-input
|
||||
```
|
||||
|
||||
## Environment variables
|
||||
|
||||
| Variable | Default | Description |
|
||||
|----------|---------|-------------|
|
||||
| `LICHEN_USERNAME` | `admin` | CMS login username |
|
||||
| `LETS_ENCRYPT_ENV` | `production` | `production` or `staging` |
|
||||
| `ENABLE_BACKUPS` | `true` | Enable backupbot |
|
||||
|
||||
## Secrets
|
||||
|
||||
| Secret | Description |
|
||||
|--------|-------------|
|
||||
| `lichen_password` | CMS login password (auto-generated) |
|
||||
|
||||
## Accessing the CMS
|
||||
|
||||
Visit `https://lichen-markdown.<DOMAIN_SUFFIX>/admin` and log in with `LICHEN_USERNAME` / `lichen_password`.
|
||||
@@ -0,0 +1,13 @@
|
||||
# Test plan
|
||||
|
||||
Target URL: `https://lichen-markdown.t1cc.commoninternet.net`
|
||||
|
||||
## Automated
|
||||
|
||||
- `health_check.py` — HTTP 200 at the root URL
|
||||
|
||||
## Manual
|
||||
|
||||
- Open the URL and confirm the default lichen-markdown homepage loads
|
||||
- Visit `/admin` and confirm a login prompt appears
|
||||
- Log in with credentials from `recipe-info/testsecrets/lichen-markdown.t1cc.commoninternet.net` and confirm the CMS editor loads
|
||||
@@ -0,0 +1,28 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Health check for lichen-markdown."""
|
||||
import argparse
|
||||
import os
|
||||
import sys
|
||||
|
||||
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..', '..', '..'))
|
||||
from utils.tests.helpers import http_get, resolve_domain
|
||||
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--domain', default=os.environ.get('TEST_DOMAIN'))
|
||||
args = parser.parse_args()
|
||||
domain = args.domain or resolve_domain('lichen-markdown')
|
||||
url = f"https://{domain}"
|
||||
|
||||
print(f"Checking lichen-markdown at {url} ...")
|
||||
status, _ = http_get(url)
|
||||
if status == 200:
|
||||
print(f"PASS: lichen-markdown returned HTTP {status}")
|
||||
else:
|
||||
print(f"FAIL: lichen-markdown returned HTTP {status} (expected 200)")
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
@@ -0,0 +1,11 @@
|
||||
# Upstream
|
||||
|
||||
## Images
|
||||
|
||||
| Image | Source |
|
||||
|-------|--------|
|
||||
| `notplants/lichen-markdown` | [codeberg.org/ukrudt.net/lichen-markdown](https://codeberg.org/ukrudt.net/lichen-markdown) |
|
||||
|
||||
## Release page
|
||||
|
||||
https://codeberg.org/ukrudt.net/lichen-markdown/releases
|
||||
Reference in New Issue
Block a user