Skip to content

workflow

workflow #1

Workflow file for this run

name: Run Interface Tests with Docker
on:
push:
branches:
- main
- cicd
pull_request:
jobs:
build-test:
runs-on: ubuntu-latest
steps:
# Paso 1: Clonar el repositorio
- name: Checkout repository
uses: actions/checkout@v3
# Paso 2: Configurar Docker
- name: Set up Docker
uses: docker/setup-buildx-action@v2
# Paso 3: Iniciar contenedores Docker
- name: Start Docker containers
run: |
docker-compose -f docker-compose.yml up -d # Levanta los contenedores en segundo plano
timeout-minutes: 5
# Paso 4: Esperar a que los servicios estén listos
- name: Wait for services to be ready
run: |
while ! curl -s http://localhost:8443; do sleep 1; done
while ! nc -z localhost 3307; do sleep 1; done
while ! curl -s http://localhost:4200; do sleep 1; done
# Paso 5: Configurar Java
- name: Set up JDK
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17' # Cambia según tu versión de Java
# Paso 6: Configurar Maven cache
- name: Cache Maven packages
uses: actions/cache@v3
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-m2
# Paso 7: Ejecutar las pruebas de interfaz
- name: Run interface tests
run: mvn clean test -Dtest=LoginUiTests.java # Ajusta según tu clase de pruebas
# Paso 8: Detener contenedores Docker
- name: Stop Docker containers
run: |
docker-compose -f docker-compose.yml down