At a minimum, to build and test the library, you'll need the following installed on your machine:
- a JVM
- Docker (Linux), Docker Desktop (Windows or macOS) or Colima (macOS)
Other tools required to build and test the library (including Golang and Zig) will be downloaded automatically by Gradle.
Run all linting and tests with ./gradlew check
.
Run a specific set of tests:
- JVM:
./gradlew jvmTest
- Native macOS (ARM):
./gradlew macosArm64Test
- Native macOS (Intel):
./gradlew macosX64Test
- Native Windows:
./gradle mingwX64Test
- Native Linux:
./gradlew linuxX64Test
Filter tests by setting the kotest_filter_specs
environment variable.
For example: kotest_filter_specs='*DockerClientContainerManagementSpec*' ./gradlew macosArm64Test
-
Structs passed into Golang methods should be named
<method name>Request
, eg.CreateContainerRequest
-
Structs returned from Golang methods should be named
<method name>Response
, and contain a result of type<method name>Result
and an error of typeError
eg.
InspectExec
should return aInspectExecResponse
with a result of typeInspectExecResult