put back to original way and use more runners #39
Workflow file for this run
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: Linux ICD tests | |
on: | |
push: | |
schedule: | |
- cron: '0 0 * * *' # UTC time | |
env: | |
ICD_RXJS_BRANCH_NAME: dev | |
jobs: | |
Build: | |
name: Build ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
path: source | |
- name: Build backend | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
rm -rf $BUILD_DIR | |
mkdir -p $BUILD_DIR | |
apptainer exec --bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE --pwd $SRC_DIR ${{ matrix.image }} /bin/bash -c "\ | |
git submodule update --init --recursive && \ | |
cd $BUILD_DIR && \ | |
cmake $SRC_DIR \ | |
-Dtest=on \ | |
-DCMAKE_BUILD_TYPE=Debug \ | |
-DDevSuppressExternalWarnings=ON \ | |
-DCMAKE_CXX_FLAGS='-O0 -g -fsanitize=address -fno-omit-frame-pointer' \ | |
-DCMAKE_EXE_LINKER_FLAGS='-fsanitize=address' && \ | |
make -j 16" | |
- name: Check backend runs | |
shell: bash | |
run: | | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
apptainer exec --bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE --pwd $BUILD_DIR ${{ matrix.image }} /bin/bash -c "./carta_backend --version" | |
Prepare-ICD-RxJS: | |
name: Prepare-ICD-RxJS ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: Build | |
steps: | |
- name: Prepare ICD-RxJS | |
shell: bash | |
run: | | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
ICD_RXJS_DIR=$BUILD_DIR/ICD-RxJS | |
apptainer exec --bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE --pwd $BUILD_DIR ${{ matrix.image }} /bin/bash -c "\ | |
if [ -d '$ICD_RXJS_DIR' ]; then | |
cd $ICD_RXJS_DIR && git pull | |
else | |
echo 'Cloning ICD-RxJS repository...' | |
git clone https://github.com/CARTAvis/ICD-RxJS.git | |
cd ICD-RxJS | |
fi && \ | |
git checkout ${{ env.ICD_RXJS_BRANCH_NAME }} && \ | |
git submodule init && git submodule update && npm install && \ | |
cd protobuf && \ | |
./build_proto.sh && \ | |
cd ../src/test && \ | |
perl -p -i -e 's/3002/${{ matrix.port }}/' config.json" | |
File-Browser-ICD-Tests: | |
name: File-Browser ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Build, Prepare-ICD-RxJS] | |
steps: | |
- name: File Browser ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/file_browser.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_file_browser.log" | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Animator-ICD-Tests: | |
name: Animator ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Animator ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/animator.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_animator.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Region-Statistics-ICD-Tests: | |
name: Region-Statistics ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Region Statistics ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/region_statistics.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_region_statistics.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Region-Manipulation-ICD-Tests: | |
name: Region-Manipulation ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Region Manipulation ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/region_manipulation.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_region_manipulation.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Cube-Histogram-ICD-Tests: | |
name: Cube-Histogram ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Cube Histogram ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/cube_histogram.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_cube_histogram.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
PV-Generator-ICD-Tests: | |
name: PV-Generator ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: PV Generator ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/pv_generator.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_pv_generator.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Raster-Tiles-ICD-Tests: | |
name: Raster-Tiles ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Raster Tiles ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/raster_tiles.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_raster_tiles.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Catalog-ICD-Tests: | |
name: Catalog ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Catalog ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/catalog.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_catalog.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Moment-ICD-Tests: | |
name: Moment ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Moment ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/moment.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_moment.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Match-ICD-Tests: | |
name: Match ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Match ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/match.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_match.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Close-File-Tests: | |
name: Close-File ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Close File ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/close_file.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_close_file.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Image-Fitting-Tests: | |
name: Image-Fitting ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Image Fitting ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/image_fitting.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_image_fitting.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" | |
Vector-Overlay-Tests: | |
name: Vector-Overlay ${{ matrix.os_version }} | |
runs-on: ${{ matrix.runner }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os_version: ubuntu-20.04 | |
runner: [self-hosted, Linux, Apptainer, ICD1] | |
image: /opt/apptainer/ubuntu-2004-dec2023.sif | |
port: 9001 | |
- os_version: ubuntu-22.04 | |
runner: [self-hosted, Linux, Apptainer, ICD2] | |
image: /opt/apptainer/ubuntu-2204-dec2023.sif | |
port: 9002 | |
- os_version: rhel-7 | |
runner: [self-hosted, linux, Apptainer, ICD3] | |
image: /opt/apptainer/centos7-dec2023.sif | |
port: 9003 | |
- os_version: rhel-8 | |
runner: [self-hosted, linux, Apptainer, ICD4] | |
image: /opt/apptainer/almalinux8-dec2023.sif | |
port: 9004 | |
- os_version: rhel-9 | |
runner: [self-hosted, linux, Apptainer, ICD5] | |
image: /opt/apptainer/almalinux9-dec2023.sif | |
port: 9005 | |
needs: [Prepare-ICD-RxJS] | |
steps: | |
- name: Vector Overlay ICD tests | |
shell: bash | |
run: | | |
SRC_DIR=$GITHUB_WORKSPACE/source | |
BUILD_DIR=$GITHUB_WORKSPACE/build-${{ matrix.os_version }} | |
TEST_STAGE="$BUILD_DIR/ICD-RxJS/ICD_test_stages/vector_overlay.tests" | |
LOG_FILE="/tmp/carta_icd_${{ matrix.os_version }}_vector_overlay.log" | |
PORT_NUMBER=${{ matrix.port }} | |
apptainer exec \ | |
--bind $GITHUB_WORKSPACE:$GITHUB_WORKSPACE \ | |
--bind /images:/images \ | |
--pwd $BUILD_DIR \ | |
${{ matrix.image }} /bin/bash -c "\ | |
# Start the carta_backend | |
ASAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan.supp \ | |
LSAN_OPTIONS=suppressions=$SRC_DIR/debug/asan/myasan-leaks.supp \ | |
ASAN_SYMBOLIZER_PATH=llvm-symbolizer \ | |
./carta_backend /images \ | |
--top_level_folder /images \ | |
--port ${{ matrix.port }} \ | |
--omp_threads=4 \ | |
--debug_no_auth \ | |
--no_frontend \ | |
--no_database \ | |
--no_log \ | |
--verbosity=5 >> $LOG_FILE 2>&1 & \ | |
CARTA_BACKEND_PID=\$(pgrep -f 'carta_backend.*${{ matrix.port }}' | head -n 1) && \ | |
echo 'carta_backend started with PID' \$CARTA_BACKEND_PID && \ | |
# Run the ICD tests | |
cd $BUILD_DIR/ICD-RxJS && \ | |
pwd && \ | |
cat $TEST_STAGE && \ | |
while IFS= read -r test_file || [[ -n "\$test_file" ]]; do | |
CI=true npm test -- "\$test_file" | |
done < $TEST_STAGE" |