diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0be996c..446b6a7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,6 +14,9 @@ concurrency: jobs: test: name: test + strategy: + matrix: + os: [alpine, ubuntu-20.04, ubuntu-23.04, ubuntu-24.04] runs-on: ubuntu-latest permissions: contents: read @@ -47,4 +50,4 @@ jobs: run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin if: github.event.pull_request.head.repo.full_name == github.repository - name: Run tests - run: earthly --ci -P --push +test + run: earthly --ci -P --push +test --OS=${{ matrix.os }} diff --git a/Earthfile b/Earthfile index 4f9bc27..ba76935 100644 --- a/Earthfile +++ b/Earthfile @@ -2,9 +2,10 @@ VERSION --wildcard-builds 0.8 PROJECT earthly-technologies/core -# test runs tests for all defined dind images in this repo +# test runs tests for for the given OS image (os/*/Earthfile) in this repo test: - BUILD --pass-args ./os/*+test-build + ARG --required OS + BUILD --pass-args ./os/$OS+test-build # release expects to get a renovate branch in the form of renovate/-dind-image, extracts the os and then kicks off its +release target # this is meant to be run by a github workflow