123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- 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":"airflow_var/var.json","connections_file_path":"airflow_var/conn.json"}'
- - name: Send custom JSON data to Slack workflow
- uses: 8398a7/action-slack@v3
- with:
- status: ${{ job.status }}
- fields: repo,message,author,action,ref,eventName
- env:
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
- if: always()
|