Docker CLI - August Mirror #93
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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-24.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
target: | |
- non-experimental | |
- experimental | |
- connhelper-ssh | |
base: | |
- alpine | |
- debian | |
engine-version: | |
- 27.0 # latest | |
- 26.1 # 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: | | |
if [ ! -f /etc/docker/daemon.json ]; then | |
# ubuntu 24.04 runners no longer have a default daemon.json present | |
sudo mkdir -p /etc/docker/ | |
echo '{"experimental": true}' | sudo tee /etc/docker/daemon.json | |
else | |
# but if there is one; let's patch it to keep other options that may be set. | |
sudo jq '.experimental = true' < /etc/docker/daemon.json > /tmp/docker.json | |
sudo mv /tmp/docker.json /etc/docker/daemon.json | |
fi | |
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 | |
token: ${{ secrets.CODECOV_TOKEN }} |