From 52f392eba128c7e8b59bae0553435b3e353d015d Mon Sep 17 00:00:00 2001 From: Xander Date: Tue, 15 Apr 2025 14:44:41 -0400 Subject: [PATCH] make gh release and publish to PyPI when version tag is created --- .github/workflows/python-publish.yml | 71 ++++++++++++++++++++++++++++ pyproject.toml | 2 - 2 files changed, 71 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/python-publish.yml diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml new file mode 100644 index 0000000..e85cd73 --- /dev/null +++ b/.github/workflows/python-publish.yml @@ -0,0 +1,71 @@ +name: Publish Python Package + +on: + push: + tags: + - '[0-9]*.[0-9]*.[0-9]*' + - 'v[0-9]*.[0-9]*.[0-9]*' + +permissions: + contents: write # Required for creating a GitHub release + id-token: write # Required for trusted publishing to PyPI + +jobs: + create-release: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Create GitHub Release + id: create_release + uses: actions/create-release@v1 + with: + tag_name: ${{ github.ref_name }} + release_name: Release ${{ github.ref_name }} + body: | + This is an automated release for version ${{ github.ref_name }}. + draft: false + prerelease: false + + release-build: + runs-on: ubuntu-latest + needs: create-release + + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: "3.x" + + - name: Build release distributions + run: | + python -m pip install build + python -m build + + - name: Upload distributions + uses: actions/upload-artifact@v4 + with: + name: release-dists + path: dist/ + + pypi-publish: + runs-on: ubuntu-latest + needs: release-build + environment: + name: release + url: https://pypi.org/project/ammber + + steps: + - name: Retrieve release distributions + uses: actions/download-artifact@v4 + with: + name: release-dists + path: dist/ + + - name: Publish release distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + packages-dir: dist/ \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 5e134fe..6209228 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -51,8 +51,6 @@ dependencies = [ classifiers=[ 'Development Status :: 1 - Planning', 'Intended Audience :: Science/Research', - 'Programming Language :: Python :: 2', - 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5',