Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cef655acc6 | |||
| 9a0ea96d22 |
@@ -1,28 +1,16 @@
|
||||
# Task 06G4M8WHGQ4P3GQMPEEH0RJRHM
|
||||
# Task 06G4M6HF1Z3EREX1X3NEKSHP24
|
||||
|
||||
Give the healthcheck a --list-checks flag
|
||||
Name the healthcheck success message once
|
||||
|
||||
- Project: test-e2e
|
||||
- Source: burnin/run14-c
|
||||
- Source: burnin/run14-a
|
||||
- Priority: 0
|
||||
|
||||
## Instructions
|
||||
|
||||
Give `scripts/orchestra_e2e_healthcheck.sh` a `--list-checks` flag that prints the name of each check it performs, one per line, and exits 0.
|
||||
scripts/orchestra_e2e_healthcheck.sh spells its success message inline. Give it a single named constant beside the existing VERSION constant and use that constant everywhere the message is printed.
|
||||
|
||||
This is deliberately two pieces of work, and the plan should carry two phases:
|
||||
|
||||
1. Name the checks. The script performs its checks inline. Introduce one list of check names and drive the existing run from that list, with no change to any output or exit status.
|
||||
2. Add the flag. `--list-checks` prints the names from that list and exits 0. Add one line to the usage text describing it.
|
||||
|
||||
## Verification policy for this project
|
||||
|
||||
Only two commands may appear on a `- run:` line, exactly:
|
||||
|
||||
- `["bash", "-n", "<path>"]`
|
||||
- `["bash", "scripts/orchestra_e2e_healthcheck.sh"]`
|
||||
|
||||
Anything else is refused when you seal the plan. `scripts/test_healthcheck.sh` is NOT permitted as an automated command. Update it as a manual step so its expected `--help` text matches, and list that as a manual check.
|
||||
Behaviour must not change. The plain run, --quiet and --help keep their current output and exit statuses, and scripts/test_healthcheck.sh keeps passing.
|
||||
|
||||
## Research first
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
readonly VERSION=1.0.0
|
||||
readonly CHECKS=(script-runs)
|
||||
readonly SUCCESS_MESSAGE='OK - all healthchecks passed'
|
||||
|
||||
# emit <format> <template> [args...]: the single output path.
|
||||
# format: text or json print; none suppresses (--quiet). Explicit argument,
|
||||
@@ -21,14 +21,8 @@ main() {
|
||||
emit text 'Healthcheck script for Orchestra E2E tests.\n'
|
||||
emit text 'Exits 0 with a success message if all checks pass.\n'
|
||||
emit text ' --quiet Suppress the success message; still exits 0.\n'
|
||||
emit text ' --list-checks Print the name of each check; exits 0.\n'
|
||||
emit text 'Version: %s\n' "$VERSION"
|
||||
exit 0
|
||||
elif [ "$arg" = --list-checks ]; then
|
||||
for name in "${CHECKS[@]}"; do
|
||||
emit text '%s\n' "$name"
|
||||
done
|
||||
exit 0
|
||||
elif [ "$arg" = --quiet ]; then
|
||||
quiet=1
|
||||
elif [ "$arg" = --json ]; then
|
||||
@@ -41,11 +35,11 @@ main() {
|
||||
[ -n "$json" ] && format=json
|
||||
|
||||
if [ "$format" = json ]; then
|
||||
emit "$format" '{"status":"ok","checks":%d}\n' "${#CHECKS[@]}"
|
||||
emit "$format" '{"status":"ok","checks":1}\n'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
emit "$format" 'OK - all healthchecks passed\n'
|
||||
emit "$format" '%s\n' "$SUCCESS_MESSAGE"
|
||||
exit 0
|
||||
}
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
HC="$(dirname "$0")/orchestra_e2e_healthcheck.sh"
|
||||
OK='OK - all healthchecks passed'
|
||||
USAGE="$(printf 'Usage: orchestra_e2e_healthcheck.sh [--quiet]\n\nHealthcheck script for Orchestra E2E tests.\nExits 0 with a success message if all checks pass.\n --quiet Suppress the success message; still exits 0.\n --list-checks Print the name of each check; exits 0.\nVersion: 1.0.0')"
|
||||
USAGE="$(printf 'Usage: orchestra_e2e_healthcheck.sh [--quiet]\n\nHealthcheck script for Orchestra E2E tests.\nExits 0 with a success message if all checks pass.\n --quiet Suppress the success message; still exits 0.\nVersion: 1.0.0')"
|
||||
fails=0
|
||||
|
||||
check() { # check <expected-stdout> <label> [args...]
|
||||
|
||||
Reference in New Issue
Block a user