diff --git a/.gitea/workflows/production-deploy.yml b/.gitea/workflows/production-deploy.yml index c16a678a..971ffaa5 100644 --- a/.gitea/workflows/production-deploy.yml +++ b/.gitea/workflows/production-deploy.yml @@ -637,19 +637,72 @@ jobs: chmod 600 ~/.ssh/production ssh-keyscan -H ${{ env.DEPLOYMENT_HOST }} >> ~/.ssh/known_hosts - - name: Verify Ansible installation - run: ansible --version - - - name: Deploy via Ansible + - name: Deploy via SSH run: | - cd /workspace/repo/deployment/ansible - ansible-playbook -i inventory/production.yml \ - playbooks/deploy-update.yml \ - -e "image_tag=${{ needs.build.outputs.image_tag }}" \ - -e "git_commit_sha=${{ needs.build.outputs.commit_sha }}" \ - -e "deployment_timestamp=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" \ - -e "docker_registry_username=${{ secrets.REGISTRY_USER }}" \ - -e "docker_registry_password=${{ secrets.REGISTRY_PASSWORD }}" + set -e + + DEPLOYMENT_HOST="${{ env.DEPLOYMENT_HOST }}" + REGISTRY="${{ env.REGISTRY }}" + IMAGE_NAME="${{ env.IMAGE_NAME }}" + IMAGE_TAG="${{ needs.build.outputs.image_tag }}" + FULL_IMAGE="${REGISTRY}/${IMAGE_NAME}:${IMAGE_TAG}" + STACK_PATH="~/deployment/stacks/application" + + echo "🚀 Starting deployment..." + echo " Image: ${FULL_IMAGE}" + echo " Host: ${DEPLOYMENT_HOST}" + echo " Stack: ${STACK_PATH}" + + # SSH with proper key and execute deployment commands + ssh -i ~/.ssh/production \ + -o StrictHostKeyChecking=no \ + -o UserKnownHostsFile=/dev/null \ + deploy@${DEPLOYMENT_HOST} <