fix: refs #6695 try
gitea/salix-front/pipeline/pr-dev This commit looks good Details

This commit is contained in:
Alex Moreno 2025-02-13 09:35:49 +01:00
parent 480ab7552e
commit 1faa5b74df
1 changed files with 33 additions and 33 deletions

66
Jenkinsfile vendored
View File

@ -186,43 +186,43 @@ def cleanDockerE2E() {
def runTestsInParallel(int numParallelGroups) { def runTestsInParallel(int numParallelGroups) {
def folders = sh(script: "ls -d test/cypress/integration/*/ || echo ''", returnStdout: true).trim().split('\n').findAll { it } def folders = sh(script: "ls -d test/cypress/integration/*/ || echo ''", returnStdout: true).trim().split('\n').findAll { it }
if (folders.isEmpty()) { // if (folders.isEmpty()) {
echo "No se encontraron carpetas de pruebas." // echo "No se encontraron carpetas de pruebas."
return // return
} // }
// Divide las carpetas en grupos para paralelizar // // Divide las carpetas en grupos para paralelizar
def groupSize = Math.ceil(folders.size() / numParallelGroups).toInteger() // def groupSize = Math.ceil(folders.size() / numParallelGroups).toInteger()
def groups = folders.collate(groupSize) // def groups = folders.collate(groupSize)
def tasks = [:] // def tasks = [:]
groups.eachWithIndex { group, index -> // groups.eachWithIndex { group, index ->
tasks["parallel_group_${index + 1}"] = { // tasks["parallel_group_${index + 1}"] = {
script { // script {
group.each { testFolder -> // group.each { testFolder ->
def folderName = testFolder.replaceAll('test/cypress/integration/', '').replaceAll('/', '') // def folderName = testFolder.replaceAll('test/cypress/integration/', '').replaceAll('/', '')
folderName = folderName.replaceAll('[^a-zA-Z0-9_-]', '') // Sanitización de nombres // folderName = folderName.replaceAll('[^a-zA-Z0-9_-]', '') // Sanitización de nombres
stage("Run ${folderName}") { // stage("Run ${folderName}") {
try { // try {
env.CYPRESS_SPEC = "test/cypress/integration/${folderName}/**/*.spec.js" // env.CYPRESS_SPEC = "test/cypress/integration/${folderName}/**/*.spec.js"
sh "docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml up -d back" // sh "docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml up -d back"
sh "docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml up -d front" // sh "docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml up -d front"
sh "CYPRESS_SPEC=test/cypress/integration/${folderName}/**/*.spec.js docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml up e2e" // sh "CYPRESS_SPEC=test/cypress/integration/${folderName}/**/*.spec.js docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml up e2e"
checkErrors(folderName) // checkErrors(folderName)
} catch (Exception e) { // } catch (Exception e) {
echo "Error en la ejecución de ${folderName}: ${e.message}" // echo "Error en la ejecución de ${folderName}: ${e.message}"
currentBuild.result = 'UNSTABLE' // currentBuild.result = 'UNSTABLE'
} finally { // } finally {
sh "docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml down || true" // sh "docker-compose -p ${env.NETWORK}_${folderName} -f docker-compose.e2e.yml down || true"
} // }
} // }
} // }
} // }
} // }
} // }
parallel tasks // parallel tasks
} }