prole/docs/layout.md
chrisfu 909e92109e Refactor shell layout; add shellspec + authority
- Introduce lib/shell helpers and keep etc/* scripts thin via compatibility shims

- Move Kerberos validation to scripts/validation/check_kerberos.sh and update callers

- Add deterministic shellspec unit tests under tests/shellspec/ and wire Maven to run them

- Add minimal Spring Boot authority module with startup + /health endpoint and Maven wiring

- Document the new layout in docs/layout.md

Co-authored-by: Junie <junie@jetbrains.com>
2026-03-13 09:19:56 -07:00

1.0 KiB

Repository layout (first-pass)

This repo is being refactored toward a clearer separation between runtime scripts, reusable shell libraries, operator validation scripts, and tests.

Top-level conventions

  • etc/
    • Runtime/bootstrap/config scripts only.
    • May contain thin compatibility shims that forward to new locations.
  • lib/shell/
    • Reusable shell helper libraries intended to be sourced by CLI/runtime scripts.
    • Prefer keeping logic here deterministic/testable; keep entrypoint scripts thin.
  • scripts/validation/
    • Operator-run validation/check scripts.
    • These may invoke cluster tooling (kubectl, etc.), but should source shared helpers from lib/shell/.
  • tests/shellspec/
    • Shellspec tests for deterministic helper behavior only (no cluster access).
    • Focus areas: config parsing, env fallback resolution, realm normalization, secret precedence, guardrails, command assembly.
  • authority/
    • Minimal Maven-backed Spring Boot service.
    • Provides application startup and a basic health endpoint.