runner v6
Some checks failed
Test Build Deploy / Test (push) Successful in 1m25s
Test Build Deploy / Build (push) Successful in 1m34s
Test Build Deploy / Deploy (push) Failing after 10s

This commit is contained in:
pesu98
2026-05-13 12:42:42 +08:00
parent c90ab7c990
commit 653581a16e

View File

@@ -125,11 +125,17 @@ jobs:
- name: Install SSH password helper - name: Install SSH password helper
run: sudo apt-get update && sudo apt-get install -y sshpass run: sudo apt-get update && sudo apt-get install -y sshpass
- name: Configure SSH known hosts - name: Validate deployment secrets
run: |
test -n "${SSH_HOST}" || (echo "Missing required secret: SSH_HOST" && exit 1)
test -n "${SSH_USER}" || (echo "Missing required secret: SSH_USER" && exit 1)
test -n "${SSH_PASSWORD}" || (echo "Missing required secret: SSH_PASSWORD" && exit 1)
test -n "${DEPLOY_PATH}" || (echo "Missing required secret: DEPLOY_PATH" && exit 1)
- name: Configure SSH
run: | run: |
mkdir -p ~/.ssh mkdir -p ~/.ssh
chmod 700 ~/.ssh chmod 700 ~/.ssh
ssh-keyscan -p "${SSH_PORT:-22}" "${SSH_HOST}" >> ~/.ssh/known_hosts
- name: Create deployment environment file - name: Create deployment environment file
if: env.APP_ENV_FILE != '' if: env.APP_ENV_FILE != ''
@@ -137,16 +143,24 @@ jobs:
- name: Upload release to server - name: Upload release to server
run: | run: |
SSHPASS="${SSH_PASSWORD}" sshpass -e rsync -avz -e "ssh -p ${SSH_PORT:-22}" "${RELEASE_FILE}" "${SSH_USER}@${SSH_HOST}:/tmp/${RELEASE_FILE}" SSHPASS="${SSH_PASSWORD}" sshpass -e rsync -avz \
-e "ssh -p ${SSH_PORT:-22} -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" \
"${RELEASE_FILE}" "${SSH_USER}@${SSH_HOST}:/tmp/${RELEASE_FILE}"
- name: Upload environment file to server - name: Upload environment file to server
if: env.APP_ENV_FILE != '' if: env.APP_ENV_FILE != ''
run: | run: |
SSHPASS="${SSH_PASSWORD}" sshpass -e rsync -avz -e "ssh -p ${SSH_PORT:-22}" .env.deploy "${SSH_USER}@${SSH_HOST}:/tmp/.env.deploy" SSHPASS="${SSH_PASSWORD}" sshpass -e rsync -avz \
-e "ssh -p ${SSH_PORT:-22} -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" \
.env.deploy "${SSH_USER}@${SSH_HOST}:/tmp/.env.deploy"
- name: Extract release and finalize deployment - name: Extract release and finalize deployment
run: | run: |
SSHPASS="${SSH_PASSWORD}" sshpass -e ssh -p "${SSH_PORT:-22}" "${SSH_USER}@${SSH_HOST}" << EOF SSHPASS="${SSH_PASSWORD}" sshpass -e ssh \
-p "${SSH_PORT:-22}" \
-o StrictHostKeyChecking=no \
-o UserKnownHostsFile=/dev/null \
"${SSH_USER}@${SSH_HOST}" << EOF
set -e set -e
mkdir -p "${DEPLOY_PATH}" mkdir -p "${DEPLOY_PATH}"
tar -xzf "/tmp/${RELEASE_FILE}" -C "${DEPLOY_PATH}" tar -xzf "/tmp/${RELEASE_FILE}" -C "${DEPLOY_PATH}"