diff --git a/.github/workflows/main-ci.yml b/.github/workflows/main-ci.yml index 95f91c41..134b74f7 100644 --- a/.github/workflows/main-ci.yml +++ b/.github/workflows/main-ci.yml @@ -10,10 +10,12 @@ on: workflow_dispatch: +env: + SCHEMATIC_VERSION: 24.5.1 jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -22,6 +24,10 @@ jobs: persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal access token. fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository + - name: Get skip flags + id: check_skip_flags + run: echo "HEAD_COMMIT_MESSAGE=$(git show -s --format=%s)" >> "$GITHUB_OUTPUT" + - name: Setup custom build tools and make jsonld shell: bash run: | @@ -37,6 +43,18 @@ jobs: make Superdataset make PortalDataset make PortalStudy + + # Set up supported python. + - uses: actions/setup-python@v5 + with: + python-version: '3.10.12' + + - name: Setup schematic and do another convert pass + id: schematic-convert + run: | + pip install schematicpy==${{ env.SCHEMATIC_VERSION }} ipython==8.18.1 + pip show schematicpy + schematic schema convert NF.jsonld - name: Commit files if there are changes run: | @@ -56,6 +74,7 @@ jobs: with: github_token: ${{ secrets.GITHUB_TOKEN }} branch: ${{ github.event.pull_request.head.ref }} + # Additionally test PRs @@ -67,9 +86,11 @@ jobs: SCHEMATIC_SERVICE_ACCT_CREDS: ${{ secrets.SCHEMATIC_SERVICE_ACCT_CREDS }} permissions: pull-requests: write - strategy: - matrix: - schematic-version: [24.4.1] # cannot actually do parallel/concurrent testing and need to do sequential because of API rate limits + if: ${{ !contains(needs.check_skip_flags.outputs.HEAD_COMMIT_MESSAGE, '[skip tests]') }} + # strategy: + # matrix: + # cannot actually do parallel/concurrent testing because of API rate limits, + # so we currently only test with one schematic version because it takes much too long with sequential steps: - uses: actions/checkout@v4 @@ -83,10 +104,9 @@ jobs: - name: Setup schematic id: setup-schematic - run: pip install schematicpy==${{ matrix.schematic-version }} ipython==8.18.1 - - - name: Sanity-check successful installation and version - run: pip show schematicpy + run: | + pip install schematicpy==${{ env.SCHEMATIC_VERSION }} ipython==8.18.1 + pip show schematicpy - name: Test generate working-directory: tests/generate @@ -113,18 +133,18 @@ jobs: - name: Create test suite report working-directory: tests continue-on-error: true - run: docker run -v $(pwd):/tests -e SCHEMATIC=${{ matrix.schematic-version }} rocker/tidyverse R -e "rmarkdown::render('tests/test-suite-report.Rmd')" + run: docker run -v $(pwd):/tests -e SCHEMATIC=${{ env.SCHEMATIC_VERSION }} rocker/tidyverse R -e "rmarkdown::render('tests/test-suite-report.Rmd')" - name: Report on test suite as PR comment uses: mshick/add-pr-comment@v2 with: - message-id: test-suite-report-${{ matrix.schematic-version }} + message-id: test-suite-report-${{ env.SCHEMATIC_VERSION }} message-path: | tests/test-suite-report.md - name: Upload test artifacts uses: actions/upload-artifact@v4 with: - name: test-logs-${{ matrix.schematic-version }} + name: test-logs-${{ env.SCHEMATIC_VERSION }} path: tests/**/logs diff --git a/NF.jsonld b/NF.jsonld index 64919e89..97ed417c 100644 --- a/NF.jsonld +++ b/NF.jsonld @@ -1093,6 +1093,8 @@ "@id" : "bts:Schwannomatosis-NEC" }, { "@id" : "bts:SporadicSchwannoma" + }, { + "@id" : "bts:NoonanSyndrome" }, { "@id" : "bts:NotApplicable" } ], @@ -6071,6 +6073,8 @@ "@id" : "bts:LeicaS9Stereomicroscope" }, { "@id" : "bts:PhilipsAchieva3T" + }, { + "@id" : "bts:GEPremier3T" }, { "@id" : "bts:ZenoElectronicWalkway" }, { @@ -10059,6 +10063,17 @@ }, "sms:displayName" : "icNF97.2b", "sms:required" : "sms:false" + }, { + "@id" : "bts:NoonanSyndrome", + "@type" : "rdfs:Class", + "rdfs:comment" : "TBD", + "rdfs:label" : "NoonanSyndrome", + "rdfs:subClassOf" : [ ], + "schema:isPartOf" : { + "@id" : "http://schema.biothings.io/" + }, + "sms:displayName" : "Noonan Syndrome", + "sms:required" : "sms:false" }, { "@id" : "bts:plink", "@type" : "rdfs:Class", @@ -14910,6 +14925,17 @@ }, "sms:displayName" : "University of Colorado Boulder", "sms:required" : "sms:false" + }, { + "@id" : "bts:GEPremier3T", + "@type" : "rdfs:Class", + "rdfs:comment" : "TBD", + "rdfs:label" : "GEPremier3T", + "rdfs:subClassOf" : [ ], + "schema:isPartOf" : { + "@id" : "http://schema.biothings.io/" + }, + "sms:displayName" : "GE Premier 3T", + "sms:required" : "sms:false" }, { "@id" : "bts:UniversityofTexasSouthwesternMedicalCenter", "@type" : "rdfs:Class", diff --git a/modules/Assay/Platform.yaml b/modules/Assay/Platform.yaml index 1300e916..7213ee78 100644 --- a/modules/Assay/Platform.yaml +++ b/modules/Assay/Platform.yaml @@ -190,6 +190,9 @@ enums: Philips Achieva 3T: description: Complete 3T MRI system, it offers an extremely broad clinical reach from routine head, spine and musculoskeletal imaging to the most advanced exams. source: https://clinicalimagingsystems.com/product/philips-achieva-3-0t-mri-scanner/ + GE Premier 3T: + description: The GE Premier 3T is an advanced MRI scanner that offers high-resolution imaging capabilities and a 70 cm wide bore for patient comfort + source: ChatGPT (May 7 2024) Zeno Electronic Walkway: description: System for gait analysis. source: https://pubmed.ncbi.nlm.nih.gov/29286982/ diff --git a/modules/Sample/Diagnosis.yaml b/modules/Sample/Diagnosis.yaml index f1878a5f..4376c837 100644 --- a/modules/Sample/Diagnosis.yaml +++ b/modules/Sample/Diagnosis.yaml @@ -12,7 +12,7 @@ enums: # meaning: https://www.ebi.ac.uk/ols/ontologies/cco/terms?iri=http%3A%2F%2Fidentifiers.org%2Fomim%2F101000 Schwannomatosis: description: A rare genetic disorder characterized by the presence of multiple schwannomas. - meaning: https://www.ebi.ac.uk/ols/ontologies/ncit/terms?iri=http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FNCIT_C6557 + meaning: http://purl.obolibrary.org/obo/NCIT_C6557 NF2-related schwannomatosis: description: Previously known as Neurofibromatosis type 2. SMARCB1-related schwannomatosis: @@ -26,6 +26,9 @@ enums: Most schwannomas originate from the eighth cranial nerve, whereas neurofibromas more commonly arise along the spinal nerve roots. notes: - Not in NCIT as of 2023-06-07 + Noonan Syndrome: + description: A rare, highly variable, multisystemic disorder mainly characterized by short stature, distinctive facial features, congenital heart defects, cardiomyopathy and an increased risk to develop tumors in childhood. + meaning: http://www.orpha.net/ORDO/Orphanet_648 Not Applicable: AgeGroupEnum: