aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCrazyMax <crazy-max@users.noreply.github.com>2022-08-29 22:52:29 +0200
committerCrazyMax <crazy-max@users.noreply.github.com>2022-08-29 22:52:34 +0200
commita4d081cc17d6b0773212d12fba0a38e4709147fd (patch)
treee1105adeb2ea07b916c453b2cbbbfbc73e80d255
parent1ac44105f995f8c6d94d296072d76e01ed7d6518 (diff)
ci: move buildkit tests to a dedicated workflow
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
-rw-r--r--.github/workflows/buildkit.yml114
-rw-r--r--.github/workflows/ci.yml71
2 files changed, 114 insertions, 71 deletions
diff --git a/.github/workflows/buildkit.yml b/.github/workflows/buildkit.yml
new file mode 100644
index 0000000000..f4a20003e7
--- /dev/null
+++ b/.github/workflows/buildkit.yml
@@ -0,0 +1,114 @@
+name: buildkit
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: true
+
+on:
+ workflow_dispatch:
+ push:
+ branches:
+ - 'master'
+ - '[0-9]+.[0-9]{2}'
+ pull_request:
+
+env:
+ BUNDLES_OUTPUT: ./bundles
+
+jobs:
+ build:
+ runs-on: ubuntu-20.04
+ steps:
+ -
+ name: Checkout
+ uses: actions/checkout@v3
+ -
+ name: Set up Docker Buildx
+ uses: docker/setup-buildx-action@v2
+ -
+ name: Build
+ uses: docker/bake-action@v2
+ with:
+ targets: binary
+ set: |
+ *.cache-from=type=gha,scope=buildkit-build-binary
+ *.cache-to=type=gha,scope=buildkit-build-binary
+ -
+ name: Upload artifacts
+ uses: actions/upload-artifact@v3
+ with:
+ name: binary
+ path: ${{ env.BUNDLES_OUTPUT }}
+ if-no-files-found: error
+ retention-days: 1
+
+ test:
+ needs:
+ - build
+ runs-on: ubuntu-20.04
+ strategy:
+ fail-fast: false
+ matrix:
+ pkg:
+ - ./client
+ - ./cmd/buildctl
+ - ./solver
+ - ./frontend
+ - ./frontend/dockerfile
+ typ:
+ - integration
+ include:
+ - pkg: ./...
+ skip-integration-tests: 1
+ steps:
+ -
+ name: Checkout
+ uses: actions/checkout@v3
+ with:
+ path: moby
+ -
+ name: BuildKit ref
+ run: |
+ ./hack/go-mod-prepare.sh
+ # FIXME(thaJeztah) temporarily overriding version to use for tests; see https://github.com/moby/moby/pull/44028#issuecomment-1225964929
+ # echo "BUILDKIT_REF=$(./hack/buildkit-ref)" >> $GITHUB_ENV
+ echo "BUILDKIT_REF=8e2d9b9006caadb74c1745608889a37ba139acc1" >> $GITHUB_ENV
+ working-directory: moby
+ -
+ name: Checkout BuildKit ${{ env.BUILDKIT_REF }}
+ uses: actions/checkout@v3
+ with:
+ repository: "moby/buildkit"
+ ref: ${{ env.BUILDKIT_REF }}
+ path: buildkit
+ -
+ name: Set up QEMU
+ uses: docker/setup-qemu-action@v2
+ -
+ name: Set up Docker Buildx
+ uses: docker/setup-buildx-action@v2
+ -
+ name: Download binary artifacts
+ uses: actions/download-artifact@v3
+ with:
+ name: binary
+ path: ./buildkit/build/moby/
+ -
+ name: Update daemon.json
+ run: |
+ sudo rm /etc/docker/daemon.json
+ sudo service docker restart
+ docker version
+ docker info
+ -
+ name: Test
+ run: |
+ ./hack/test ${{ matrix.typ }}
+ env:
+ CONTEXT: "."
+ TEST_DOCKERD: "1"
+ TEST_DOCKERD_BINARY: "./build/moby/binary-daemon/dockerd"
+ TESTPKGS: "${{ matrix.pkg }}"
+ TESTFLAGS: "-v --parallel=1 --timeout=30m --run=//worker=dockerd$"
+ SKIP_INTEGRATION_TESTS: "${{ matrix.skip-integration-tests }}"
+ working-directory: buildkit
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index f9ee68e367..abadd40246 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -99,74 +99,3 @@ jobs:
path: ${{ env.BUNDLES_OUTPUT }}
if-no-files-found: error
retention-days: 7
-
- test-buildkit:
- needs:
- - build
- runs-on: ubuntu-20.04
- strategy:
- fail-fast: false
- matrix:
- pkg:
- - ./client
- - ./cmd/buildctl
- - ./solver
- - ./frontend
- - ./frontend/dockerfile
- typ:
- - integration
- include:
- - pkg: ./...
- skip-integration-tests: 1
- steps:
- -
- name: Checkout
- uses: actions/checkout@v3
- with:
- path: moby
- -
- name: BuildKit ref
- run: |
- ./hack/go-mod-prepare.sh
- # FIXME(thaJeztah) temporarily overriding version to use for tests; see https://github.com/moby/moby/pull/44028#issuecomment-1225964929
- # echo "BUILDKIT_REF=$(./hack/buildkit-ref)" >> $GITHUB_ENV
- echo "BUILDKIT_REF=8e2d9b9006caadb74c1745608889a37ba139acc1" >> $GITHUB_ENV
- working-directory: moby
- -
- name: Checkout BuildKit ${{ env.BUILDKIT_REF }}
- uses: actions/checkout@v3
- with:
- repository: "moby/buildkit"
- ref: ${{ env.BUILDKIT_REF }}
- path: buildkit
- -
- name: Set up QEMU
- uses: docker/setup-qemu-action@v1
- -
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v1
- -
- name: Download binary artifacts
- uses: actions/download-artifact@v3
- with:
- name: binary
- path: ./buildkit/build/moby/
- -
- name: Update daemon.json
- run: |
- sudo rm /etc/docker/daemon.json
- sudo service docker restart
- docker version
- docker info
- -
- name: Test
- run: |
- ./hack/test ${{ matrix.typ }}
- env:
- CONTEXT: "."
- TEST_DOCKERD: "1"
- TEST_DOCKERD_BINARY: "./build/moby/binary-daemon/dockerd"
- TESTPKGS: "${{ matrix.pkg }}"
- TESTFLAGS: "-v --parallel=1 --timeout=30m --run=//worker=dockerd$"
- SKIP_INTEGRATION_TESTS: "${{ matrix.skip-integration-tests }}"
- working-directory: buildkit