name: build

on: [push, pull_request]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
      with:
        fetch-depth: 1
    - name: apt-update
      run: sudo apt-get update -qq
    - name: apt-install
      run: sudo apt-get install -qq -y --no-install-recommends gir1.2-gtk-3.0 python3-gi python3-gi-cairo python3-numpy python3-setuptools graphviz xvfb
    - name: build
      run: python3 setup.py sdist
    - name: test
      run: .github/scripts/test.sh
    # https://packaging.python.org/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
    # TODO: https://packaging.python.org/guides/using-testpypi/ ?
    - name: publish-pypi
      if: startsWith(github.ref, 'refs/tags')
      uses: pypa/gh-action-pypi-publish@master
      with:
        password: ${{ secrets.pypi_password }}