diff --git a/CHANGELOG.md b/CHANGELOG.md index 8ffa646..9662fe3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +### 0.13.3 (2024-Dec-29) + +* use newer images for e2e tests +* print docker and docker-compose version at the start of a dojo run +* print debug output about local env vars + ### 0.13.2 (2024-Dec-29) * fix the automated GitHub release diff --git a/Dojofile.e2e-alpine b/Dojofile.e2e-alpine index 80c1baf..5b31af0 100644 --- a/Dojofile.e2e-alpine +++ b/Dojofile.e2e-alpine @@ -1,2 +1,2 @@ -DOJO_DOCKER_IMAGE="kudulab/inception-dojo:alpine-0.6.1" +DOJO_DOCKER_IMAGE="kudulab/inception-dojo:alpine-0.7.0" DOJO_DOCKER_OPTIONS="--privileged" diff --git a/Dojofile.e2e-ubuntu b/Dojofile.e2e-ubuntu index d750656..a68f039 100644 --- a/Dojofile.e2e-ubuntu +++ b/Dojofile.e2e-ubuntu @@ -1,2 +1,2 @@ -DOJO_DOCKER_IMAGE="kudulab/inception-dojo:ubuntu-0.6.1" +DOJO_DOCKER_IMAGE="kudulab/inception-dojo:ubuntu-0.7.0" DOJO_DOCKER_OPTIONS="--privileged" diff --git a/docker_compose_driver.go b/docker_compose_driver.go index 78bceb4..ccd0801 100644 --- a/docker_compose_driver.go +++ b/docker_compose_driver.go @@ -400,6 +400,17 @@ func checkIfAnyContainerFailed(nonDefaultContainerInfos []*ContainerInfo, defaul return anyContainerFailed } +func (d DockerComposeDriver) PrintVersion() { + version_cmd := "docker-compose --version" + stdout, stderr, exitStatus, _ := d.ShellService.RunGetOutput(version_cmd, true) + if exitStatus != 0 { + cmdInfo := cmdInfoToString(version_cmd, stdout, stderr, exitStatus) + d.Logger.Log("debug", cmdInfo) + } else { + d.Logger.Log("info", stdout) + } +} + func (dc DockerComposeDriver) HandleRun(mergedConfig Config, runID string, envService EnvServiceInterface) int { warnGeneral(dc.FileService, mergedConfig, envService, dc.Logger) envFile, envFileMultiLine, envFileBashFunctions := getEnvFilePaths(runID, mergedConfig.Test) diff --git a/docker_driver.go b/docker_driver.go index 9786072..29f1214 100644 --- a/docker_driver.go +++ b/docker_driver.go @@ -66,6 +66,17 @@ func (d DockerDriver) ConstructDockerRunCmd(config Config, envFilePath string, e return cmd } +func (d DockerDriver) PrintVersion() { + version_cmd := "docker --version" + stdout, stderr, exitStatus, _ := d.ShellService.RunGetOutput(version_cmd, true) + if exitStatus != 0 { + cmdInfo := cmdInfoToString(version_cmd, stdout, stderr, exitStatus) + d.Logger.Log("debug", cmdInfo) + } else { + d.Logger.Log("info", stdout) + } +} + func (d DockerDriver) HandleRun(mergedConfig Config, runID string, envService EnvServiceInterface) int { warnGeneral(d.FileService, mergedConfig, envService, d.Logger) envFile, envFileMultiLine, envFileBashFunctions := getEnvFilePaths(runID, mergedConfig.Test) diff --git a/driver.go b/driver.go index 395a2a7..75ebe5b 100644 --- a/driver.go +++ b/driver.go @@ -3,6 +3,7 @@ package main import "fmt" type DojoDriverInterface interface { + PrintVersion() HandleRun(mergedConfig Config, runID string, envService EnvServiceInterface) int CleanAfterRun(mergedConfig Config, runID string) int HandlePull(mergedConfig Config) int @@ -27,4 +28,4 @@ func warnGeneral(fileService FileServiceInterface, config Config, envService Env if envService.IsCurrentUserRoot() { logger.Log("warn", "Current user is root, which is not recommended") } -} \ No newline at end of file +} diff --git a/main.go b/main.go index 93bbe79..3bba82a 100644 --- a/main.go +++ b/main.go @@ -100,6 +100,7 @@ func main() { // set the DOJO_LOG_LEVEL now, // so that its value is preserved to docker containers envService.AddVariable(fmt.Sprintf("DOJO_LOG_LEVEL=%s", mergedConfig.LogLevel)) + logger.Log("debug", fmt.Sprintf("Local enviroment variables: %s", envService.GetVariables())) shellService.SetEnvironment(envService.GetVariables()) @@ -119,6 +120,8 @@ func main() { // main work goroutine go func() { + // print the version of docker or docker-compose + driver.PrintVersion() // run and stop the containers exitstatus := driver.HandleRun(mergedConfig, runID, envService) doneChannel <- exitstatus diff --git a/test/test-files/DirWithUpperCaseLetters/itest-dc.yaml b/test/test-files/DirWithUpperCaseLetters/itest-dc.yaml index 1b49e34..3236920 100644 --- a/test/test-files/DirWithUpperCaseLetters/itest-dc.yaml +++ b/test/test-files/DirWithUpperCaseLetters/itest-dc.yaml @@ -1,4 +1,3 @@ -version: '2.2' services: default: # this option is needed to make default docker container preserve signals, @@ -19,4 +18,4 @@ services: # short-running command # command: ["true"] # long running command - command: ["while true; do sleep 1d; done;"] \ No newline at end of file + command: ["while true; do sleep 1d; done;"] diff --git a/version.go b/version.go index ff8fa7e..02b4d11 100644 --- a/version.go +++ b/version.go @@ -1,3 +1,3 @@ package main -const DojoVersion = "0.13.2" +const DojoVersion = "0.13.3"