Run github actions on mdolab docker images #417
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: OAS build | |
# This workflow runs all unit and regression tests, as well as coveralls. | |
# On the pull-request events, this workflow runs OAS tests, checks code format by flake8/black, and builds the docs. | |
# On the push-to-main events, it also deploys the docs. | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
tags: | |
- v*.*.* | |
schedule: | |
# Run the tests at 7:23pm UTC on the 2nd and 17th of every month | |
- cron: '23 19 2,17 * *' | |
jobs: | |
test: | |
strategy: | |
fail-fast: false | |
matrix: | |
dockerImage: [stable, latest] | |
runs-on: ubuntu-latest | |
container: | |
image: mdolab/public:u22-gcc-ompi-${{ matrix.dockerImage }}-amd64 | |
options: --user root | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install OAS | |
run: | | |
source /home/mdolabuser/.bashrc | |
source /home/mdolabuser/.bashrc_mdolab | |
- name: Install OAS | |
run: | | |
pip install -e .[test,mphys] | |
- name: Run tests (latest) | |
run: | | |
testflo -n 2 -v openaerostruct --coverage --coverpkg openaerostruct | |
coverage xml | |
- name: Upload Coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
with: | |
fail_ci_if_error: true | |
verbose: true | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
# --- linting and formatting --- | |
black: | |
uses: mdolab/.github/.github/workflows/black.yaml@main | |
flake8: | |
uses: mdolab/.github/.github/workflows/flake8.yaml@main | |
# --- publish to PyPI | |
pypi: | |
needs: [test, flake8, black] | |
uses: mdolab/.github/.github/workflows/pypi.yaml@main | |
secrets: inherit |