mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
try running in parallel
This commit is contained in:
parent
d96638170d
commit
33cae5b77b
8
.github/workflows/test.yml
vendored
8
.github/workflows/test.yml
vendored
@ -247,6 +247,11 @@ jobs:
|
|||||||
name: Fullstack tests
|
name: Fullstack tests
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: [build_test_webapp, build_test_backend, build_test_neo4j]
|
needs: [build_test_webapp, build_test_backend, build_test_neo4j]
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
# run copies of the current job in parallel
|
||||||
|
jobs: 5
|
||||||
|
job: [0, 1, 2, 3, 4]
|
||||||
steps:
|
steps:
|
||||||
##########################################################################
|
##########################################################################
|
||||||
# CHECKOUT CODE ##########################################################
|
# CHECKOUT CODE ##########################################################
|
||||||
@ -289,8 +294,7 @@ jobs:
|
|||||||
- name: cypress | Fullstack tests
|
- name: cypress | Fullstack tests
|
||||||
run: |
|
run: |
|
||||||
yarn install
|
yarn install
|
||||||
yarn run cypress:run
|
yarn run cypress:run --spec $(cypress/parallel-features.sh ${{ matrix.job }} ${{ matrix.jobs }})
|
||||||
|
|
||||||
##########################################################################
|
##########################################################################
|
||||||
# UPLOAD SCREENSHOTS & VIDEO #############################################
|
# UPLOAD SCREENSHOTS & VIDEO #############################################
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|||||||
19
cypress/parallel-features.sh
Executable file
19
cypress/parallel-features.sh
Executable file
@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Functions
|
||||||
|
function join_by { local IFS="$1"; shift; echo "$*"; }
|
||||||
|
|
||||||
|
# Arguments:
|
||||||
|
CUR_JOB=$1
|
||||||
|
MAX_JOBS=$2
|
||||||
|
|
||||||
|
# Features
|
||||||
|
FEATURE_LIST=( $(find cypress/integration/ -maxdepth 1 -name "*.feature") )
|
||||||
|
|
||||||
|
# Calculation
|
||||||
|
MAX_FEATURES=$(find cypress/integration/ -maxdepth 1 -name "*.feature" -printf '.' | wc -m)
|
||||||
|
FEATURES_PER_JOB=$(expr $(expr ${MAX_FEATURES} + ${MAX_JOBS} - 1) / ${MAX_JOBS} )
|
||||||
|
FEATURES_SKIP=$(expr $(expr ${CUR_JOB} - 1 ) \* ${FEATURES_PER_JOB} )
|
||||||
|
|
||||||
|
# Comma separated list
|
||||||
|
echo $(join_by , ${FEATURE_LIST[@]:${FEATURES_SKIP}:${FEATURES_PER_JOB}})
|
||||||
Loading…
x
Reference in New Issue
Block a user