From 782cf6b77368d93c3d8d959f510771e857672bdd Mon Sep 17 00:00:00 2001 From: James Barnsley Date: Wed, 27 Oct 2021 20:57:17 +1300 Subject: [PATCH] Merging tests into release workflow for full CI --- .github/workflows/release.yml | 75 +++++++++++++++++++++++++++++++++-- 1 file changed, 71 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 46dc8b60..0d15af43 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -2,9 +2,78 @@ name: Release on: push: - branches: [deploy/release,deploy/force-release] + branches: [deploy/release] jobs: + jest-tests: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - uses: actions/setup-node@v2 + with: + node-version: '12' + + - name: Install modules + run: npm ci + + - name: Run tests + run: npm run test + + - name: Submit to Codecov + uses: codecov/codecov-action@v1 + + tox-tests: + strategy: + fail-fast: false + + matrix: + include: + - name: "Test: Python 3.7" + python: "3.7" + tox: py37 + coverage: true + + - name: "Lint: check-manifest" + python: "3.9" + tox: check-manifest + + - name: "Lint: flake8" + python: "3.9" + tox: flake8 + + name: ${{ matrix.name }} + runs-on: ubuntu-20.04 + container: ghcr.io/mopidy/ci:latest + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python }} + + - name: Fix home dir permissions to enable pip caching + run: chown -R root /github/home + + - name: Cache pip + uses: actions/cache@v2 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-${{ matrix.python }}-${{ matrix.tox }}-pip-${{ hashFiles('setup.cfg') }}-${{ hashFiles('tox.ini') }} + restore-keys: ${{ runner.os }}-${{ matrix.python }}-${{ matrix.tox }}-pip- + + - run: python -m pip install pygobject tox + + - run: python -m tox -e ${{ matrix.tox }} + if: ${{ ! matrix.coverage }} + + - run: python -m tox -e ${{ matrix.tox }} -- --cov-report=xml + if: ${{ matrix.coverage }} + + - uses: codecov/codecov-action@v1 + if: ${{ matrix.coverage }} + build-and-push-docker-image: name: Build and publish to PyPi and DockerHub runs-on: ubuntu-latest @@ -56,9 +125,7 @@ jobs: uses: docker/build-push-action@v2 with: context: . - tags: | - jaedb/iris:latest - # build on feature branches, push only on master branch + tags: jaedb/iris:latest push: ${{ github.ref == 'refs/heads/master' }} - name: Publish to Pypi