This repository has been archived by the owner on Dec 10, 2024. It is now read-only.
Deploy on EC2 #16
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy on EC2 | |
on: | |
workflow_run: | |
workflows: | |
- Build and Push Docker Image (Dev) | |
types: | |
- completed | |
jobs: | |
deploy: | |
if: ${{ github.event.workflow_run.conclusion == 'success' }} | |
runs-on: ubuntu-latest | |
steps: | |
# Paso 1: Configurar SSH | |
- name: Set up SSH | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.EC2_SSH_KEY }} | |
# Paso 2: Implementar en el servidor EC2 | |
- name: Deploy on EC2 | |
run: | | |
ssh -o StrictHostKeyChecking=no ubuntu@${{ secrets.EC2_IP }} << EOF | |
# Informacion | |
echo "-----------------> docker system df" | |
sudo docker system df | |
# Detenemos los contenedores | |
echo "-----------------> Deteniendo contenedores..." | |
echo "cd /home/ubuntu/crewland/i004-devops/crewland" | |
cd /home/ubuntu/crewland/i004-devops/crewland | |
echo "sudo docker-compose -f docker-compose-front-deploy-ec2.yml down" | |
sudo docker-compose -f docker-compose-front-deploy-ec2.yml down -v | |
# Eliminando volumenes e imagenes huerfanos | |
echo "-----------------> Eliminando volumenes e imagenes huerfanos" | |
echo "docker volume prune -f" | |
sudo docker volume prune -f | |
echo "docker image prune -f" | |
sudo docker image prune -f | |
Eliminar imágenes no utilizadas | |
echo "docker image prune -a -f" | |
sudo docker image prune -a -f | |
# Informacion | |
echo "-----------------> docker system df" | |
sudo docker system df | |
# Ir al directorio del proyecto | |
echo "-----------------> Actualizar el contenido del repositorio" | |
echo "cd /home/ubuntu/crewland/i004-devops" | |
cd /home/ubuntu/crewland/i004-devops | |
# Eliminar cambios locales no deseados | |
echo "-----------------> Eliminar cambios locales no deseados" | |
echo "git reset --hard" | |
git reset --hard | |
# Actualiza desde la rama main | |
echo "-----------------> Actualiza desde la rama main" | |
echo "git pull origin main" | |
git pull origin main | |
# Iniciando contenedor del frontend | |
echo "-----------------> Iniciando frontend..." | |
echo "cd /home/ubuntu/crewland/i004-devops/crewland" | |
cd /home/ubuntu/crewland/i004-devops/crewland | |
echo "sudo docker-compose -f docker-compose-front-deploy-ec2.yml up --build -d" | |
sudo docker-compose -f docker-compose-front-deploy-ec2.yml up --build -d | |
# Eliminando volumenes e imagenes huerfanos | |
echo "-----------------> Eliminando volumenes e imagenes huerfanos" | |
echo "docker volume prune -f" | |
sudo docker volume prune -f | |
echo "docker image prune -f" | |
sudo docker image prune -f | |
Eliminar imágenes no utilizadas | |
echo "docker image prune -a -f" | |
sudo docker image prune -a -f | |
EOF |