name: e2e # Default to 'contents: read', which grants actions to read commits. # # If any permission is set, any permission not included in the list is # implicitly set to "none". # # see https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions permissions: contents: read concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true on: workflow_dispatch: push: branches: - 'master' - '[0-9]+.[0-9]+' tags: - 'v*' pull_request: jobs: e2e: runs-on: ubuntu-22.04 strategy: fail-fast: false matrix: target: - non-experimental - experimental - connhelper-ssh base: - alpine - debian engine-version: - 25.0 # latest - 24.0 # latest - 1 - 23.0 # mirantis lts # TODO(krissetto) 19.03 needs a look, doesn't work ubuntu 22.04 (cgroup errors). # we could have a separate job that tests it against ubuntu 20.04 steps: - name: Checkout uses: actions/checkout@v4 - name: Update daemon.json run: | sudo jq '.experimental = true' < /etc/docker/daemon.json > /tmp/docker.json sudo mv /tmp/docker.json /etc/docker/daemon.json sudo cat /etc/docker/daemon.json sudo service docker restart docker version docker info - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Run ${{ matrix.target }} run: | make -f docker.Makefile test-e2e-${{ matrix.target }} env: BASE_VARIANT: ${{ matrix.base }} ENGINE_VERSION: ${{ matrix.engine-version }} TESTFLAGS: -coverprofile=/tmp/coverage/coverage.txt - name: Send to Codecov uses: codecov/codecov-action@v4 with: file: ./build/coverage/coverage.txt