refactor: switch ssh remote variable passing to positional arguments for deploy-qa pipeline
CI Pipeline / HTML Lint (push) Successful in 11s
Deploy QA / Build and Push (push) Successful in 21s
CI Pipeline / Build Docker Image (push) Successful in 1m3s
Deploy QA / Deploy to QA (push) Successful in 9s
CI Pipeline / Security Scan (push) Successful in 21s
CI Pipeline / HTML Lint (push) Successful in 11s
Deploy QA / Build and Push (push) Successful in 21s
CI Pipeline / Build Docker Image (push) Successful in 1m3s
Deploy QA / Deploy to QA (push) Successful in 9s
CI Pipeline / Security Scan (push) Successful in 21s
This commit is contained in:
@@ -65,23 +65,38 @@ jobs:
|
|||||||
mkdir -p ~/.ssh
|
mkdir -p ~/.ssh
|
||||||
ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null
|
ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null
|
||||||
|
|
||||||
|
# 1. Pasamos las variables como argumentos en el mismo orden
|
||||||
ssh ${{ secrets.DEPLOY_USERNAME }}@${{ secrets.DEPLOY_HOST }} bash -s \
|
ssh ${{ secrets.DEPLOY_USERNAME }}@${{ secrets.DEPLOY_HOST }} bash -s \
|
||||||
-e REGISTRY_URL=${{ env.REGISTRY_URL }} \
|
"${{ env.REGISTRY_URL }}" \
|
||||||
-e IMAGE_NAME=${{ env.IMAGE_NAME }} \
|
"${{ env.IMAGE_NAME }}" \
|
||||||
-e IMAGE_TAG=${IMAGE_TAG} \
|
"${IMAGE_TAG}" \
|
||||||
-e GIT_SHA=${{ gitea.sha }} \
|
"${{ gitea.sha }}" \
|
||||||
-e GIT_BRANCH=dev \
|
"${{ gitea.actor }}" \
|
||||||
-e GITEA_ACTOR=${{ gitea.actor }} \
|
"${{ gitea.run_id }}" \
|
||||||
-e BUILD_NUMBER=${{ gitea.run_id }} \
|
"${{ secrets.TOKEN }}" << 'EOF'
|
||||||
-e TOKEN=${{ secrets.TOKEN }} << 'EOF'
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
# 2. Las recibimos dentro de la sesión remota
|
||||||
|
REGISTRY_URL=$1
|
||||||
|
IMAGE_NAME=$2
|
||||||
|
IMAGE_TAG=$3
|
||||||
|
GIT_SHA=$4
|
||||||
|
GITEA_ACTOR=$5
|
||||||
|
BUILD_NUMBER=$6
|
||||||
|
TOKEN=$7
|
||||||
|
|
||||||
|
# Variables locales del script
|
||||||
|
GIT_BRANCH="dev"
|
||||||
BUILD_DATE=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
|
BUILD_DATE=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
|
||||||
|
|
||||||
echo "Pulling image..."
|
echo "Pulling image..."
|
||||||
echo "$TOKEN" | docker login $REGISTRY_URL -u $GITEA_ACTOR --password-stdin
|
echo "$TOKEN" | docker login $REGISTRY_URL -u $GITEA_ACTOR --password-stdin
|
||||||
docker pull $REGISTRY_URL/$IMAGE_NAME:$IMAGE_TAG
|
docker pull $REGISTRY_URL/$IMAGE_NAME:$IMAGE_TAG
|
||||||
|
|
||||||
echo "Stopping existing container..."
|
echo "Stopping existing container..."
|
||||||
docker stop cicd-qa 2>/dev/null || true
|
docker stop cicd-qa 2>/dev/null || true
|
||||||
docker rm cicd-qa 2>/dev/null || true
|
docker rm cicd-qa 2>/dev/null || true
|
||||||
|
|
||||||
echo "Starting new container..."
|
echo "Starting new container..."
|
||||||
docker run -d --name cicd-qa --restart unless-stopped -p 8081:80 \
|
docker run -d --name cicd-qa --restart unless-stopped -p 8081:80 \
|
||||||
-e APP_ENV=qa \
|
-e APP_ENV=qa \
|
||||||
@@ -92,6 +107,7 @@ jobs:
|
|||||||
-e DEPLOY_TIME=${BUILD_DATE} \
|
-e DEPLOY_TIME=${BUILD_DATE} \
|
||||||
-e BUILD_NUMBER=${BUILD_NUMBER} \
|
-e BUILD_NUMBER=${BUILD_NUMBER} \
|
||||||
$REGISTRY_URL/$IMAGE_NAME:$IMAGE_TAG
|
$REGISTRY_URL/$IMAGE_NAME:$IMAGE_TAG
|
||||||
|
|
||||||
echo "Waiting for health check..."
|
echo "Waiting for health check..."
|
||||||
for i in $(seq 1 12); do
|
for i in $(seq 1 12); do
|
||||||
if curl -sf http://localhost:8081/health > /dev/null 2>&1; then
|
if curl -sf http://localhost:8081/health > /dev/null 2>&1; then
|
||||||
@@ -103,5 +119,3 @@ jobs:
|
|||||||
echo "::error::QA health check failed"
|
echo "::error::QA health check failed"
|
||||||
exit 1
|
exit 1
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user