feat(bootstrap): Deployment-Key per Einmal-Passwort oder Befehl (#010)
Ein einziges POSIX-Skript fuer beide Wege: der Worker fuehrt es nach einer einmaligen Passwortanmeldung aus, und genau dasselbe Skript steht als Befehl zum Kopieren bereit. So gibt es keine zwei Wahrheiten darueber, was ein Bootstrap auf dem Host aendert. Das Passwort reist nur verschluesselt im Job und steht nie in Vorgang, Protokoll oder Log. Dateien im Home des Zielbenutzers liest und schreibt das Skript als dieser Benutzer: ein Symlink auf /etc/shadow fuehrt zum Abbruch statt zur Kopie (Integrationstest). sudoers wird erst nach visudo -c aktiv. Am Ende beweist eine Anmeldung per Deployment-Key, dass sshkv ohne Passwort weiterarbeiten kann. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -91,6 +91,18 @@ pnpm worker # zweites Terminal
|
||||
Oberflächen immer gegen den **gebauten Stand** prüfen (`pnpm build && pnpm start`) – siehe
|
||||
Laufzettel: `next dev` hydriert in dieser Umgebung nicht zuverlässig.
|
||||
|
||||
## Tests brauchen die Testdatenbank für sich allein
|
||||
|
||||
`tests/hilfen/db.ts` leert vor jedem Test alle Tabellen. Zwei gleichzeitige Läufe (z. B. ein
|
||||
Sub-Agent und die Hauptsitzung) räumen sich gegenseitig die Daten weg – das sieht aus wie ein
|
||||
echter Fehler („No record was found for an update“). Parallel Prüfende bekommen deshalb eine
|
||||
**eigene** Datenbank:
|
||||
|
||||
```bash
|
||||
docker exec sshkv-dev-db psql -U sshkv -c "create database sshkv_test_<name>"
|
||||
TEST_DATABASE_URL=postgresql://sshkv:sshkv@localhost:5436/sshkv_test_<name>?schema=public pnpm test
|
||||
```
|
||||
|
||||
## Vor jedem Commit
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user