Skip to content

Workflow file for this run

name: CI
on:
push:
branches: [ master, dev ]
pull_request:
branches: [ master, dev ]
jobs:
# First job runs inside the ODKFull container
validate_obo:
runs-on: ubuntu-latest
container:
image: obolibrary/odkfull
steps:
- uses: actions/checkout@v4
- name: Validate OBO file
run: fastobo-validator --all pride_cv.obo
# Second job runs inside the Robot container
convert_and_validate_owl:
runs-on: ubuntu-latest
needs: validate_obo # Ensures this runs after the previous job
container:
image: obolibrary/robot
steps:
- uses: actions/checkout@v4
- name: Generate OWL and validate it
run: |
# Replace the imports of the UO and PATO ontology .obo files with the equivalent .owl files
cp pride_cv.obo tmp_pride.obo
cp unimod.obo tmp_unimod.obo
sed -e "s/pato.obo/pato.owl/g" -e "s/uo.obo/uo.owl/g" -i tmp_pride.obo
sed -e "s/pato.obo/pato.owl/g" -e "s/uo.obo/uo.owl/g" -i tmp_unimod.obo
head -n 50 tmp_pride.obo
export JAVA_TOOL_OPTIONS=-Xmx6G
robot convert -vvv -i tmp_pride.obo -o pride_cv.owl --format owl
robot convert -vvv -i tmp_unimod.obo -o unimod.owl --format owl
rm tmp_pride.obo
rm tmp_unimod.obo
- name: Validate the OWL file
run: robot report -vvv --input pride_cv.owl --output report.tsv
- name: Upload report artifact
uses: actions/upload-artifact@v4
with:
name: report.tsv
path: report.tsv