diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index c93f924..8e34fe5 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -12,55 +12,6 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 -<<<<<<< HEAD - - - name: Build Backend Image and Extract - run: | - echo "Building backend image..." - # 1. Ejecutamos Kaniko y le damos un nombre, SIN --rm - docker run --name kaniko-backend \ - -v ${{ gitea.workspace }}:/workspace \ - gcr.io/kaniko-project/executor:v1.9.0 \ - --context=/workspace \ - --dockerfile=/workspace/Backend/GestionIntegral.Api/Dockerfile \ - --no-push \ - --destination=${{ gitea.actor }}/${{ toLower(gitea.repository_name) }}-backend:latest \ - --tarPath=/kaniko/backend.tar # Guardamos en una ruta interna de Kaniko - - echo "Extracting backend image..." - # 2. Copiamos el archivo desde el contenedor de Kaniko al workspace del job - docker cp kaniko-backend:/kaniko/backend.tar ${{ gitea.workspace }}/backend.tar - - echo "Cleaning up backend builder..." - # 3. Eliminamos el contenedor de Kaniko - docker rm kaniko-backend - - - name: Build Frontend Image and Extract - run: | - echo "Building frontend image..." - docker run --name kaniko-frontend \ - -v ${{ gitea.workspace }}:/workspace \ - gcr.io/kaniko-project/executor:v1.9.0 \ - --context=/workspace \ - --dockerfile=/workspace/Frontend/Dockerfile \ - --no-push \ - --destination=${{ gitea.actor }}/${{ toLower(gitea.repository_name) }}-frontend:latest \ - --tarPath=/kaniko/frontend.tar - - echo "Extracting frontend image..." - docker cp kaniko-frontend:/kaniko/frontend.tar ${{ gitea.workspace }}/frontend.tar - - echo "Cleaning up frontend builder..." - docker rm kaniko-frontend - - - name: Verify Artifacts - run: | - echo "--- Verifying contents of workspace ---" - ls -l ${{ gitea.workspace }} - - - name: Deploy to Production via SCP and SSH - run: | -======= # Ya no necesitamos crear config.json. La acción de login lo maneja. - name: Login to Gitea Registry @@ -90,7 +41,6 @@ jobs: # El despliegue ahora es un paso final en el mismo job - name: Deploy to Production via SSH run: | ->>>>>>> 2d44116 (Retry 1243) set -e echo "Preparing SSH client..." apt-get update && apt-get install -y openssh-client @@ -99,39 +49,21 @@ jobs: chmod 600 ~/.ssh/id_rsa ssh-keyscan -H ${{ secrets.PROD_SERVER_HOST }} >> ~/.ssh/known_hosts -<<<<<<< HEAD - echo "Copying image files to production server..." - scp ${{ gitea.workspace }}/backend.tar ${{ gitea.workspace }}/frontend.tar ${{ secrets.PROD_SERVER_USER }}@${{ secrets.PROD_SERVER_HOST }}:/opt/gestion-integral/ - - echo "Connecting to host to load images and deploy..." -======= echo "Connecting to host to deploy..." ->>>>>>> 2d44116 (Retry 1243) ssh ${{ secrets.PROD_SERVER_USER }}@${{ secrets.PROD_SERVER_HOST }} << 'EOF' set -e echo "--- CONECTADO AL SERVIDOR DE PRODUCCIÓN ---" cd /opt/gestion-integral - echo "Loading images into Docker..." - docker load < backend.tar - docker load < frontend.tar - - echo "Starting application stack..." export DB_SA_PASSWORD="${{ secrets.DB_SA_PASSWORD_SECRET }}" export JWT_KEY="${{ secrets.JWT_KEY_SECRET }}" -<<<<<<< HEAD -======= # El login ya no es necesario aquí, el demonio ya tiene la sesión # del paso anterior del pipeline. Pero lo dejamos por robustez. echo "${{ secrets.ACTIONS_PAT }}" | docker login 127.0.0.1:5000 -u ${{ secrets.REGISTRY_USER }} --password-stdin docker compose pull ->>>>>>> 2d44116 (Retry 1243) docker compose up -d - - echo "Cleaning up tar files and old images..." - rm backend.tar frontend.tar docker image prune -af echo "--- ¡¡DESPLIEGUE COMPLETADO Y VERIFICADO!! ---"