From 1d9d11b3f5846f434215207e86e1feabf5008ee0 Mon Sep 17 00:00:00 2001 From: dgtlmoon Date: Thu, 23 Mar 2023 12:20:18 +0100 Subject: [PATCH] Automated CI test for ensuring pypi package was built correctly (#1488) --- .github/workflows/pypi.yml | 38 ---------------------------- .github/workflows/test-pip-build.yml | 36 ++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 38 deletions(-) delete mode 100644 .github/workflows/pypi.yml create mode 100644 .github/workflows/test-pip-build.yml diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml deleted file mode 100644 index f792bf50..00000000 --- a/.github/workflows/pypi.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: PyPi Test and Push tagged release - -# Triggers the workflow on push or pull request events -on: - workflow_run: - workflows: ["ChangeDetection.io Test"] - tags: '*.*' - types: [completed] - - -jobs: - test-build: - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v2 - - name: Set up Python 3.9 - uses: actions/setup-python@v2 - with: - python-version: 3.9 - - - - name: Test that pip builds without error - run: | - pip3 --version - python3 -m pip install wheel - python3 setup.py bdist_wheel - python3 -m pip install dist/changedetection.io-*-none-any.whl --force - changedetection.io -d /tmp -p 10000 & - sleep 3 - curl http://127.0.0.1:10000/static/styles/pure-min.css >/dev/null - killall -9 changedetection.io - - # https://github.com/docker/build-push-action/blob/master/docs/advanced/test-before-push.md ? - # https://github.com/docker/buildx/issues/59 ? Needs to be one platform? - - # https://github.com/docker/buildx/issues/495#issuecomment-918925854 -#if: ${{ github.event_name == 'release'}} \ No newline at end of file diff --git a/.github/workflows/test-pip-build.yml b/.github/workflows/test-pip-build.yml new file mode 100644 index 00000000..cf9d9418 --- /dev/null +++ b/.github/workflows/test-pip-build.yml @@ -0,0 +1,36 @@ +name: ChangeDetection.io PIP package test + +# Triggers the workflow on push or pull request events + +# This line doesnt work, even tho it is the documented one +on: [push, pull_request] + + # Changes to requirements.txt packages and Dockerfile may or may not always be compatible with arm etc, so worth testing + # @todo: some kind of path filter for requirements.txt and Dockerfile +jobs: + test-pip-build-basics: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + + - name: Test that the basic pip built package runs without error + run: | + set -e + mkdir dist + pip3 install wheel + python3 setup.py bdist_wheel + pip3 install -r requirements.txt + rm ./changedetection.py + rm -rf changedetectio + + pip3 install dist/changedetection.io*.whl + changedetection.io -d /tmp -p 10000 & + sleep 3 + curl http://127.0.0.1:10000/static/styles/pure-min.css >/dev/null + killall -9 changedetection.io