mybuddy/.github/workflows/ci.yml

87 lines
2.6 KiB
YAML

name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
test:
runs-on: ubuntu-latest
env:
DJANGO_SETTINGS_MODULE: babybuddy.settings.ci
PIPENV_VENV_IN_PROJECT: enabled
strategy:
matrix:
python-version: [ '3.7', '3.8', '3.9', '3.10' ]
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- uses: actions/setup-node@v2
with:
node-version: '14'
- run: npm install -g gulp-cli
- run: npm install
- name: Install pipenv
run: |
python -m pip install --upgrade pipenv wheel
# - name: Cache Python dependencies
# id: cache-pipenv
# uses: actions/cache@v2
# with:
# path: ./.venv
# key: ${{ runner.os }}-python-${{ matrix.python-version }}-pipenv-${{ hashFiles('**/requirements.txt') }}
# restore-keys: |
# ${{ runner.os }}-python-${{ matrix.python-version }}-pipenv-
- name: Install dependencies
# if: steps.cache-pipenv.outputs.cache-hit != 'true'
run: |
pipenv install --dev
- run: gulp lint
- run: gulp coverage
- name: Submit results to Coveralls
uses: AndreMiras/coveralls-python-action@develop
with:
github-token: ${{ secrets.github_token }}
flag-name: test-python-${{ matrix.python-version }}
parallel: true
coveralls_finish:
needs: test
runs-on: ubuntu-latest
steps:
- name: Coveralls Finished
uses: AndreMiras/coveralls-python-action@develop
with:
github-token: ${{ secrets.github_token }}
parallel-finished: true
deploy-docs:
needs: test
name: Deploy docs
runs-on: ubuntu-latest
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
steps:
- name: Checkout main
uses: actions/checkout@v2
- name: Deploy docs
uses: mhausenblas/mkdocs-deploy-gh-pages@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
REQUIREMENTS: docs/requirements.txt
# deploy:
# needs: test
# runs-on: ubuntu-latest
# if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
# steps:
# - uses: actions/checkout@v2
# - name: Deploy demo
# uses: akhileshns/heroku-deploy@v3.12.12
# with:
# heroku_api_key: ${{ secrets.HEROKU_API_KEY }}
# heroku_app_name: ${{ secrets.HEROKU_APP_NAME }}
# heroku_email: ${{ secrets.HEROKU_EMAIL }}