name: ci on: push: branches: - master - releases/v* paths-ignore: - "**.md" pull_request: branches: - master - releases/v* paths-ignore: - "**.md" jobs: main: runs-on: ubuntu-latest strategy: fail-fast: false matrix: buildx-version: - latest - v0.2.2 - "" steps: - name: Checkout uses: actions/checkout@v2 - name: Set up Docker Buildx id: buildx uses: ./ with: version: ${{ matrix.buildx-version }} - name: Builder instance name run: echo ${{ steps.buildx.outputs.name }} - name: Available platforms run: echo ${{ steps.buildx.outputs.platforms }} - name: Dump context uses: crazy-max/ghaction-dump-context@v1 multi: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Set up Docker Buildx 1 id: buildx1 uses: ./ - name: Builder 1 instance name run: echo ${{ steps.buildx1.outputs.name }} - name: Set up Docker Buildx 2 id: buildx2 uses: ./ - name: Builder 2 instance name run: echo ${{ steps.buildx2.outputs.name }} install: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Set up Docker Buildx uses: ./ with: install: true - name: Check cmd run: | docker build --help use: runs-on: ubuntu-latest strategy: fail-fast: false matrix: use: - true - false steps: - name: Checkout uses: actions/checkout@v2 - name: Set up Docker Buildx uses: ./ with: use: ${{ matrix.use }} - name: List builder instances run: docker buildx ls driver: runs-on: ubuntu-latest strategy: fail-fast: false matrix: driver-opts: - image=moby/buildkit:latest - | image=moby/buildkit:master network=host steps: - name: Checkout uses: actions/checkout@v2 - name: Set up Docker Buildx uses: ./ with: driver: docker-container driver-opts: ${{ matrix.driver-opts }} docker-driver: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Set up Docker Buildx uses: ./ id: builder with: driver: docker - name: Verify run: | [[ "${{ steps.builder.outputs.name }}" = "default" ]] docker buildx inspect docker buildx inspect | grep Driver | grep docker docker buildx inspect | grep Status | grep running endpoint: runs-on: ubuntu-latest services: dind: image: docker:dind options: >- --privileged --health-cmd "docker info" --health-interval 10s --health-timeout 5s --health-retries 5 env: DOCKER_TLS_CERTDIR: "" ports: - 2375:2375 steps: - name: Checkout uses: actions/checkout@v2 - name: Create context run: | docker context create mycontext --docker host=tcp://127.0.0.1:2375 - name: Check context run: | docker --context mycontext info - name: Set up Docker Buildx uses: ./ with: endpoint: mycontext with-qemu: runs-on: ubuntu-latest strategy: fail-fast: false matrix: buildx-version: - latest - v0.2.2 - "" qemu-platforms: - all - arm64,riscv64,arm steps: - name: Checkout uses: actions/checkout@v2 - name: Set up QEMU uses: docker/setup-qemu-action@v1 with: platforms: ${{ matrix.qemu-platforms }} - name: Set up Docker Buildx id: buildx uses: ./ with: version: ${{ matrix.buildx-version }} - name: Available platforms run: echo ${{ steps.buildx.outputs.platforms }} - name: Builder instance name run: echo ${{ steps.buildx.outputs.name }}