diff --git a/internal/components/setup/compose.go b/internal/components/setup/compose.go index 52acd98..f43d2fd 100644 --- a/internal/components/setup/compose.go +++ b/internal/components/setup/compose.go @@ -32,6 +32,7 @@ import ( "gopkg.in/yaml.v2" "github.com/apache/skywalking-infra-e2e/internal/config" + "github.com/apache/skywalking-infra-e2e/internal/constant" "github.com/apache/skywalking-infra-e2e/internal/logger" "github.com/apache/skywalking-infra-e2e/internal/util" ) @@ -55,6 +56,13 @@ func ComposeSetup(e2eConfig *config.E2EConfig) error { util.ExportEnvVars(profilePath) } + // Disable Ryuk reaper when cleanup.on is "never" so containers survive process exit. + if e2eConfig.Cleanup.On == constant.CleanUpNever { + if err := os.Setenv("TESTCONTAINERS_RYUK_DISABLED", "true"); err != nil { + return fmt.Errorf("failed to disable Ryuk reaper: %v", err) + } + } + // create compose stack identifier := util.GetIdentity() stack, err := compose.NewDockerComposeWith(