diff --git a/.github/workflows/build_and_publish.yaml b/.github/workflows/build_and_publish.yaml index 762feb88..68068e04 100644 --- a/.github/workflows/build_and_publish.yaml +++ b/.github/workflows/build_and_publish.yaml @@ -55,9 +55,9 @@ jobs: run: docker login https://ghcr.io -u ${{ github.actor }} --password ${{ secrets.GITHUB_TOKEN }} - name: Push image to GitHub Container Registry run: | - IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME - docker tag $IMAGE_NAME $IMAGE_ID:latest - docker push $IMAGE_ID:latest + IMAGE_ID="ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME" + docker tag "$IMAGE_NAME" "$IMAGE_ID:latest" + docker push "$IMAGE_ID:latest" create-release-from-tag: name: Create release from tag diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index deb0309c..62f9dc30 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -25,14 +25,17 @@ jobs: test-job: strategy: + fail-fast: false matrix: - os: [ubuntu-20.04, ubuntu-22.04, windows-2019, macos-12] + os: [ubuntu-20.04, ubuntu-22.04, windows-2019, macos-13] # Python 3.8 is what we currently support for running cohortextractor # locally, and 3.9 is what we required for databuilder so we need to make # sure we can run with those python: ["3.8", "3.9", "3.10"] runs-on: ${{ matrix.os }} name: Run test suite + env: + PYTHON_VERSION: "python${{ matrix.python }}" steps: - name: Checkout uses: actions/checkout@v4 @@ -46,30 +49,23 @@ jobs: cache: "pip" cache-dependency-path: requirements.*.txt - - name: Set up default Python 3.8 for MacOS - if: ${{ matrix.os == 'macos-12' && matrix.python != '3.8' }} - uses: actions/setup-python@v5 - with: - python-version: 3.8 - cache: "pip" - cache-dependency-path: requirements.*.txt - - - name: install Docker/Colima on MacOS - if: ${{ matrix.os == 'macos-12' }} - run: brew install docker - - - name: start Colima on MacOS - if: ${{ matrix.os == 'macos-12' }} - run: colima start - - uses: extractions/setup-just@69d82fb0233557aec017ef13706851d0694e0f1d - name: Run actual tests on ${{ matrix.os }} - if: ${{ matrix.os == 'ubuntu-20.04' }} - run: just test -vvv + if: ${{ matrix.os == 'ubuntu-20.04' || matrix.os == 'ubuntu-22.04' }} + run: | + echo "$PYTHON_VERSION" + just test -vvv - - name: Run actual tests on ${{ matrix.os }} - if: ${{ matrix.os == 'windows-2019' || matrix.os == 'macos-12' }} + - name: Run actual tests on windows + if: ${{ matrix.os == 'windows-2019' }} + run: | + # windows powershell: set to executable w/o version, as it doesn't have one on windows + $Env:PYTHON_VERSION = "python" + just test-no-docker -vvv + + - name: Run actual tests on macos + if: ${{ matrix.os == 'macos-13' }} run: just test-no-docker -vvv test-package-build: