m5x2 #2
@@ -15,11 +15,6 @@ if [ -z "${INPUT_REMOTE_DOCKER_USER+x}" ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# if [ -z "${INPUT_SSH_PUBLIC_KEY+x}" ]; then
|
|
||||||
# echo "Input ssh_public_key is required!"
|
|
||||||
# exit 1
|
|
||||||
# fi
|
|
||||||
|
|
||||||
if [ -z "${INPUT_SSH_PRIVATE_KEY+x}" ]; then
|
if [ -z "${INPUT_SSH_PRIVATE_KEY+x}" ]; then
|
||||||
echo "Input ssh_private_key is required!"
|
echo "Input ssh_private_key is required!"
|
||||||
exit 1
|
exit 1
|
||||||
@@ -30,7 +25,11 @@ if [ -z "${INPUT_ARGS+x}" ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! [ -z "${INPUT_DEPLOY_PATH+x}" ]; then
|
CHANGE_DIR=true
|
||||||
|
if [ -z "${INPUT_DEPLOY_PATH+x}" ]; then
|
||||||
|
CHANGE_DIR=false
|
||||||
|
fi
|
||||||
|
if $CHANGE_DIR ; then
|
||||||
echo "Change working directory"
|
echo "Change working directory"
|
||||||
echo "Current: `pwd`"
|
echo "Current: `pwd`"
|
||||||
echo "Target: $INPUT_DEPLOY_PATH"
|
echo "Target: $INPUT_DEPLOY_PATH"
|
||||||
@@ -50,16 +49,13 @@ mkdir -p ~/.ssh
|
|||||||
ls ~/.ssh
|
ls ~/.ssh
|
||||||
printf '%s\n' "$INPUT_SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
|
printf '%s\n' "$INPUT_SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
|
||||||
chmod 600 ~/.ssh/id_rsa
|
chmod 600 ~/.ssh/id_rsa
|
||||||
# printf '%s\n' "$INPUT_SSH_PUBLIC_KEY" > ~/.ssh/id_rsa.pub
|
|
||||||
# chmod 600 ~/.ssh/id_rsa.pub
|
|
||||||
#chmod 600 "~/.ssh"
|
|
||||||
eval $(ssh-agent)
|
eval $(ssh-agent)
|
||||||
ssh-add ~/.ssh/id_rsa
|
ssh-add ~/.ssh/id_rsa
|
||||||
|
|
||||||
# echo "Add known hosts"
|
SSH_PROXY=ture
|
||||||
# ssh-keyscan -p $INPUT_REMOTE_DOCKER_PORT "$INPUT_REMOTE_DOCKER_HOST" >> ~/.ssh/known_hosts
|
if [ -z "${INPUT_SSH_PROXY_CMD+x}" ]; then
|
||||||
# ssh-keyscan -p $INPUT_REMOTE_DOCKER_PORT "$INPUT_REMOTE_DOCKER_HOST" >> /etc/ssh/ssh_known_hosts
|
SSH_PROXY=false
|
||||||
|
fi
|
||||||
echo "Add REMOTE_DOCKER_HOST alias to ~/.ssh/config"
|
echo "Add REMOTE_DOCKER_HOST alias to ~/.ssh/config"
|
||||||
touch ~/.ssh/config
|
touch ~/.ssh/config
|
||||||
echo >> ~/.ssh/config
|
echo >> ~/.ssh/config
|
||||||
@@ -70,25 +66,23 @@ echo " Port $INPUT_REMOTE_DOCKER_PORT" >> ~/.ssh/config
|
|||||||
echo " IdentityFile ~/.ssh/id_rsa" >> ~/.ssh/config
|
echo " IdentityFile ~/.ssh/id_rsa" >> ~/.ssh/config
|
||||||
echo " StrictHostKeyChecking no" >> ~/.ssh/config
|
echo " StrictHostKeyChecking no" >> ~/.ssh/config
|
||||||
echo " UserKnownHostsFile /dev/null" >> ~/.ssh/config
|
echo " UserKnownHostsFile /dev/null" >> ~/.ssh/config
|
||||||
if ! [ -z "${INPUT_SSH_PROXY_CMD+x}" ]; then
|
if $SSH_PROXY ; then
|
||||||
echo "Add ProxyCommand: $INPUT_SSH_PROXY_CMD"
|
echo "Add ProxyCommand: $INPUT_SSH_PROXY_CMD"
|
||||||
echo " ProxyCommand $INPUT_SSH_PROXY_CMD" >> ~/.ssh/config
|
echo " ProxyCommand $INPUT_SSH_PROXY_CMD" >> ~/.ssh/config
|
||||||
fi
|
fi
|
||||||
echo >> ~/.ssh/config
|
echo >> ~/.ssh/config
|
||||||
chmod 600 ~/.ssh/config
|
chmod 600 ~/.ssh/config
|
||||||
|
|
||||||
# echo "docker -v"
|
|
||||||
# echo `docker -v`
|
|
||||||
# echo "docker-compose -v"
|
|
||||||
# echo `docker-compose -v`
|
|
||||||
|
|
||||||
set context
|
set context
|
||||||
echo "Create docker context"
|
echo "Create docker context"
|
||||||
docker context create remote --docker "host=ssh://REMOTE_DOCKER_HOST"
|
docker context create remote --docker "host=ssh://REMOTE_DOCKER_HOST"
|
||||||
docker context use remote
|
docker context use remote
|
||||||
# sleep 1h
|
|
||||||
|
|
||||||
if ! [ -z "${INPUT_DOCKER_REGISTRY_USERNAME+x}" ] && ! [ -z "${INPUT_DOCKER_REGISTRY_PASSWORD+x}" ]; then
|
DOCKER_REGISTRY_LOGIN=true
|
||||||
|
if [ -z "${INPUT_DOCKER_REGISTRY_USERNAME+x}" ] || [ -z "${INPUT_DOCKER_REGISTRY_PASSWORD+x}" ]; then
|
||||||
|
DOCKER_REGISTRY_LOGIN=false
|
||||||
|
fi
|
||||||
|
if $DOCKER_REGISTRY_LOGIN ; then
|
||||||
echo "Connecting to $INPUT_DOCKER_REGISTRY_URI... Command: docker login"
|
echo "Connecting to $INPUT_DOCKER_REGISTRY_URI... Command: docker login"
|
||||||
echo "$INPUT_DOCKER_REGISTRY_PASSWORD" | docker login -u "$INPUT_DOCKER_REGISTRY_USERNAME" --password-stdin "$INPUT_DOCKER_REGISTRY_URI"
|
echo "$INPUT_DOCKER_REGISTRY_PASSWORD" | docker login -u "$INPUT_DOCKER_REGISTRY_USERNAME" --password-stdin "$INPUT_DOCKER_REGISTRY_URI"
|
||||||
fi
|
fi
|
||||||
@@ -98,13 +92,23 @@ if ! [ -z "${INPUT_DOCKER_PRUNE+x}" ] && [ $INPUT_DOCKER_PRUNE = 'true' ] ; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
DEPLOYMENT_COMMAND="docker --log-level=debug compose"
|
DEPLOYMENT_COMMAND="docker --log-level=debug compose"
|
||||||
if ! [ -z "${INPUT_STACK_FILE_NAME+x}" ]; then
|
|
||||||
|
STACK_FILE=true
|
||||||
|
if [ -z "${INPUT_STACK_FILE_NAME+x}" ]; then
|
||||||
|
STACK_FILE=false
|
||||||
|
fi
|
||||||
|
if $STACK_FILE ; then
|
||||||
DEPLOYMENT_COMMAND="$DEPLOYMENT_COMMAND -f ${INPUT_STACK_FILE_NAME//,/ -f }"
|
DEPLOYMENT_COMMAND="$DEPLOYMENT_COMMAND -f ${INPUT_STACK_FILE_NAME//,/ -f }"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! [ -z "${INPUT_ENV_FILE_NAME+x}" ]; then
|
ENV_FILE=true
|
||||||
|
if [ -z "${INPUT_ENV_FILE_NAME+x}" ]; then
|
||||||
|
ENV_FILE=false
|
||||||
|
fi
|
||||||
|
if $ENV_FILE ; then
|
||||||
DEPLOYMENT_COMMAND="$DEPLOYMENT_COMMAND --env-file ${INPUT_ENV_FILE_NAME//,/ --env-file }"
|
DEPLOYMENT_COMMAND="$DEPLOYMENT_COMMAND --env-file ${INPUT_ENV_FILE_NAME//,/ --env-file }"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# DEPLOYMENT_COMMAND_OPTIONS=""
|
# DEPLOYMENT_COMMAND_OPTIONS=""
|
||||||
|
|
||||||
echo "Connecting to $INPUT_REMOTE_DOCKER_HOST... Command: ${DEPLOYMENT_COMMAND} ${INPUT_ARGS}"
|
echo "Connecting to $INPUT_REMOTE_DOCKER_HOST... Command: ${DEPLOYMENT_COMMAND} ${INPUT_ARGS}"
|
||||||
|
|||||||
Reference in New Issue
Block a user