diff --git a/integration-cli/docker_cli_inspect_test.go b/integration-cli/docker_cli_inspect_test.go index 0fe9106585..1daabeac5b 100644 --- a/integration-cli/docker_cli_inspect_test.go +++ b/integration-cli/docker_cli_inspect_test.go @@ -42,8 +42,7 @@ func (s *DockerCLIInspectSuite) TestInspectImage(c *testing.T) { // fails, fix the difference in the image serialization instead of // updating this hash. imageTestID := "sha256:11f64303f0f7ffdc71f001788132bca5346831939a956e3e975c93267d89a16d" - usesContainerdSnapshotter := false // TODO(vvoland): Check for feature flag - if usesContainerdSnapshotter { + if containerdSnapshotterEnabled() { // Under containerd ID of the image is the digest of the manifest list. imageTestID = "sha256:e43ca824363c5c56016f6ede3a9035afe0e9bd43333215e0b0bde6193969725d" } diff --git a/integration-cli/requirements_test.go b/integration-cli/requirements_test.go index 3c4e194781..c2b16fc2f8 100644 --- a/integration-cli/requirements_test.go +++ b/integration-cli/requirements_test.go @@ -10,6 +10,7 @@ import ( "testing" "time" + "github.com/containerd/containerd/plugin" "github.com/docker/docker/api/types" "github.com/docker/docker/api/types/swarm" "github.com/docker/docker/api/types/versions" @@ -99,6 +100,17 @@ func Devicemapper() bool { return strings.HasPrefix(testEnv.DaemonInfo.Driver, "devicemapper") } +// containerdSnapshotterEnabled checks if the daemon in the test-environment is +// configured with containerd-snapshotters enabled. +func containerdSnapshotterEnabled() bool { + for _, v := range testEnv.DaemonInfo.DriverStatus { + if v[0] == "driver-type" { + return v[1] == string(plugin.SnapshotPlugin) + } + } + return false +} + func IPv6() bool { cmd := exec.Command("test", "-f", "/proc/net/if_inet6") return cmd.Run() != nil