From b0872c8276a2eeb9276d8eca65b7492828e85e25 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Mar 2026 23:15:29 +0000 Subject: [PATCH 1/4] chore(deps): update actions/checkout action to v6.0.2 --- .github/workflows/ci.yml | 2 +- .github/workflows/earthly-count.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 625b28a..bba0d7d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,7 +31,7 @@ jobs: EARTHLY_CONVERSION_PARALLELISM: "5" EARTHLY_INSTALL_ID: "earthbuild-dind-githubactions" steps: - - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 # The dind (common+alpine-kind-test and common+ubuntu-kind-test) detects # the host's IPv6 capability and then requires IPv6 NAT to create networks # for kind. So we load it here. diff --git a/.github/workflows/earthly-count.yml b/.github/workflows/earthly-count.yml index c1c47fd..52b5221 100644 --- a/.github/workflows/earthly-count.yml +++ b/.github/workflows/earthly-count.yml @@ -13,7 +13,7 @@ jobs: steps: - name: Checkout PR branch - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 with: fetch-depth: 0 From 4b4b0794e94fb2a4275227b91fea4e3be4883db1 Mon Sep 17 00:00:00 2001 From: Janis Horsts Date: Wed, 8 Apr 2026 19:27:04 +0100 Subject: [PATCH 2/4] chore: tidy --- .github/workflows/ci.yml | 3 +-- .github/workflows/release.yml | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bba0d7d..f07a3a5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -49,8 +49,7 @@ jobs: sudo apt-get install -y qemu-user-static binfmt-support sudo update-binfmts --display - uses: earthbuild/actions-setup@main - with: - version: v0.8.15 + - name: Log in to GitHub Container Registry (non fork only) 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 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6e44048..f64f8c7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -35,8 +35,7 @@ jobs: sudo apt-get install -y qemu-user-static binfmt-support sudo update-binfmts --display - uses: earthbuild/actions-setup@main - with: - version: v0.8.15 + - name: Log in to container registries (non fork only) run: |- docker login --username "${{ vars.DOCKERHUB_USERNAME }}" --password "${{ secrets.DOCKERHUB_TOKEN }}" From ac0301b23928904e4319ceec5c9e2845429ad1a8 Mon Sep 17 00:00:00 2001 From: Janis Horsts Date: Wed, 8 Apr 2026 19:32:09 +0100 Subject: [PATCH 3/4] chore: tidy --- .github/workflows/ci.yml | 2 +- .github/workflows/release.yml | 4 ++-- CONTRIBUTING.md | 23 ++++++++++++----------- common/Earthfile | 6 +++--- 4 files changed, 18 insertions(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f07a3a5..c486b58 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -54,4 +54,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 --OS=${{ matrix.os }} + run: earth --ci -P --push +test --OS=${{ matrix.os }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f64f8c7..f1942dc 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -43,5 +43,5 @@ jobs: if: github.event.pull_request.head.repo.full_name == github.repository - name: Build & Push image run: | - earthly --ci -P --push +release --RENOVATE_BRANCH=${{github.head_ref}} # default:ghcr.io - earthly --ci -P --push +release --RENOVATE_BRANCH=${{github.head_ref}} --CR_HOST=docker.io + earth --ci -P --push +release --RENOVATE_BRANCH=${{github.head_ref}} # default:ghcr.io + earth --ci -P --push +release --RENOVATE_BRANCH=${{github.head_ref}} --CR_HOST=docker.io diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0db4c44..11638ca 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -34,26 +34,27 @@ dependencies that will trigger new versions of the dind images such as the docke ## Testing -Images are tested by running remote test targets that are maintained in [earthbuild/earthbuild](https://github.com/earthbuild/earthbuild/tree/main/tests/with-docker). This is because these tests also help test [WITH DOCKER](https://docs.earthly.dev/docs/earthfile#with-docker) command in earthly cli. +Images are tested by running remote test targets that are maintained in [earthbuild/earthbuild](https://github.com/earthbuild/earthbuild/tree/main/tests/with-docker). This is because these tests also help test [WITH DOCKER](https://docs.earthly.dev/docs/earthfile#with-docker) command in earth cli. Temporary images are built, pushed, and pulled as part of the test cycle. ### How to run tests -* Test a specific image os: +- Test a specific image os: ```bash -earthly --push -P ./os/+test-build +earth --push -P ./os/+test-build ``` -* Test all images: +- Test all images: + ```bash -earthly --push -P +test +earth --push -P +test ``` #### Community members -Community members do not have permissions to push a built image and run the tests against it. However, they can easily set a different container registry repository by changing the `CR_HOST` (default: ghcr.io) and `CR_ORG` ARG values in [.arg](.arg) to a private container registry repository or by passing the args in the earthly command, e.g. `earthly --push -P +test --CR_HOST= --CR_ORG=`. +Community members do not have permissions to push a built image and run the tests against it. However, they can easily set a different container registry repository by changing the `CR_HOST` (default: ghcr.io) and `CR_ORG` ARG values in [.arg](.arg) to a private container registry repository or by passing the args in the earth command, e.g. `earth --push -P +test --CR_HOST= --CR_ORG=`. ## Deployment @@ -61,11 +62,11 @@ When the relevant dependencies are updated by Renovate, new images/tags will be ## Contributing -* Please report bugs as [GitHub issues](https://github.com/earthbuild/dind/issues). -* Join us on [Slack](https://earthly.dev/slack)! -* Questions via GitHub issues are welcome! -* PRs welcome! But please give a heads-up in a GitHub issue before starting work. If there is no GitHub issue for what you want to do, please create one. +- Please report bugs as [GitHub issues](https://github.com/earthbuild/dind/issues). +- Join us on [Slack](https://earthly.dev/slack)! +- Questions via GitHub issues are welcome! +- PRs welcome! But please give a heads-up in a GitHub issue before starting work. If there is no GitHub issue for what you want to do, please create one. ## Licensing -Earthly is licensed under the Mozilla Public License Version 2.0. See [LICENSE](./LICENSE). \ No newline at end of file +Earthly is licensed under the Mozilla Public License Version 2.0. See [LICENSE](./LICENSE). diff --git a/common/Earthfile b/common/Earthfile index ea2de1a..82cba41 100644 --- a/common/Earthfile +++ b/common/Earthfile @@ -2,7 +2,7 @@ VERSION --build-auto-skip 0.8 FROM alpine:3.23.2@sha256:865b95f46d98cf867a156fe4a135ad3fe50d2056aa3f25ed31662dff6da4eb62 -# EARTHLY_REPO_VERSION specifies a branch and/or commit of earthly/earthly (it defaults to the earthly cli version if left empty) +# EARTHLY_REPO_VERSION specifies a branch and/or commit of Earthbuild/earthbuild (it defaults to the earth cli version if left empty) ARG EARTHLY_REPO_VERSION IMPORT github.com/EarthBuild/earthbuild/buildkitd:$EARTHLY_REPO_VERSION AS earthly @@ -82,7 +82,7 @@ get-image-info: RUN echo $image_full_name > $dir/name && echo $TAG > $dir/tag SAVE ARTIFACT $dir -# test runs tests against the specified image (DIND_IMAGE) or otherwise uses the image specified in earthly/earthly repo +# test runs tests against the specified image (DIND_IMAGE) or otherwise uses the image specified in Earthbuild/earthbuild repo test: # DIND_IMAGE is the full container image name & tag to run the tests against. The image must exist in the remote container registry ARG DIND_IMAGE @@ -92,7 +92,7 @@ test: # build-and-test is used to build a new image and run tests against it after pushing it to registry # this can be used on either the final image or a test image (which is differentiated by the repo and tag that is used) # this target will call +build & +test targets that are defined in $DIR_PATH/Earthfile -# Note: +test will only run when executing earthly with the --push flag since the tests need to run against the pushed image +# Note: +test will only run when executing earth with the --push flag since the tests need to run against the pushed image build-and-test: # DIR_PATH needs to match the directory name of the linux distribution of the dind image (alpine, ubuntu-22.04, ...) ARG --required DIR_PATH From 1bc368a7572802c15262209c2e07481c32c5ff23 Mon Sep 17 00:00:00 2001 From: Janis Horsts Date: Wed, 8 Apr 2026 19:38:00 +0100 Subject: [PATCH 4/4] chore: tidy --- os/alpine/Earthfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/os/alpine/Earthfile b/os/alpine/Earthfile index a64bbab..705ff5f 100644 --- a/os/alpine/Earthfile +++ b/os/alpine/Earthfile @@ -9,7 +9,7 @@ ARG --global OS_IMAGE=alpine # renovate: datasource=docker depName=alpine ARG --global OS_VERSION=3.22 # renovate: datasource=repology depName=alpine_3_22/docker versioning=loose -ARG --global DOCKER_VERSION=28.3.3-r4 +ARG --global DOCKER_VERSION=28.3.3-r5 # DIR_PATH is set to that common targets can call os specific targets. It should match the directory name this Earthfile is located in ARG --global DIR_PATH=$OS_IMAGE