Skip to content

cypress despliegue en vercel #99

cypress despliegue en vercel

cypress despliegue en vercel #99

Workflow file for this run

name: Cypress CI
on:
push:
branches:
- master # Despliegue en producción
- julio # Ramas de desarrollo
- irving # Ramas de desarrollo
- jesus # Ramas de desarrollo
- feature/* # Ramas de características
pull_request:
branches:
- master
- julio
- irving
- jesus
workflow_dispatch: # Activación manual opcional
jobs:
cypress:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2 # Clonar el repositorio
- name: Set up Node.js
uses: actions/setup-node@v2
with:
node-version: '16'
- name: Cache Node modules
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install dependencies
run: npm install --legacy-peer-deps # Instalar dependencias
- name: Start the server
run: npm run dev & sleep 5 # Iniciar el servidor y esperar 5 segundos para que esté listo
- name: Run Cypress tests
run: npx cypress run # Ejecutar las pruebas de Cypress
# Guardar resultados de pruebas como artefactos
- name: Archive Cypress results
if: always()
uses: actions/upload-artifact@v3
with:
name: cypress-results
path: cypress/results
# Desplegar a Vercel si las pruebas pasan
- name: Deploy to Vercel
if: success() # Ejecutar solo si las pruebas pasaron
run: npx vercel --prod --yes --token=${{ secrets.VERCEL_TOKEN }}
# Notificar en caso de éxito o fallo
- name: Notify result
if: failure() && github.event_name == 'pull_request'
uses: actions/github-script@v4
with:
script: |
github.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: "❌ Las pruebas E2E de Cypress han fallado. Revisa los resultados adjuntos."
})