Skip to content

Add Megqc descriptor (#385) #32

Add Megqc descriptor (#385)

Add Megqc descriptor (#385) #32

###############################################################
# GitHub Actions Validate Descriptors
#
# This runs "bosh validate" on all Boutiques Descirptors
#
# At the end, a Slack notification can be sent if the
# GitHub repo secret "SLACK_WEBHOOK" is set to a URL
# (which you can generate within your SLACK config webpage)
#
# Pierre Rioux, January 2026
###############################################################
name: bosh_validate
on: [ push, pull_request ]
jobs:
run-tests:
name: Validate Descriptors
runs-on: ubuntu-24.04
permissions:
contents: read
pull-requests: read
###########################################################
steps:
###########################################################
- name: Checkout Plugins Codebase
uses: actions/checkout@v4
###########################################################
- name: Setup Boutiques Python Package
run: |
pip install --user boutiques || exit 2
###########################################################
# MAIN TESTS
###########################################################
- name: Validate All Descriptors
id: descriptor_validation
run: |
bash .github/workflows/scripts/validate_all_descriptors.sh
###########################################################
# Final notification
###########################################################
- name: Notify Slack
if: ${{ failure() || success() }}
continue-on-error: true
uses: rtCamp/action-slack-notify@v2
env:
SLACK_CHANNEL: ${{ secrets.SLACK_CHANNEL || 'cbrain_ci' }}
SLACK_COLOR: ${{ job.status == 'success' && '#00ff00' || job.status == 'cancelled' && '#ffff00' || '#ff0000' }}
SLACK_TITLE: "${{ github.repository }} Boutiques Descriptor Validations: ${{ job.status }}"
SLACK_USERNAME: "GitHub CI" # Doesn't have to be a real slack user
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
SLACK_FOOTER: ""
SLACK_ICON: https://github.com/aces/cbrain/raw/master/BrainPortal/public/images/custom_logos/cb-small_white_blue.png
SLACK_MESSAGE: |
```
Boutiques Descriptor Validations : ${{ steps.descriptor_validation.outcome }}
```