name: Test & publish on: push: pull_request: release: types: [published] jobs: build: name: Python ${{ matrix.python-version }} / ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: max-parallel: 9 matrix: python-version: [3.6, 3.7, 3.8] os: [ubuntu-latest, windows-latest, macOS-latest] steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install poetry poetry install - name: Test with pytest run: | poetry run pytest --color=yes publish: name: Publish to PyPI runs-on: ubuntu-latest needs: build # if: github.event_name == 'release' steps: - run: | echo "event name" echo ${{ github.event_name }} # - uses: actions/checkout@v1 # - name: Set up Python # uses: actions/setup-python@v1 # with: # python-version: '3.8' # - name: Install dependencies # run: | # python -m pip install --upgrade pip # pip install poetry # - name: Build and publish # env: # PYPI_USERNAME: ${{ secrets.PYPI_USERNAME }} # PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }} # run: | # poetry publish --build -u $PYPI_USERNAME -p $PYPI_PASSWORD