From 425751dee4335460e9d99c4f0ab09d33bb852d7a Mon Sep 17 00:00:00 2001 From: Shay Carter Date: Wed, 5 Jan 2022 13:22:52 -0700 Subject: [PATCH] First pass at implementing automated publishing - created a new 'release.yml' file which is a GH Action that is triggered by a new Published Release - it builds python from the latest in the main branch, and then will push it to pip (that part is commented out for this first pass for testing) Small changes to the setup.py for python-awips builds - changed the doc url to point to our new/current doc site - changed the author's email from mj's to support-awips Add in logic for publishing release to pypi --- .github/workflows/release.yml | 52 +++++++++++++++++++++++++++++++++++ setup.py | 7 ++--- 2 files changed, 55 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..786015e --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,52 @@ +name: Build python-awips and Publish for pip + +on: + workflow_dispatch: + release: + types: + - published + +jobs: + build: + name: Build Release Packages + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Python + id: setup + uses: actions/setup-python@v2 + with: + python-version: 3.x + + - name: Install build tools + run: | + python -m pip install --upgrade pip + python -m pip install --upgrade setuptools + - name: Build packages + run: python setup.py sdist + + - name: Save built packages as artifact + uses: actions/upload-artifact@v2 + with: + name: ${{ runner.os }}-${{ steps.setup.outputs.python-version }} + path: dist/ + retention-days: 5 + + publish: + name: Publish to PyPI + needs: build + environment: + name: PyPI + url: https://pypi.org/project/python-awips/ + runs-on: ubuntu-latest + steps: + - name: Download packages + uses: actions/download-artifact@v2 + with: + path: ./dist + + - name: Publish Package + uses: pypa/gh-action-pypi-publish@v1.4.2 + with: + user: __token__ + password: ${{ secrets.PYPI_TOKEN }} diff --git a/setup.py b/setup.py index 7b64328..4a3cc1a 100644 --- a/setup.py +++ b/setup.py @@ -10,7 +10,7 @@ dependencies = ['numpy', 'six'] if sys.version_info < (3, 4): dependencies.append('enum34') -ver = "18.1.7" +ver = "18.1.8" setup( name='python-awips', @@ -18,10 +18,10 @@ setup( description='A framework for requesting AWIPS meteorological datasets from an EDEX server', packages=find_packages(exclude='data'), license='BSD', - url='http://python-awips.readthedocs.io', + url='http://unidata.github.io/python-awips', download_url='https://github.com/Unidata/python-awips/archive/{}.tar.gz'.format(ver), author='Unidata', - author_email='mjames@ucar.edu', + author_email='support-awips@ucar.edu', install_requires=dependencies, extras_require={ 'cdm': ['pyproj>=1.9.4'], @@ -30,4 +30,3 @@ setup( 'examples': ['cartopy>=0.13.1', 'metpy>=0.4.0'] } ) -