From 166c1cf24d35d7cff527b39cab3c386ce07bacd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rados=C5=82aw=20Kukuczka?= Date: Sun, 4 May 2025 16:20:35 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=9B=A0=EF=B8=8F=20action.yml=20->=20Added?= =?UTF-8?q?=20inputs=20and=20logic=20to=20copy=20Docker=20build=20context?= =?UTF-8?q?=20to=20remote=20host=20during=20deployment?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- action.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/action.yml b/action.yml index 2d3191e..c4fd7f0 100644 --- a/action.yml +++ b/action.yml @@ -27,6 +27,14 @@ inputs: description: 'Remote temporary directory for deployment files' required: false default: '/tmp' + copy_build_context: + description: 'Whether to copy Docker build context (Dockerfile and related files) to remote host' + required: false + default: 'false' + build_context_path: + description: 'Local path to Docker build context (directory containing Dockerfile)' + required: false + default: '.' runs: using: 'composite' @@ -42,6 +50,8 @@ runs: DEPLOY_FILE="${{ inputs.deploy_file }}" DEPLOY_MODE="${{ inputs.deploy_mode }}" REMOTE_TEMP_DIR="${{ inputs.remote_temp_dir }}/$STACK_NAME" + COPY_BUILD_CONTEXT="${{ inputs.copy_build_context }}" + BUILD_CONTEXT_PATH="${{ inputs.build_context_path }}" echo "🚀 Starting deployment of '$STACK_NAME' to host '$SSH_HOST' using mode '$DEPLOY_MODE'" @@ -75,6 +85,14 @@ runs: "$DEPLOY_FILE" \ "$SSH_USER@$SSH_HOST:$REMOTE_TEMP_DIR/docker-compose.yml" + # Optionally copy Docker build context + if [ "$COPY_BUILD_CONTEXT" == "true" ]; then + echo "📂 DEBUG: Copying Docker build context from '$BUILD_CONTEXT_PATH' to remote host" + scp -o StrictHostKeyChecking=no -i "$SSH_KEY_FILE" -r \ + "$BUILD_CONTEXT_PATH"/* \ + "$SSH_USER@$SSH_HOST:$REMOTE_TEMP_DIR/" + fi + # Validate docker-compose file remotely before deploying echo "🔍 DEBUG: Validating Docker Compose file remotely" ssh -o StrictHostKeyChecking=no -i "$SSH_KEY_FILE" \