From 23f0bffe7d07c69a054e18d2754bfcac60b6b7d9 Mon Sep 17 00:00:00 2001 From: James Barnsley Date: Mon, 25 Oct 2021 20:58:18 +1300 Subject: [PATCH] Adding release workflow (WIP) --- .github/workflows/python-tests.yml | 2 +- .../{build-docker.yml => release.yml} | 32 +++++++++++++++++-- 2 files changed, 31 insertions(+), 3 deletions(-) rename .github/workflows/{build-docker.yml => release.yml} (60%) diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml index 4c3aa2bd..d00dd425 100644 --- a/.github/workflows/python-tests.yml +++ b/.github/workflows/python-tests.yml @@ -13,13 +13,13 @@ jobs: - name: "Test: Python 3.7" python: "3.7" tox: py37 + coverage: true - name: "Test: Python 3.8" python: "3.8" tox: py38 - name: "Test: Python 3.9" python: "3.9" tox: py39 - coverage: true - name: "Lint: check-manifest" python: "3.9" tox: check-manifest diff --git a/.github/workflows/build-docker.yml b/.github/workflows/release.yml similarity index 60% rename from .github/workflows/build-docker.yml rename to .github/workflows/release.yml index 7d5efa4b..46dc8b60 100644 --- a/.github/workflows/build-docker.yml +++ b/.github/workflows/release.yml @@ -1,4 +1,4 @@ -name: Build Docker +name: Release on: push: @@ -6,12 +6,34 @@ on: jobs: build-and-push-docker-image: - name: Build image and push to DockerHub + name: Build and publish to PyPi and DockerHub runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 + + - name: Setup Node + uses: actions/setup-node@v2 + with: + node-version: '12' + + - name: Install JS dependencies + run: npm install + + - name: Build JS + run: npm run build:prod + + - name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: '3.7' + + - name: "Install Python dependencies" + run: python3 -m pip install build + + - name: "Build Python package" + run: python3 -m build - name: Set up Docker Buildx id: buildx @@ -39,5 +61,11 @@ jobs: # build on feature branches, push only on master branch push: ${{ github.ref == 'refs/heads/master' }} + - name: Publish to Pypi + uses: pypa/gh-action-pypi-publish@v1.4.1 + with: + user: __token__ + password: ${{ secrets.PYPI_TOKEN }} + - name: Image digest run: echo ${{ steps.docker_build.outputs.digest }}