Commit 09258e3d authored by Ivan Mazhukin's avatar Ivan Mazhukin

add --latest flag support

parent 7e7b7acd
...@@ -9,6 +9,7 @@ DEFAULT_REMOTE_USER="${EPM_DOCKER_TEST_REMOTE_USER:-builder-robot}" ...@@ -9,6 +9,7 @@ DEFAULT_REMOTE_USER="${EPM_DOCKER_TEST_REMOTE_USER:-builder-robot}"
DEFAULT_LOG_ROOT="${XDG_STATE_HOME:-$HOME/.local/state}/epm-docker-test" DEFAULT_LOG_ROOT="${XDG_STATE_HOME:-$HOME/.local/state}/epm-docker-test"
COMMAND="play" COMMAND="play"
PLAY_FLAGS=()
APP_NAME="" APP_NAME=""
SYSTEM_IMAGE="" SYSTEM_IMAGE=""
RUN_MODE="auto" RUN_MODE="auto"
...@@ -72,6 +73,7 @@ Options: ...@@ -72,6 +73,7 @@ Options:
--builder-path <path> Explicit builder64 source path --builder-path <path> Explicit builder64 source path
--preset <all|russian|main> --preset <all|russian|main>
Add a named system preset Add a named system preset
--latest Pass --latest to epm play
--parallel Run tests in parallel (all at once) --parallel Run tests in parallel (all at once)
-j <N> Run up to N tests in parallel -j <N> Run up to N tests in parallel
--log-root <path> Directory for saved logs --log-root <path> Directory for saved logs
...@@ -483,6 +485,8 @@ set -eu ...@@ -483,6 +485,8 @@ set -eu
TEST_COMMAND="$1" TEST_COMMAND="$1"
APP_NAME="$2" APP_NAME="$2"
shift 2
EXTRA_FLAGS="$*"
SOURCE_DIR="/work/eepm" SOURCE_DIR="/work/eepm"
run_eepm() { run_eepm() {
...@@ -537,7 +541,7 @@ esac ...@@ -537,7 +541,7 @@ esac
case "$TEST_COMMAND" in case "$TEST_COMMAND" in
play) play)
exec bash ./bin/eepm play --auto "$APP_NAME" exec bash ./bin/eepm play --auto $EXTRA_FLAGS "$APP_NAME"
;; ;;
*) *)
printf '[container] unsupported test command: %s\n' "$TEST_COMMAND" >&2 printf '[container] unsupported test command: %s\n' "$TEST_COMMAND" >&2
...@@ -578,7 +582,7 @@ run_container_locally() { ...@@ -578,7 +582,7 @@ run_container_locally() {
--volume "$resolved_source:/work/eepm:ro" \ --volume "$resolved_source:/work/eepm:ro" \
--volume "$inner_script:/tmp/epm-docker-test-inner.sh:ro" \ --volume "$inner_script:/tmp/epm-docker-test-inner.sh:ro" \
"$SYSTEM_IMAGE" \ "$SYSTEM_IMAGE" \
sh /tmp/epm-docker-test-inner.sh "$COMMAND" "$APP_NAME"; then sh /tmp/epm-docker-test-inner.sh "$COMMAND" "$APP_NAME" "${PLAY_FLAGS[@]}"; then
status=0 status=0
else else
status=$? status=$?
...@@ -593,7 +597,7 @@ build_remote_args() { ...@@ -593,7 +597,7 @@ build_remote_args() {
local remote_source local remote_source
local target local target
REMOTE_ARGS=(--internal-local-run --mode local) REMOTE_ARGS=(--internal-local-run --mode local "${PLAY_FLAGS[@]}")
REMOTE_SYNC_DIR="" REMOTE_SYNC_DIR=""
target="$(remote_target)" target="$(remote_target)"
...@@ -804,6 +808,10 @@ parse_args() { ...@@ -804,6 +808,10 @@ parse_args() {
PARALLEL_JOBS="$2" PARALLEL_JOBS="$2"
shift 2 shift 2
;; ;;
--latest)
PLAY_FLAGS+=(--latest)
shift
;;
--log-root) --log-root)
[[ $# -ge 2 ]] || fatal "--log-root requires a value" [[ $# -ge 2 ]] || fatal "--log-root requires a value"
LOG_ROOT="$2" LOG_ROOT="$2"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment