TinkoffCreditSystems/voicekit_client_python

View on GitHub
.github/workflows/pythonpublish.yml

Summary

Maintainability
Test Coverage
name: Upload Python Package

on:
  push:
    branches:
      - master

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        python-version: [ 3.6, 3.7, 3.8, 3.9 ]
    steps:
      - uses: actions/checkout@v2
      - name: Install opus
        run: |
          sudo apt-get install -y opus-tools
      - name: Set up Python ${{ matrix.python-version }}
        uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python-version }}
      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
          if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
      - name: Test with pytest
        env:
          VOICEKIT_API_KEY: ${{ secrets.VOICEKIT_API_KEY }}
          VOICEKIT_SECRET_KEY: ${{ secrets.VOICEKIT_SECRET_KEY }}
        run: |
          python setup.py test
  deploy:
    needs: test
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python
      uses: actions/setup-python@v1
      with:
        python-version: '3.x'
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install setuptools wheel twine
    - name: Build and publish
      env:
        TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
        TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
      run: |
        python setup.py sdist bdist_wheel
        twine upload dist/*