Рубрики
Без рубрики

Четыре действия Github для Python

Если вы разрабатываете пакеты Python и используете GitHub вот четыре действия, которые вы можете использовать сегодня … Теги с GitHub, DevOps, Python.

Если вы разрабатываете пакеты Python и используете GitHub вот четыре действия, которые вы можете использовать сегодня для автоматизации рабочего процесса выпуска. Поскольку инструменты Python обычно имеют такую простую CLI, я решил использовать CLI для большинства из них, то, как я точно знаю, что происходит и имеет больше контроля над этим, если мне нужно.

  • Лишать
  • Контрольная работа
  • Упаковка
  • Загрузить в Pypi

FLAKE8 – это Pythons Quintessential Linting Tool, чтобы ваш код был до стандартов, которые вы установили для проекта, и помочь предотвратить скрытые ошибки. Я тяжелый пользователь черный и isort. Кроме того, для CI Flake8 обычно считается золотым стандартом. черный и Исторт поможет вам автоматизировать много исправлений, предложенных flake8.

    - name: Lint with flake8
      run: |
        pip install flake8 isort black
        # stop the build if there are Python syntax errors or undefined names
        flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
        # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
        flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics

Pytest – это такой удивительный проект, определенно один, чтобы проверить и начать использовать, если вы еще этого не делаете.

    - name: Test with pytest
      run: |
         pip install pytest
         pytest

Я все еще использую более старше, менее хипстер, SetUldools, чтобы построить мои проекты. В первую очередь, потому что я привык, отчасти потому, что такие вещи, как редактируемые установки, невозможны с новыми инструментами сборки, и я Тяжелый Пользователь редактируемых установок.

    - name: build
      run: |
        pip install wheel
        python setup.py sdist bdist_wheel

Здесь я собираюсь использовать удивительные действия с рынка GitHub by @webknjaz Отказ Это супер просто. Сначала вам нужно войти в ваш pypi.org Учетная запись, перейдите к настройкам учетных записей, включите 2FA и добавьте токен, затем вставьте, чтобы вставить в секрет в разделе «Настройки репо». Далее просто бросьте название этого секрета в поле пароля действия, и вы выключены.

Примечание : Я положил проверку, чтобы убедиться, что пуш-мероприятие исходит от мастера.

    - name: pypi-publish
      if: github.ref == 'refs/heads/master'
      uses: pypa/gh-action-pypi-publish@v1.1.0
      with:
        # PyPI user
        # Password for your PyPI user or an access token
        password: ${{ secrets.pypi_password }}
        # The repository URL to use
        # repository_url: # optional
        # The target directory for distribution
        # packages_dir: # optional, default is dist

Это мои четыре лучших действия Python

Это самые простые и основные четыре действия, которые должны иметь каждый проект Python на GitHub. Теперь, когда действия доступны бесплатно на любое публичное репо, нет причин не использовать действия GitHub для любого нового проекта.

Оригинал: “https://dev.to/waylonwalker/four-github-actions-for-python-58h8”