test build on gha-sat #4785
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: Docker CI Ubuntu | |
on: | |
push: | |
branches: [ main ] | |
paths-ignore: | |
- 'docs/**' | |
- '**.md' | |
- '.github/renovate.json5' | |
- '.github/CODEOWNERS' | |
- 'LICENSE' | |
pull_request: | |
branches: [ main ] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
# this job will output a boolean value to check whether files that require these tests to run | |
# since all jobs depend on `build-earthly` job, conditionally running it will either cause all jobs to run or skip, | |
# depending on the output value of this job | |
# check-essential-files: | |
# # only run on pull request since push to main is already checking files with paths-ignore | |
# if: ${{ github.event_name == 'pull_request' }} | |
# uses: ./.github/workflows/reusable-find-pr-changes.yaml | |
# permissions: | |
# pull-requests: read | |
# secrets: inherit | |
build-earthly: | |
# needs: check-essential-files | |
# allow the job to execute even if check-essential-files is skipped | |
if: ${{ !failure() }} | |
uses: ./.github/workflows/build-earthly.yml | |
with: | |
BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
RUNS_ON: "earthly-satellite#gha-test-1" | |
BINARY: "docker" | |
SUDO: "" | |
# SKIP_JOB: ${{ needs.check-essential-files.outputs.essential-files == 'false' }} | |
secrets: inherit | |
# docker-lint: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+lint-all" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
docker-test-misc: | |
needs: build-earthly | |
if: ${{ !failure() }} | |
uses: ./.github/workflows/reusable-test.yml | |
with: | |
TEST_TARGET: "+test-misc" | |
BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
RUNS_ON: "earthly-satellite#gha-test-1" | |
BINARY: "docker" | |
SUDO: "" | |
SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
EXTRA_ARGS: "--auto-skip" | |
secrets: inherit | |
docker-tests-no-qemu-group1: | |
needs: build-earthly | |
if: ${{ !failure() }} | |
uses: ./.github/workflows/reusable-test.yml | |
with: | |
TEST_TARGET: "+test-no-qemu-group1" | |
BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
RUNS_ON: "earthly-satellite#gha-test-1" | |
BINARY: "docker" | |
SUDO: "" | |
SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
EXTRA_ARGS: "--auto-skip" | |
secrets: inherit | |
# docker-tests-no-qemu-group2: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group2" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group1-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group1" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group2-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group2" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group3: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group3" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group3-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group3" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group4: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group4" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group4-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group4" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group5: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group5" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group5-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group5" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group6: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group6" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group6-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group6" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
docker-tests-no-qemu-group7: | |
needs: build-earthly | |
if: ${{ !failure() }} | |
uses: ./.github/workflows/reusable-test.yml | |
with: | |
TEST_TARGET: "+test-no-qemu-group7" | |
BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
RUNS_ON: "earthly-satellite#gha-test-1" | |
BINARY: "docker" | |
SUDO: "" | |
SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
EXTRA_ARGS: "--auto-skip" | |
secrets: inherit | |
# docker-tests-no-qemu-group7-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group7" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group8: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group8" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group8-no-logbus: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group8" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXTRA_ARGS: "--logstream=false --logstream-upload=false --auto-skip" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group9: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group9" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "earthly-satellite#gha-test-1" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group10: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group10" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group11: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group11" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-group12: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-group12" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-slow: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-slow" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-no-qemu-kind: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-no-qemu-kind" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-test-earthly-mirror-was-setup: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests+test-earthly-mirror-was-setup" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-test-account: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests/account+test" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-test-registry-command-dockerhub: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests/registry-command+test-dockerhub" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-test-registry-command-ecr: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests/registry-command+test-ecr" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-test-registry-command-gcp: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests/registry-command+test-gcp" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-test-registry-command-multi: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests/registry-command+test-multi" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-test-web-command: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests/web+test" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-test-oidc-command: | |
# if: ${{ !failure() && (github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository) }} | |
# needs: build-earthly | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "./tests/oidc+test" | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-tests-qemu: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test.yml | |
# with: | |
# TEST_TARGET: "+test-qemu" | |
# USE_QEMU: true | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-examples-1: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-example.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXAMPLE_NAME: "+examples-1" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-examples-2: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-example.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXAMPLE_NAME: "+examples-2" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-examples-3: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-example.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# EXAMPLE_NAME: "+examples-3" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-test-local: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-test-local.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# BINARY_COMPOSE: "\"docker compose\"" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-push-integrations: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-push-integrations.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-secret-integrations: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-secrets-integrations.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-bootstrap-integrations: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-bootstrap-integrations.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-repo-auth-tests: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-repo-auth-tests.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-export-test: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-export-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-docker-build-integrations: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-docker-build-integrations.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-earthly-image-test: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-earthly-image-tests.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-misc-test-1: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-misc-tests-1.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-misc-test-2: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-misc-tests-2.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-wait-block-main: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-main.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# docker-wait-block-quick: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-target.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# TARGET_NAME: "+test-misc" | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-wait-block-no-qemu-group1: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-target.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# TARGET_NAME: "+test-no-qemu-group1" | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-wait-block-no-qemu-group2: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-target.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# TARGET_NAME: "+test-no-qemu-group2" | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-wait-block-no-qemu-group3: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-target.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# TARGET_NAME: "+test-no-qemu-group3" | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-wait-block-no-qemu-group4: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-target.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# TARGET_NAME: "+test-no-qemu-group4" | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-wait-block-no-qemu-slow: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-target.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# TARGET_NAME: "+test-no-qemu-slow" | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-wait-block-qemu: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-wait-block-target.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# TARGET_NAME: "+test-qemu" | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# docker-git-metadata-test: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-git-metadata-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# RUNS_ON: "ubuntu-latest" | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# secrets: inherit | |
# | |
# race-test-misc: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-race-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# TEST_TARGET: "+test-misc" | |
# RUNS_ON: "ubuntu-latest" | |
# USE_QEMU: false | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# race-tests-no-qemu-group1: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-race-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# TEST_TARGET: "+test-no-qemu-group1" | |
# RUNS_ON: "ubuntu-latest" | |
# USE_QEMU: false | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# race-tests-no-qemu-group2: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-race-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# TEST_TARGET: "+test-no-qemu-group2" | |
# RUNS_ON: "ubuntu-latest" | |
# USE_QEMU: false | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# race-tests-no-qemu-group3: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-race-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# TEST_TARGET: "+test-no-qemu-group3" | |
# RUNS_ON: "ubuntu-latest" | |
# USE_QEMU: false | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# race-tests-no-qemu-group4: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-race-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# TEST_TARGET: "+test-no-qemu-group4" | |
# RUNS_ON: "ubuntu-latest" | |
# USE_QEMU: false | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# race-tests-no-qemu-slow: | |
# needs: build-earthly | |
# if: ${{ !failure() }} | |
# uses: ./.github/workflows/reusable-race-test.yml | |
# with: | |
# BUILT_EARTHLY_PATH: "./build/linux/amd64/earthly" | |
# TEST_TARGET: "+test-no-qemu-slow" | |
# RUNS_ON: "ubuntu-latest" | |
# USE_QEMU: false | |
# BINARY: "docker" | |
# SUDO: "" | |
# SKIP_JOB: ${{ needs.build-earthly.result != 'success' }} | |
# EXTRA_ARGS: "--auto-skip" | |
# secrets: inherit | |
# | |
# tutorial: | |
# needs: build-earthly | |
# name: Tutorial | |
# runs-on: ubuntu-latest | |
# env: | |
# FORCE_COLOR: 1 | |
# EARTHLY_TOKEN: "${{ secrets.EARTHLY_TOKEN }}" | |
# EARTHLY_INSTALL_ID: "earthly-githubactions" | |
# # Used in our github action as the token - TODO: look to change it into an input | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# - name: Docker mirror login (Earthly Only) | |
# run: docker login registry-1.docker.io.mirror.corp.earthly.dev --username "${{ secrets.DOCKERHUB_MIRROR_USERNAME }}" --password "${{ secrets.DOCKERHUB_MIRROR_PASSWORD }}" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Retrieve earthly from build-earthly job | |
# run: |- | |
# BUILDKITD_IMAGE=docker.io/earthly/buildkitd-staging TAG=${GITHUB_SHA}-ubuntu-latest-docker ./earthly upgrade | |
# mkdir -p $(dirname "./build/earthly") | |
# mv ${HOME}/.earthly/earthly-${GITHUB_SHA}-ubuntu-latest-docker ./build/earthly | |
# - name: Configure Earthly to use mirror (Earthly Only) | |
# run: |- | |
# ./build/earthly config global.buildkit_additional_config "'[registry.\"docker.io\"] | |
# mirrors = [\"registry-1.docker.io.mirror.corp.earthly.dev\"]'" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Set EARTHLY_VERSION_FLAG_OVERRIDES env | |
# run: |- | |
# set -euo pipefail | |
# EARTHLY_VERSION_FLAG_OVERRIDES="$(tr -d '\n' < .earthly_version_flag_overrides)" | |
# echo "EARTHLY_VERSION_FLAG_OVERRIDES=$EARTHLY_VERSION_FLAG_OVERRIDES" >> "$GITHUB_ENV" | |
# - name: Build tutorial part 1 | |
# run: ./build/earthly -P ./examples/tutorial+test-part1 --earthly=$(realpath ./build/earthly) | |
# - name: Build tutorial part 2 | |
# run: ./build/earthly -P ./examples/tutorial+test-part2 --earthly=$(realpath ./build/earthly) | |
# - name: Build tutorial part 3 | |
# run: ./build/earthly -P ./examples/tutorial+test-part3 --earthly=$(realpath ./build/earthly) | |
# - name: Build tutorial part 4 | |
# run: ./build/earthly -P ./examples/tutorial+test-part4 --earthly=$(realpath ./build/earthly) | |
# - name: Build tutorial part 5 | |
# run: ./build/earthly -P ./examples/tutorial+test-part5 --earthly=$(realpath ./build/earthly) | |
# - name: Build tutorial part 6 | |
# run: ./build/earthly -P ./examples/tutorial+test-part6 --earthly=$(realpath ./build/earthly) | |
# - name: Buildkit logs (runs on failure) | |
# run: docker logs earthly-buildkitd | |
# if: ${{ failure() }} | |
# | |
# buildkitd-amd64: | |
# needs: build-earthly | |
# name: +all-buildkitd-amd64 | |
# runs-on: ubuntu-latest | |
# env: | |
# FORCE_COLOR: 1 | |
# EARTHLY_TOKEN: "${{ secrets.EARTHLY_TOKEN }}" | |
# EARTHLY_INSTALL_ID: "earthly-githubactions" | |
# # Used in our github action as the token - TODO: look to change it into an input | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# - name: Set up QEMU | |
# id: qemu | |
# uses: docker/setup-qemu-action@v3 | |
# with: | |
# image: tonistiigi/binfmt:latest | |
# platforms: all | |
# - name: "Put back the git branch into git (Earthly uses it for tagging)" | |
# run: | | |
# branch="" | |
# if [ -n "$GITHUB_HEAD_REF" ]; then | |
# branch="$GITHUB_HEAD_REF" | |
# else | |
# branch="${GITHUB_REF##*/}" | |
# fi | |
# git checkout -b "$branch" || true | |
# - name: Docker mirror login (Earthly Only) | |
# run: docker login registry-1.docker.io.mirror.corp.earthly.dev --username "${{ secrets.DOCKERHUB_MIRROR_USERNAME }}" --password "${{ secrets.DOCKERHUB_MIRROR_PASSWORD }}" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Retrieve earthly from build-earthly job | |
# run: |- | |
# BUILDKITD_IMAGE=docker.io/earthly/buildkitd-staging TAG=${GITHUB_SHA}-ubuntu-latest-docker ./earthly upgrade | |
# mkdir -p $(dirname "./build/earthly") | |
# mv ${HOME}/.earthly/earthly-${GITHUB_SHA}-ubuntu-latest-docker ./build/earthly | |
# - name: Configure Earthly to use mirror (Earthly Only) | |
# run: |- | |
# ./build/earthly config global.buildkit_additional_config "'[registry.\"docker.io\"] | |
# mirrors = [\"registry-1.docker.io.mirror.corp.earthly.dev\"]'" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Set EARTHLY_VERSION_FLAG_OVERRIDES env | |
# run: |- | |
# set -euo pipefail | |
# EARTHLY_VERSION_FLAG_OVERRIDES="$(tr -d '\n' < .earthly_version_flag_overrides)" | |
# echo "EARTHLY_VERSION_FLAG_OVERRIDES=$EARTHLY_VERSION_FLAG_OVERRIDES" >> "$GITHUB_ENV" | |
# - name: Build linux/amd64 +buildkitd | |
# run: |- | |
# ./build/earthly --ci --platform=linux/amd64 ./buildkitd+buildkitd --BUILDKIT_PROJECT="$BUILDKIT_PROJECT" | |
# - name: Buildkit logs (runs on failure) | |
# run: docker logs earthly-buildkitd | |
# if: ${{ failure() }} | |
# | |
# buildkitd-arm64: | |
# needs: build-earthly | |
# name: +all-buildkitd-arm64 | |
# runs-on: ubuntu-latest | |
# env: | |
# FORCE_COLOR: 1 | |
# EARTHLY_TOKEN: "${{ secrets.EARTHLY_TOKEN }}" | |
# EARTHLY_INSTALL_ID: "earthly-githubactions" | |
# # Used in our github action as the token - TODO: look to change it into an input | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# - name: Set up QEMU | |
# id: qemu | |
# uses: docker/setup-qemu-action@v3 | |
# with: | |
# image: tonistiigi/binfmt:latest | |
# platforms: all | |
# - name: "Put back the git branch into git (Earthly uses it for tagging)" | |
# run: | | |
# branch="" | |
# if [ -n "$GITHUB_HEAD_REF" ]; then | |
# branch="$GITHUB_HEAD_REF" | |
# else | |
# branch="${GITHUB_REF##*/}" | |
# fi | |
# git checkout -b "$branch" || true | |
# - name: Docker mirror login (Earthly Only) | |
# run: docker login registry-1.docker.io.mirror.corp.earthly.dev --username "${{ secrets.DOCKERHUB_MIRROR_USERNAME }}" --password "${{ secrets.DOCKERHUB_MIRROR_PASSWORD }}" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Retrieve earthly from build-earthly job | |
# run: |- | |
# BUILDKITD_IMAGE=docker.io/earthly/buildkitd-staging TAG=${GITHUB_SHA}-ubuntu-latest-docker ./earthly upgrade | |
# mkdir -p $(dirname "./build/earthly") | |
# mv ${HOME}/.earthly/earthly-${GITHUB_SHA}-ubuntu-latest-docker ./build/earthly | |
# - name: Configure Earthly to use mirror (Earthly Only) | |
# run: |- | |
# ./build/earthly config global.buildkit_additional_config "'[registry.\"docker.io\"] | |
# mirrors = [\"registry-1.docker.io.mirror.corp.earthly.dev\"]'" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Set EARTHLY_VERSION_FLAG_OVERRIDES env | |
# run: |- | |
# set -euo pipefail | |
# EARTHLY_VERSION_FLAG_OVERRIDES="$(tr -d '\n' < .earthly_version_flag_overrides)" | |
# echo "EARTHLY_VERSION_FLAG_OVERRIDES=$EARTHLY_VERSION_FLAG_OVERRIDES" >> "$GITHUB_ENV" | |
# - name: Build linux/arm64 +buildkitd | |
# run: |- | |
# ./build/earthly --ci --platform=linux/arm64 ./buildkitd+buildkitd --BUILDKIT_PROJECT="$BUILDKIT_PROJECT" | |
# - name: Buildkit logs (runs on failure) | |
# run: docker logs earthly-buildkitd | |
# if: ${{ failure() }} | |
# | |
# earthly: | |
# needs: build-earthly | |
# name: +earthly-all +earthly-docker | |
# runs-on: ubuntu-latest | |
# env: | |
# FORCE_COLOR: 1 | |
# EARTHLY_TOKEN: "${{ secrets.EARTHLY_TOKEN }}" | |
# EARTHLY_INSTALL_ID: "earthly-githubactions" | |
# # Used in our github action as the token - TODO: look to change it into an input | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# - name: Set up QEMU | |
# id: qemu | |
# uses: docker/setup-qemu-action@v3 | |
# with: | |
# image: tonistiigi/binfmt:latest | |
# platforms: all | |
# - name: "Put back the git branch into git (Earthly uses it for tagging)" | |
# run: | | |
# branch="" | |
# if [ -n "$GITHUB_HEAD_REF" ]; then | |
# branch="$GITHUB_HEAD_REF" | |
# else | |
# branch="${GITHUB_REF##*/}" | |
# fi | |
# git checkout -b "$branch" || true | |
# - name: Docker mirror login (Earthly Only) | |
# run: docker login registry-1.docker.io.mirror.corp.earthly.dev --username "${{ secrets.DOCKERHUB_MIRROR_USERNAME }}" --password "${{ secrets.DOCKERHUB_MIRROR_PASSWORD }}" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Retrieve earthly from build-earthly job | |
# run: |- | |
# BUILDKITD_IMAGE=docker.io/earthly/buildkitd-staging TAG=${GITHUB_SHA}-ubuntu-latest-docker ./earthly upgrade | |
# mkdir -p $(dirname "./build/earthly") | |
# mv ${HOME}/.earthly/earthly-${GITHUB_SHA}-ubuntu-latest-docker ./build/earthly | |
# - name: Configure Earthly to use mirror (Earthly Only) | |
# run: |- | |
# ./build/earthly config global.buildkit_additional_config "'[registry.\"docker.io\"] | |
# mirrors = [\"registry-1.docker.io.mirror.corp.earthly.dev\"]'" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Set EARTHLY_VERSION_FLAG_OVERRIDES env | |
# run: |- | |
# set -euo pipefail | |
# EARTHLY_VERSION_FLAG_OVERRIDES="$(tr -d '\n' < .earthly_version_flag_overrides)" | |
# echo "EARTHLY_VERSION_FLAG_OVERRIDES=$EARTHLY_VERSION_FLAG_OVERRIDES" >> "$GITHUB_ENV" | |
# - name: Build +earthly-all | |
# run: ./build/earthly --ci +earthly-all | |
# - name: Build +earthly-docker | |
# run: ./build/earthly --ci +earthly-docker | |
# - name: Buildkit logs (runs on failure) | |
# run: docker logs earthly-buildkitd | |
# if: ${{ failure() }} | |
# | |
# prerelease: | |
# needs: build-earthly | |
# name: +prerelease | |
# runs-on: ubuntu-latest | |
# env: | |
# FORCE_COLOR: 1 | |
# EARTHLY_TOKEN: "${{ secrets.EARTHLY_TOKEN }}" | |
# EARTHLY_INSTALL_ID: "earthly-githubactions" | |
# # Used in our github action as the token - TODO: look to change it into an input | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# - name: Set up QEMU | |
# id: qemu | |
# uses: docker/setup-qemu-action@v3 | |
# with: | |
# image: tonistiigi/binfmt:latest | |
# platforms: all | |
# - name: "Put back the git branch into git (Earthly uses it for tagging)" | |
# run: | | |
# branch="" | |
# if [ -n "$GITHUB_HEAD_REF" ]; then | |
# branch="$GITHUB_HEAD_REF" | |
# else | |
# branch="${GITHUB_REF##*/}" | |
# fi | |
# git checkout -b "$branch" || true | |
# - name: Docker mirror login (Earthly Only) | |
# run: docker login registry-1.docker.io.mirror.corp.earthly.dev --username "${{ secrets.DOCKERHUB_MIRROR_USERNAME }}" --password "${{ secrets.DOCKERHUB_MIRROR_PASSWORD }}" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Retrieve earthly from build-earthly job | |
# run: |- | |
# BUILDKITD_IMAGE=docker.io/earthly/buildkitd-staging TAG=${GITHUB_SHA}-ubuntu-latest-docker ./earthly upgrade | |
# mkdir -p $(dirname "./build/earthly") | |
# mv ${HOME}/.earthly/earthly-${GITHUB_SHA}-ubuntu-latest-docker ./build/earthly | |
# - name: Configure Earthly to use mirror (Earthly Only) | |
# run: |- | |
# ./build/earthly config global.buildkit_additional_config "'[registry.\"docker.io\"] | |
# mirrors = [\"registry-1.docker.io.mirror.corp.earthly.dev\"]'" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Set EARTHLY_VERSION_FLAG_OVERRIDES env | |
# run: |- | |
# set -euo pipefail | |
# EARTHLY_VERSION_FLAG_OVERRIDES="$(tr -d '\n' < .earthly_version_flag_overrides)" | |
# echo "EARTHLY_VERSION_FLAG_OVERRIDES=$EARTHLY_VERSION_FLAG_OVERRIDES" >> "$GITHUB_ENV" | |
# - name: Build +prerelease | |
# run: ./build/earthly --ci +prerelease | |
# - name: Buildkit logs (runs on failure) | |
# run: docker logs earthly-buildkitd | |
# if: ${{ failure() }} | |
# | |
# push-prerelease: | |
# name: --push +prerelease | |
# if: github.event_name == 'push' | |
# needs: | |
# - build-earthly | |
# - buildkitd-amd64 | |
# - buildkitd-arm64 | |
# - prerelease | |
# - earthly | |
# runs-on: ubuntu-latest | |
# env: | |
# FORCE_COLOR: 1 | |
# EARTHLY_TOKEN: "${{ secrets.EARTHLY_TOKEN }}" | |
# EARTHLY_INSTALL_ID: "earthly-githubactions" | |
# # Used in our github action as the token - TODO: look to change it into an input | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# - name: Set up QEMU | |
# id: qemu | |
# uses: docker/setup-qemu-action@v3 | |
# with: | |
# image: tonistiigi/binfmt:latest | |
# platforms: all | |
# - name: "Put back the git branch into git (Earthly uses it for tagging)" | |
# run: | | |
# branch="" | |
# if [ -n "$GITHUB_HEAD_REF" ]; then | |
# branch="$GITHUB_HEAD_REF" | |
# else | |
# branch="${GITHUB_REF##*/}" | |
# fi | |
# git checkout -b "$branch" || true | |
# - name: Docker mirror login (Earthly Only) | |
# run: docker login registry-1.docker.io.mirror.corp.earthly.dev --username "${{ secrets.DOCKERHUB_MIRROR_USERNAME }}" --password "${{ secrets.DOCKERHUB_MIRROR_PASSWORD }}" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Retrieve earthly from build-earthly job | |
# run: |- | |
# BUILDKITD_IMAGE=docker.io/earthly/buildkitd-staging TAG=${GITHUB_SHA}-ubuntu-latest-docker ./earthly upgrade | |
# mkdir -p $(dirname "./build/earthly") | |
# mv ${HOME}/.earthly/earthly-${GITHUB_SHA}-ubuntu-latest-docker ./build/earthly | |
# - name: Configure Earthly to use mirror (Earthly Only) | |
# run: |- | |
# ./build/earthly config global.buildkit_additional_config "'[registry.\"docker.io\"] | |
# mirrors = [\"registry-1.docker.io.mirror.corp.earthly.dev\"]'" | |
# if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name == github.repository | |
# - name: Docker Login (main build) | |
# run: docker login --username "${{ secrets.DOCKERHUB_USERNAME }}" --password "${{ secrets.DOCKERHUB_TOKEN }}" | |
# - name: Set EARTHLY_VERSION_FLAG_OVERRIDES env | |
# run: |- | |
# set -euo pipefail | |
# EARTHLY_VERSION_FLAG_OVERRIDES="$(tr -d '\n' < .earthly_version_flag_overrides)" | |
# echo "EARTHLY_VERSION_FLAG_OVERRIDES=$EARTHLY_VERSION_FLAG_OVERRIDES" >> "$GITHUB_ENV" | |
# - name: Build and push +prerelease | |
# run: ./build/earthly --ci --push +prerelease | |
# - name: Buildkit logs (runs on failure) | |
# run: docker logs earthly-buildkitd | |
# if: ${{ failure() }} |