From 161665ef729f9e80cb1b4b4d8b984b2b687ee7a7 Mon Sep 17 00:00:00 2001 From: David Boreham Date: Tue, 23 May 2023 02:43:59 +0800 Subject: [PATCH] Fix deploy commands (#404) * Fix bugs * Add test for deploy port command --- .gitea/workflows/test-deploy.yml | 2 +- .github/workflows/test-deploy.yml | 2 +- app/deploy_system.py | 8 ++++---- tests/deploy/run-deploy-test.sh | 8 ++++++++ 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/.gitea/workflows/test-deploy.yml b/.gitea/workflows/test-deploy.yml index 70f0d727..72b5a892 100644 --- a/.gitea/workflows/test-deploy.yml +++ b/.gitea/workflows/test-deploy.yml @@ -35,5 +35,5 @@ jobs: run: | dockerd -H $DOCKER_HOST --userland-proxy=false & sleep 5 - - name: "Run smoke tests" + - name: "Run deploy tests" run: ./tests/deploy/run-deploy-test.sh diff --git a/.github/workflows/test-deploy.yml b/.github/workflows/test-deploy.yml index 8686e9e4..8e8fc66b 100644 --- a/.github/workflows/test-deploy.yml +++ b/.github/workflows/test-deploy.yml @@ -25,5 +25,5 @@ jobs: run: ./scripts/create_build_tag_file.sh - name: "Build local shiv package" run: ./scripts/build_shiv_package.sh - - name: "Run smoke tests" + - name: "Run deploy tests" run: ./tests/deploy/run-deploy-test.sh diff --git a/app/deploy_system.py b/app/deploy_system.py index d4dcc36f..2782ce5d 100644 --- a/app/deploy_system.py +++ b/app/deploy_system.py @@ -67,11 +67,11 @@ def up(ctx, extra_args): if global_context.verbose: print(f"Running compose up with container_exec_env: {container_exec_env}, extra_args: {extra_args_list}") for pre_start_command in cluster_context.pre_start_commands: - _run_command(ctx.obj, cluster_context.cluster, pre_start_command) + _run_command(global_context, cluster_context.cluster, pre_start_command) ctx.obj.docker.compose.up(detach=True, services=extra_args_list) for post_start_command in cluster_context.post_start_commands: - _run_command(ctx.obj, cluster_context.cluster, post_start_command) - _orchestrate_cluster_config(ctx.obj, cluster_context.config, ctx.obj.docker, container_exec_env) + _run_command(global_context, cluster_context.cluster, post_start_command) + _orchestrate_cluster_config(global_context, cluster_context.config, ctx.obj.docker, container_exec_env) @command.command() @@ -130,7 +130,7 @@ def port(ctx, extra_args): sys.exit(1) service_name = extra_args_list[0] exposed_port = extra_args_list[1] - if ctx.parent.obj.verbose: + if global_context.verbose: print(f"Running compose port {service_name} {exposed_port}") mapped_port_data = ctx.obj.docker.compose.port(service_name, exposed_port) print(f"{mapped_port_data[0]}:{mapped_port_data[1]}") diff --git a/tests/deploy/run-deploy-test.sh b/tests/deploy/run-deploy-test.sh index 291799a4..8e84a6b5 100755 --- a/tests/deploy/run-deploy-test.sh +++ b/tests/deploy/run-deploy-test.sh @@ -24,6 +24,14 @@ mkdir -p $CERC_REPO_BASE_DIR $TEST_TARGET_SO --stack test setup-repositories $TEST_TARGET_SO --stack test build-containers $TEST_TARGET_SO --stack test deploy up +# Test deploy port command +deploy_port_output=$( $TEST_TARGET_SO --stack test deploy port test 80 ) +if [[ "$deploy_port_output" =~ ^0.0.0.0:[1-9][0-9]* ]]; then + echo "Deploy port test: passed" +else + echo "Deploy port test: FAILED" + exit 1 +fi $TEST_TARGET_SO --stack test deploy down # The next time we bring the container up the volume will be old (from the previous run above) $TEST_TARGET_SO --stack test deploy up