From f74ef5091ef04eb8cbfeca3c3ae2f674f7345b0b Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 2 Mar 2024 13:24:26 +0000 Subject: [PATCH 01/18] introduces macos and windows runners in build step --- .github/workflows/build.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 663ffadb..c3e51e50 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -15,7 +15,8 @@ jobs: - uses: actions/checkout@v3 - id: set-matrix run: | - matrix=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"]}' -c ) + matrix=$( cat k8s-versions.json | jq '{os: ["ubuntu-latest"], version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"]}' -c ) + matrix=$( echo $matrix | jq '.os as $os | .version as $version | {os: $os, version: $version, include: [{os: "windows-latest", version: $version[-1]}, {os: "macos-latest", version: $version[-1]}]}' -c ) echo $matrix echo "::set-output name=matrix::$matrix" @@ -30,10 +31,10 @@ jobs: echo $matrix | jq . build: - runs-on: ubuntu-latest needs: matrix strategy: matrix: ${{ fromJson(needs.matrix.outputs.matrix) }} + runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v3 - name: Set up JDK 11 From 3fd3a1aa1b64b7c4608b5fdf2737b4ea2be1a5ee Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 2 Mar 2024 13:43:23 +0000 Subject: [PATCH 02/18] removes windows-runner --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index c3e51e50..d80c39b4 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -16,7 +16,7 @@ jobs: - id: set-matrix run: | matrix=$( cat k8s-versions.json | jq '{os: ["ubuntu-latest"], version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"]}' -c ) - matrix=$( echo $matrix | jq '.os as $os | .version as $version | {os: $os, version: $version, include: [{os: "windows-latest", version: $version[-1]}, {os: "macos-latest", version: $version[-1]}]}' -c ) + matrix=$( echo $matrix | jq '.os as $os | .version as $version | {os: $os, version: $version, include: [{os: "macos-latest", version: $version[-1]}]}' -c ) echo $matrix echo "::set-output name=matrix::$matrix" From 3634ff43fb1084b9640a2aed0653bf693c1a8606 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 2 Mar 2024 13:51:28 +0000 Subject: [PATCH 03/18] adds missing docker for macos-run --- .github/workflows/build.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index d80c39b4..727e58b5 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -36,6 +36,11 @@ jobs: matrix: ${{ fromJson(needs.matrix.outputs.matrix) }} runs-on: ${{ matrix.os }} steps: + - name: Setup docker (missing on MacOS) + if: runner.os == 'macos' + run: | + brew install docker + colima start - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v2 From 40f6ee6a8a0914ab43c1dbf345264350516cc4f1 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 2 Mar 2024 14:03:01 +0000 Subject: [PATCH 04/18] fixes mac-os build - docker setup --- .github/workflows/build.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 727e58b5..533724ae 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -15,8 +15,8 @@ jobs: - uses: actions/checkout@v3 - id: set-matrix run: | - matrix=$( cat k8s-versions.json | jq '{os: ["ubuntu-latest"], version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"]}' -c ) - matrix=$( echo $matrix | jq '.os as $os | .version as $version | {os: $os, version: $version, include: [{os: "macos-latest", version: $version[-1]}]}' -c ) + matrix=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"], os: ["ubuntu-latest"]}' -c ) + matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $version[-1], os: "macos-latest"}]}' -c ) echo $matrix echo "::set-output name=matrix::$matrix" @@ -41,6 +41,9 @@ jobs: run: | brew install docker colima start + export TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=/var/run/docker.sock + export TESTCONTAINERS_HOST_OVERRIDE=$(colima ls -j | jq -r '.address') + export DOCKER_HOST="unix://${HOME}/.colima/default/docker.sock" - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v2 From 04bd595504bed86e13ba0dbb409d9609561e2843 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 2 Mar 2024 14:22:44 +0000 Subject: [PATCH 05/18] fixes mac-os build - docker setup --- .github/workflows/build.yaml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 533724ae..961a78a9 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -17,6 +17,9 @@ jobs: run: | matrix=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"], os: ["ubuntu-latest"]}' -c ) matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $version[-1], os: "macos-latest"}]}' -c ) + + matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version[-1], os: "macos-latest"}' -c ) + echo $matrix echo "::set-output name=matrix::$matrix" @@ -41,9 +44,9 @@ jobs: run: | brew install docker colima start - export TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=/var/run/docker.sock - export TESTCONTAINERS_HOST_OVERRIDE=$(colima ls -j | jq -r '.address') - export DOCKER_HOST="unix://${HOME}/.colima/default/docker.sock" + echo "TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=/var/run/docker.sock" >> $GITHUB_ENV + echo "TESTCONTAINERS_HOST_OVERRIDE=$(colima ls -j | jq -r '.address')" >> $GITHUB_ENV + echo "DOCKER_HOST=\"unix://${HOME}/.colima/default/docker.sock\"" >> $GITHUB_ENV - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v2 From b312b18b299b4536c9dcf36ea51c457bbdd3c0db Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 2 Mar 2024 14:25:02 +0000 Subject: [PATCH 06/18] fixes mac-os build - docker setup --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 961a78a9..71fba318 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -16,7 +16,7 @@ jobs: - id: set-matrix run: | matrix=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"], os: ["ubuntu-latest"]}' -c ) - matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $version[-1], os: "macos-latest"}]}' -c ) + # matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $version[-1], os: "macos-latest"}]}' -c ) matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version[-1], os: "macos-latest"}' -c ) From d870ac07fa577df38b664c7b243ec4e2b3631f2f Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 2 Mar 2024 14:28:03 +0000 Subject: [PATCH 07/18] fixes mac-os build - docker setup --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 71fba318..bc95edef 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -18,7 +18,7 @@ jobs: matrix=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"], os: ["ubuntu-latest"]}' -c ) # matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $version[-1], os: "macos-latest"}]}' -c ) - matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version[-1], os: "macos-latest"}' -c ) + matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: [$version[-1]], os: ["macos-latest"]}' -c ) echo $matrix echo "::set-output name=matrix::$matrix" From f874752f5bab2197e9eeb174307299a052bec98c Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sun, 3 Mar 2024 19:34:43 +0000 Subject: [PATCH 08/18] fixes mac-os build - docker setup --- .github/workflows/build.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index bc95edef..7b7db458 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -43,7 +43,8 @@ jobs: if: runner.os == 'macos' run: | brew install docker - colima start + colima start --network-address + colima ls echo "TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=/var/run/docker.sock" >> $GITHUB_ENV echo "TESTCONTAINERS_HOST_OVERRIDE=$(colima ls -j | jq -r '.address')" >> $GITHUB_ENV echo "DOCKER_HOST=\"unix://${HOME}/.colima/default/docker.sock\"" >> $GITHUB_ENV From 9f8bfa90acabcc519ed089721878980f622fd612 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Mon, 4 Mar 2024 14:20:22 +0000 Subject: [PATCH 09/18] fixes mac-os build - docker setup --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 7b7db458..b77f7fc4 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -47,7 +47,7 @@ jobs: colima ls echo "TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=/var/run/docker.sock" >> $GITHUB_ENV echo "TESTCONTAINERS_HOST_OVERRIDE=$(colima ls -j | jq -r '.address')" >> $GITHUB_ENV - echo "DOCKER_HOST=\"unix://${HOME}/.colima/default/docker.sock\"" >> $GITHUB_ENV + echo "DOCKER_HOST=unix://${HOME}/.colima/default/docker.sock" >> $GITHUB_ENV - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v2 From f60fcc1f3dc2f5af627b3a225f917c13a68e090f Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 10:37:52 +0200 Subject: [PATCH 10/18] fix mac build --- .github/workflows/build.yaml | 6 +++++- build.gradle | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index b77f7fc4..270ce971 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -45,9 +45,13 @@ jobs: brew install docker colima start --network-address colima ls + # For testcontainers to find the Colima socket + # https://github.com/abiosoft/colima/blob/main/docs/FAQ.md#cannot-connect-to-the-docker-daemon-at-unixvarrundockersock-is-the-docker-daemon-running + sudo ln -sf $HOME/.colima/default/docker.sock /var/run/docker.sock + echo "TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=/var/run/docker.sock" >> $GITHUB_ENV echo "TESTCONTAINERS_HOST_OVERRIDE=$(colima ls -j | jq -r '.address')" >> $GITHUB_ENV - echo "DOCKER_HOST=unix://${HOME}/.colima/default/docker.sock" >> $GITHUB_ENV + # echo "DOCKER_HOST=unix://${HOME}/.colima/default/docker.sock" >> $GITHUB_ENV - uses: actions/checkout@v3 - name: Set up JDK 11 uses: actions/setup-java@v2 diff --git a/build.gradle b/build.gradle index 1c902741..c6302ea2 100644 --- a/build.gradle +++ b/build.gradle @@ -55,7 +55,10 @@ test { systemProperty "kubernetes.disable.autoConfig", "true" environment 'TESTCONTAINERS_REUSE_ENABLE', 'true' - environment 'CONTAINER_FILTER', System.getenv("CONTAINER_FILTER") + + if(System.getenv("CONTAINER_FILTER")) { + environment 'CONTAINER_FILTER', System.getenv("CONTAINER_FILTER") + } useJUnitPlatform() From 26e1c9d02917c5fdea1f0f0fff65308ad6fd4417 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 10:57:26 +0200 Subject: [PATCH 11/18] fix mac build --- .github/workflows/build.yaml | 2 +- build.gradle | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 270ce971..2181f9e7 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -18,7 +18,7 @@ jobs: matrix=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"], os: ["ubuntu-latest"]}' -c ) # matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $version[-1], os: "macos-latest"}]}' -c ) - matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: [$version[-1]], os: ["macos-latest"]}' -c ) + matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: [$version[-1]], os: ["macos-13"]}' -c ) echo $matrix echo "::set-output name=matrix::$matrix" diff --git a/build.gradle b/build.gradle index c6302ea2..1c902741 100644 --- a/build.gradle +++ b/build.gradle @@ -55,10 +55,7 @@ test { systemProperty "kubernetes.disable.autoConfig", "true" environment 'TESTCONTAINERS_REUSE_ENABLE', 'true' - - if(System.getenv("CONTAINER_FILTER")) { - environment 'CONTAINER_FILTER', System.getenv("CONTAINER_FILTER") - } + environment 'CONTAINER_FILTER', System.getenv("CONTAINER_FILTER") useJUnitPlatform() From 8e07752703740a90f20669810b8310d2d7b6a114 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 10:59:17 +0200 Subject: [PATCH 12/18] fix mac build --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 2181f9e7..45432eb4 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -42,7 +42,7 @@ jobs: - name: Setup docker (missing on MacOS) if: runner.os == 'macos' run: | - brew install docker + brew install docker colima docker-buildx colima start --network-address colima ls # For testcontainers to find the Colima socket From a79c1db6b62400f64c3fed117a7c40d8ddf7caa0 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 11:48:35 +0200 Subject: [PATCH 13/18] fix mac build --- .github/workflows/build.yaml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 45432eb4..a2e6b9cb 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -15,10 +15,16 @@ jobs: - uses: actions/checkout@v3 - id: set-matrix run: | - matrix=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"], os: ["ubuntu-latest"]}' -c ) - # matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $version[-1], os: "macos-latest"}]}' -c ) - - matrix=$( echo $matrix | jq '.os as $os | .version as $version | {version: [$version[-1]], os: ["macos-13"]}' -c ) + # Full matrix + # ubuntu_versions=$( cat k8s-versions.json | jq '{version: [keys[] as $k | .[$k].versions[] | .k8s as $v | "\($k) \($v)"], os: ["ubuntu-latest"]}' -c ) + # macos_versions=$(cat k8s-versions.json | jq '{ version: [to_entries[] as $k | "\($k.key) \($k.value.versions[-1].k8s)"]}') + # matrix=$( echo $ubuntu_versions | jq --argjson macos_versions "$(echo -n $macos_versions)" '.os as $os | .version as $version | {version: $version, os: $os, include: [{version: $macos_versions.version, os: "macos-13"}]}' -c ) + + # echo $matrix + # echo "::set-output name=matrix::$matrix" + + # MacOs Single Test + matrix='{"version":"ApiServerContainer 1.29.1","os":["macos-13"]}' echo $matrix echo "::set-output name=matrix::$matrix" From 6b17bf6ad360e71c1fc157b470e381451f0dc218 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 11:55:46 +0200 Subject: [PATCH 14/18] fix mac build --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index a2e6b9cb..92af65e3 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -24,7 +24,7 @@ jobs: # echo "::set-output name=matrix::$matrix" # MacOs Single Test - matrix='{"version":"ApiServerContainer 1.29.1","os":["macos-13"]}' + matrix=$( echo '{"version":"ApiServerContainer 1.30.0","os":["macos-13"]}' | jq '.') echo $matrix echo "::set-output name=matrix::$matrix" From ab11f9cd840ca0c747bb2f7311a607a5106f0851 Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 11:58:09 +0200 Subject: [PATCH 15/18] fix mac build --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 92af65e3..f3c2cc96 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -24,7 +24,7 @@ jobs: # echo "::set-output name=matrix::$matrix" # MacOs Single Test - matrix=$( echo '{"version":"ApiServerContainer 1.30.0","os":["macos-13"]}' | jq '.') + matrix=$( echo '{"version":"ApiServerContainer 1.30.0","os":["macos-13"]}' | jq -c '.') echo $matrix echo "::set-output name=matrix::$matrix" From 93900e417668f1a68ac45eaa013ba9742d83bb5d Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 12:00:59 +0200 Subject: [PATCH 16/18] fix mac build --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f3c2cc96..a2df2eeb 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -24,7 +24,7 @@ jobs: # echo "::set-output name=matrix::$matrix" # MacOs Single Test - matrix=$( echo '{"version":"ApiServerContainer 1.30.0","os":["macos-13"]}' | jq -c '.') + matrix=$( echo '{"version":["ApiServerContainer 1.30.0"],"os":["macos-13"]}' | jq -c '.') echo $matrix echo "::set-output name=matrix::$matrix" From 61eeb72fc1e02ea12a8388eb993a3bfa2f93287e Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 12:23:59 +0200 Subject: [PATCH 17/18] fix mac build --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index a2df2eeb..431aa8e6 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -24,7 +24,7 @@ jobs: # echo "::set-output name=matrix::$matrix" # MacOs Single Test - matrix=$( echo '{"version":["ApiServerContainer 1.30.0"],"os":["macos-13"]}' | jq -c '.') + matrix=$( echo '{"version":["ApiServerContainer 1.30.0"],"os":["macos-12"]}' | jq -c '.') echo $matrix echo "::set-output name=matrix::$matrix" From c2ff2cb568188001fe2487c26700fb52748a031c Mon Sep 17 00:00:00 2001 From: Rob Lang Date: Sat, 25 May 2024 16:12:50 +0200 Subject: [PATCH 18/18] fixes gradle env-var interpretation issue on macos --- build.gradle | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 5288507b..d6db532c 100644 --- a/build.gradle +++ b/build.gradle @@ -55,7 +55,10 @@ test { systemProperty "kubernetes.disable.autoConfig", "true" environment 'TESTCONTAINERS_REUSE_ENABLE', 'true' - environment 'CONTAINER_FILTER', System.getenv("CONTAINER_FILTER") + + if(System.getenv("CONTAINER_FILTER")) { + environment 'CONTAINER_FILTER', System.getenv("CONTAINER_FILTER") + } useJUnitPlatform()