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: Run integration tests for TRAPI | |
# Run test at each push to master or develop, if changes to package files | |
on: | |
workflow_call: | |
workflow_dispatch: | |
push: | |
branches: [ master, develop ] | |
paths: | |
- 'pyproject.toml' | |
- 'src/**' | |
- 'tests/**' | |
- '.github/workflows/test-integration.yml' | |
jobs: | |
CodeQL-Analysis: | |
runs-on: ubuntu-latest | |
permissions: | |
security-events: write # required for all workflows | |
# only required for workflows in private repositories: | |
actions: read | |
contents: read | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Initialize CodeQL | |
uses: github/codeql-action/init@v2 | |
with: | |
languages: python | |
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java). | |
# If this step fails, then you should remove it and run the build manually | |
- name: Autobuild | |
uses: github/codeql-action/autobuild@v2 | |
- name: Perform CodeQL Analysis | |
uses: github/codeql-action/analyze@v2 | |
tests: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: [3.8] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
# Disabling shallow clone is recommended for improving relevancy of reporting | |
fetch-depth: 0 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- uses: actions/setup-java@v3 | |
with: | |
distribution: 'zulu' | |
java-version: '17' # The JDK version to make available on the path. | |
- uses: vemonet/setup-spark@v1 | |
with: | |
spark-version: '3.0.2' | |
- uses: iterative/setup-dvc@v1 | |
- name: Pull data with dvc | |
run: | | |
dvc pull | |
- name: Install dependencies | |
run: | | |
pip install -e ".[train,test,dev]" | |
- name: Test with pytest with coverage | |
run: | | |
pytest -s --cov src/openpredict --cov-report xml:coverage.xml tests/integration/* | |
build-docs: | |
needs: [ tests ] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.9 | |
- name: Install dependencies | |
run: | | |
pip install ".[doc]" | |
- name: Deploy mkdocs on GitHub Pages | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
git pull | |
mkdocs gh-deploy |