Skip to content

Implement Pipeline Automation #58

Implement Pipeline Automation

Implement Pipeline Automation #58

Workflow file for this run

# This workflow will build opal, install its build, then runs the tests with pytest.
name: Test Model Pipeline Inference
on: [ pull_request ]
jobs:
build:
timeout-minutes: 10
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- name: Checkout repository with submodules
uses: actions/checkout@v3
with:
submodules: true
- name: Execute Pipeline
working-directory: src/
shell: bash
run: |
chmod +x pipeline.sh
./pipeline.sh
- name: Get Docker Logs on Fail
working-directory: src/
if: always()
run: |
for SVC in 1.preprocess 2.svness 3.preprocess 4.export; do
docker compose \
--profile files \
-f preprocess/docker-compose.yml \
--env-file preprocess/osu-data-docker/.env \
logs $SVC > ${SVC}.log
done
#
# - name: Check Pipeline Cache
# working-directory: src/.pipeline_cache
# run: |
# [ -f cache.env ] || { echo "Cache file not found"; exit 1; }
# cat cache.env >> $GITHUB_ENV
#
# - name: Check all env variables are set
# run: |
# : "${PIPELINE_RUN_CACHE:?PIPELINE_RUN_CACHE not set}"
# : "${DB_URL:?DB_URL not set}"
# : "${FILES_URL:?FILES_URL not set}"
# : "${FILES_DIR:?FILES_DIR not set}"
# : "${MODEL_NAME:?MODEL_NAME not set}"
# : "${DATASET_NAME:?DATASET_NAME not set}"
# : "${DB_NAME:?DB_NAME not set}"
# : "${DB_USERNAME:?DB_USERNAME not set}"
# : "${DB_PASSWORD:?DB_PASSWORD not set}"
# : "${DB_HOST:?DB_HOST not set}"
# : "${DB_PORT:?DB_PORT not set}"
# : "${SR_MIN:?SR_MIN not set}"
# : "${SR_MAX:?SR_MAX not set}"
# : "${ACC_MIN:?ACC_MIN not set}"
# : "${ACC_MAX:?ACC_MAX not set}"
# : "${MIN_SCORES_PER_MID:?MIN_SCORES_PER_MID not set}"
# : "${MIN_SCORES_PER_UID:?MIN_SCORES_PER_UID not set}"
# : "${MAX_SVNESS:?MAX_SVNESS not set}"
# : "${MODEL_PATH:?MODEL_PATH not set}"
- name: Export src as Artifact
if: always()
uses: actions/upload-artifact@v3
with:
name: src
path: src/