From b0211c8bf910f9afd3bda59abd3822f6201b9fbf Mon Sep 17 00:00:00 2001 From: Jonathan de Bruin Date: Tue, 30 Aug 2022 14:29:19 +0200 Subject: [PATCH] Add GitHub Action for PyPI releases --- .github/workflows/pythonpackage.yml | 63 +++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/pythonpackage.yml diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml new file mode 100644 index 00000000..1fcebf9a --- /dev/null +++ b/.github/workflows/pythonpackage.yml @@ -0,0 +1,63 @@ +name: Deploy and release + +on: + push: + tags: + - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Python + uses: actions/setup-python@v1 + with: + python-version: '3.x' + - name: Get the version (git tag) + id: get_version + run: | + echo ${GITHUB_REF/refs\/tags\/v/} + echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\/v/} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install setuptools wheel + - name: Build + run: | + python setup.py sdist bdist_wheel + - name: Create Release + id: create_release + uses: actions/create-release@v1.0.0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.ref }} + release_name: Release ${{ github.ref }} + draft: false + prerelease: false + - name: Upload Release Asset (Wheel) + id: upload-release-asset-whl + uses: actions/upload-release-asset@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./dist/asreview_makita-${{ steps.get_version.outputs.VERSION }}-py3-none-any.whl + asset_name: asreview_makita-${{ steps.get_version.outputs.VERSION }}-py3-none-any.whl + asset_content_type: application/x-wheel+zip + - name: Upload Release Asset (Sdist) + id: upload-release-asset-sdist + uses: actions/upload-release-asset@v1.0.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./dist/asreview-makita-${{ steps.get_version.outputs.VERSION }}.tar.gz + asset_name: asreview-makita-${{ steps.get_version.outputs.VERSION }}.tar.gz + asset_content_type: application/zip + - name: Publish package + uses: pypa/gh-action-pypi-publish@master + with: + user: __token__ + password: ${{ secrets.pypi_password }}