mybuddy/.github/workflows/ci.yml

76 lines
2.1 KiB
YAML

name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [ '3.10', '3.11', '3.12' ]
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup
with:
python-version: ${{ matrix.python-version }}
- run: npm install --location=global gulp-cli
- run: npm install
- 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
runs-on: ubuntu-latest
environment:
name: documentation
url: https://docs.baby-buddy.net
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
steps:
- uses: actions/checkout@v4
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v42
with:
files: |
docs/**
- name: Deploy docs
if: steps.changed-files.outputs.any_changed == 'true'
uses: mhausenblas/mkdocs-deploy-gh-pages@master
env:
GITHUB_TOKEN: ${{ secrets.github_token }}
REQUIREMENTS: docs/requirements.txt
deploy-demo:
needs: test
runs-on: ubuntu-latest
environment:
name: demo
url: https://demo.baby-buddy.net
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Push to dokku
uses: dokku/github-action@master
with:
git_remote_url: 'ssh://dokku@dokku.baby-buddy.net:22/demo'
ssh_private_key: ${{ secrets.DOKKU_SSH_PRIVATE_KEY }}