| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| |
| # https://github.com/actions/starter-workflows/blob/main/ci/python-publish.yml |
| |
| # This workflow will upload a Python Package using Twine when a release is created |
| # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries |
| |
| # This workflow uses actions that are not certified by GitHub. |
| # They are provided by a third-party and are governed by |
| # separate terms of service, privacy policy, and support |
| # documentation. |
| |
| name: Upload Python Package |
| |
| on: |
| release: |
| types: [published] |
| workflow_dispatch: |
| |
| permissions: |
| contents: read |
| |
| jobs: |
| deploy: |
| |
| runs-on: ubuntu-latest |
| |
| steps: |
| - uses: actions/checkout@v3 |
| - name: Set up Python |
| uses: actions/setup-python@v3 |
| with: |
| python-version: '3.x' |
| - name: Install dependencies |
| run: | |
| python -m pip install --upgrade pip |
| pip install build |
| - name: Build package |
| run: python -m build |
| - name: Publish package |
| uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29 |
| with: |
| user: __token__ |
| password: ${{ secrets.PYPI_API_TOKEN }} |