mirror of
https://github.com/tiennm99/ccs.git
synced 2026-07-15 12:20:44 +00:00
* docs: hoist Docker zero-install quickstart above npm install path - Create docs/quickstart-snippet.md as canonical source for the two-command flow (curl + docker compose up -d), wrapped in <!-- quickstart-snippet-start/end --> markers - Hoist the snippet into README.md immediately below the deprecation banner, above all other install paths - Rename old npm-only "## Quick Start" to "## Install on Host (npm)" and move it below the Docker quickstart * docs(docker): restructure README with zero-install first and migration section - Reorder top-level sections: zero-install (canonical snippet with markers), choosing an image, power-user ccs docker, prebuilt image, connect your app to CLIProxy, migration, env vars, troubleshooting - Add deprecation banner at the top pointing at the migration section - Add ## Migration from ccs-dashboard:latest section with step-by-step instructions covering compose down, data preservation, named volume vs bind-mount path, and compose up with the new image - Keep P1's Choosing an image table and P5's Connect Your App to CLIProxy section intact, just repositioned * test(docs): parity check for quickstart snippet across README files Assert README.md and docker/README.md both contain the canonical quickstart block verbatim, anchored by marker comments. Exits non-zero and prints a diff on any drift. * ci(docs): wire quickstart-parity test on push and PR Runs tests/docs/quickstart-parity.sh on self-hosted runner whenever docs/quickstart-snippet.md, README.md, docker/README.md, or the test/workflow files themselves change. Fails fast on snippet drift.
26 lines
919 B
Bash
Executable File
26 lines
919 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# quickstart-parity.sh
|
|
# Assert that README.md and docker/README.md both contain the canonical quickstart
|
|
# snippet verbatim (anchored by marker comments).
|
|
# Usage: bash tests/docs/quickstart-parity.sh (from repo root)
|
|
set -euo pipefail
|
|
|
|
SNIPPET=$(awk '/<!-- quickstart-snippet-start -->/,/<!-- quickstart-snippet-end -->/' docs/quickstart-snippet.md)
|
|
|
|
fail=0
|
|
for f in README.md docker/README.md; do
|
|
file_block=$(awk '/<!-- quickstart-snippet-start -->/,/<!-- quickstart-snippet-end -->/' "$f")
|
|
if ! diff -q <(printf '%s' "$SNIPPET") <(printf '%s' "$file_block") >/dev/null 2>&1; then
|
|
echo "[X] $f quickstart snippet drift detected" >&2
|
|
echo "--- canonical (docs/quickstart-snippet.md) ---" >&2
|
|
printf '%s\n' "$SNIPPET" >&2
|
|
echo "--- found in $f ---" >&2
|
|
printf '%s\n' "$file_block" >&2
|
|
fail=1
|
|
else
|
|
echo "[OK] $f snippet matches canonical"
|
|
fi
|
|
done
|
|
|
|
exit "$fail"
|