SAND-WP-0004: delegate make e2e to validate run
Replace e2e_framework monolith with wise-validator + sand-boxer shim. Makefile invokes validate run; legacy python -m e2e_framework delegates via shim.py with deprecation notice. Add verify-e2e-shim.sh.
This commit is contained in:
70
Makefile
70
Makefile
@@ -69,39 +69,25 @@ custodian-key-deploy:
|
||||
grep -c 'custodian-agent' ~/.ssh/authorized_keys | xargs -I{} echo '{} custodian-agent key(s) in authorized_keys'"
|
||||
@echo "Done. Test with: make e2e-cron-list"
|
||||
|
||||
## Run e2e tests for a repo in a remote sandbox
|
||||
## Run e2e tests for a repo (wise-validator + sand-boxer)
|
||||
## Usage: make e2e REPO=activity-core
|
||||
## Requires: RAILIANCE01_HOST env var (or pass HOST=<ip>)
|
||||
## Prerequisites: validate and sandboxer on PATH
|
||||
## cd ~/wise-validator && make install
|
||||
## cd ~/sand-boxer && make install
|
||||
## Host (one required): HOST=, SANDBOXER_HOST, or RAILIANCE01_HOST
|
||||
## CoulombCore: export SANDBOXER_COMPOSE_CMD=podman-compose
|
||||
##
|
||||
## Options:
|
||||
## REPO=<slug> repository name under ~/ (required)
|
||||
## HOST=<host> override RAILIANCE01_HOST
|
||||
## USER=root SSH user (default: root)
|
||||
## KEY= path to SSH key (optional)
|
||||
## KEEP= set to 1 to keep sandbox after run
|
||||
## WORKSTREAM_ID= state-hub workstream ID for progress event
|
||||
## HOST=<host> sandbox host override
|
||||
## USER= SSH user → SANDBOXER_SSH_USER
|
||||
## KEY= SSH key → SANDBOXER_SSH_KEY (default: custodian key if present)
|
||||
## KEEP=1 keep sandbox after run
|
||||
## WORKSTREAM_ID= State Hub workstream for progress event
|
||||
## NO_REPORT=1 skip State Hub reporting
|
||||
|
||||
REPO_PATH := $(HOME)/$(REPO)
|
||||
|
||||
ifdef HOST
|
||||
E2E_HOST_FLAG := --host $(HOST)
|
||||
else
|
||||
E2E_HOST_FLAG :=
|
||||
endif
|
||||
|
||||
ifdef USER
|
||||
E2E_USER_FLAG := --user $(USER)
|
||||
else
|
||||
E2E_USER_FLAG :=
|
||||
endif
|
||||
|
||||
ifdef KEY
|
||||
E2E_KEY_FLAG := --key $(KEY)
|
||||
else ifneq ($(wildcard $(CUSTODIAN_KEY)),)
|
||||
E2E_KEY_FLAG := --key $(CUSTODIAN_KEY)
|
||||
else
|
||||
E2E_KEY_FLAG :=
|
||||
endif
|
||||
SANDBOXER_HOST_VAL := $(if $(HOST),$(HOST),$(if $(SANDBOXER_HOST),$(SANDBOXER_HOST),$(RAILIANCE01_HOST)))
|
||||
|
||||
ifdef KEEP
|
||||
E2E_KEEP_FLAG := --keep
|
||||
@@ -115,6 +101,20 @@ else
|
||||
E2E_WS_FLAG :=
|
||||
endif
|
||||
|
||||
ifdef NO_REPORT
|
||||
E2E_NO_REPORT_FLAG := --no-report
|
||||
else
|
||||
E2E_NO_REPORT_FLAG :=
|
||||
endif
|
||||
|
||||
ifdef KEY
|
||||
E2E_SSH_KEY_VAL := $(KEY)
|
||||
else ifneq ($(wildcard $(CUSTODIAN_KEY)),)
|
||||
E2E_SSH_KEY_VAL := $(CUSTODIAN_KEY)
|
||||
else
|
||||
E2E_SSH_KEY_VAL :=
|
||||
endif
|
||||
|
||||
## Install e2e cron job on railiance01 for a repo.
|
||||
## Usage: make e2e-cron-install REPO=activity-core
|
||||
## Requires: RAILIANCE01_HOST / RAILIANCE01_USER set, or pass HOST= SSHUSER=
|
||||
@@ -168,13 +168,17 @@ e2e:
|
||||
@test -n "$(REPO)" || (echo "ERROR: REPO is required. Usage: make e2e REPO=activity-core"; exit 1)
|
||||
@test -d "$(REPO_PATH)" || (echo "ERROR: repo path does not exist: $(REPO_PATH)"; exit 1)
|
||||
@test -f "$(REPO_PATH)/e2e/e2e.yml" || (echo "ERROR: no e2e/e2e.yml in $(REPO_PATH)"; exit 1)
|
||||
cd "$(CURDIR)" && python3 -m e2e_framework \
|
||||
$(REPO_PATH) \
|
||||
$(E2E_HOST_FLAG) \
|
||||
$(E2E_USER_FLAG) \
|
||||
$(E2E_KEY_FLAG) \
|
||||
@command -v validate >/dev/null 2>&1 || (echo "ERROR: validate not on PATH. Install: cd ~/wise-validator && make install"; exit 1)
|
||||
@command -v sandboxer >/dev/null 2>&1 || (echo "ERROR: sandboxer not on PATH. Install: cd ~/sand-boxer && make install"; exit 1)
|
||||
@test -n "$(SANDBOXER_HOST_VAL)" || (echo "ERROR: set HOST, SANDBOXER_HOST, or RAILIANCE01_HOST"; exit 1)
|
||||
SANDBOXER_HOST="$(SANDBOXER_HOST_VAL)" \
|
||||
$(if $(USER),SANDBOXER_SSH_USER="$(USER)",) \
|
||||
$(if $(E2E_SSH_KEY_VAL),SANDBOXER_SSH_KEY="$(E2E_SSH_KEY_VAL)",) \
|
||||
validate run "$(REPO_PATH)" \
|
||||
--host "$(SANDBOXER_HOST_VAL)" \
|
||||
$(E2E_KEEP_FLAG) \
|
||||
$(E2E_WS_FLAG)
|
||||
$(E2E_WS_FLAG) \
|
||||
$(E2E_NO_REPORT_FLAG)
|
||||
|
||||
# Agent Management Targets
|
||||
agents-list:
|
||||
|
||||
Reference in New Issue
Block a user