12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- # This workflow will install Python dependencies, run tests and lint with a single version of Python
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
- name: Python application
- on:
- push:
- branches: [ master ]
- pull_request:
- branches: [ master ]
- jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up Python 3.7
- uses: actions/setup-python@v2
- with:
- python-version: 3.7
- - name: Install dependencies
- run: |
- python -m pip install --upgrade pip
- pip install flake8 pytest
- if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- - name: Lint with flake8
- run: |
- # stop the build if there are Python syntax errors or undefined names
- flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
- # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
- flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- - name: Checkout other repo
- uses: actions/checkout@v2
- with:
- repository: imperial-genomics-facility/data-management-python
- ref: cellranger_v6
- path: data-management-python
- - name: Test with pytest
- run: |
- airflow upgradedb
- pytest --log-cli-level=10 test/
- env:
- PYTHONPATH: /home/runner/work/igf-airflow-hpc/igf-airflow-hpc/data-management-python
- AIRFLOW__CORE__DAGBAG_IMPORT_TIMEOUT: 20
- AIRFLOW__SECRETS__BACKEND: airflow.secrets.local_filesystem.LocalFilesystemBackend
- AIRFLOW__SECRETS__BACKEND_KWARGS: '{"variables_file_path":"/home/runner/work/igf-airflow-hpc/igf-airflow-hpc/airflow_var/var.json","connections_file_path":"/home/runner/work/igf-airflow-hpc/igf-airflow-hpc/airflow_var/conn.json"}'
- - name: Send custom JSON data to Slack workflow
- id: slack
- uses: slackapi/slack-github-action@v1.14.0
- with:
- channel-id: '#code_development'
- payload: "{\"status\":\${{ job.status }}\"}" # This data can be any valid JSON from a previous step in the GitHub Action
- if: always()
- env:
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|