Skip to content

critest "runtime should support exec with tty=true and stdin=true" seems flaky on Windows Server 2022 #6652

@TBBle

Description

@TBBle

Description

After #6626 enabled critest on GitHub Actions, I've seen the specific test below fail on main branch a lot, on Windows Server 2022. Looking at the main branch CI builds it feels like it's a one-in-two failure rate, and I felt the same way during development of #6626.

The log for the failing test
[k8s.io] Streaming runtime should support streaming interfaces 
  runtime should support exec with tty=true and stdin=true [Conformance]
  github.com/kubernetes-sigs/cri-tools/pkg/validate/streaming.go:87
[BeforeEach] [k8s.io] Streaming
  github.com/kubernetes-sigs/cri-tools/pkg/framework/framework.go:50
[BeforeEach] [k8s.io] Streaming
  github.com/kubernetes-sigs/cri-tools/pkg/validate/streaming.go:50
[It] runtime should support exec with tty=true and stdin=true [Conformance]
  github.com/kubernetes-sigs/cri-tools/pkg/validate/streaming.go:87
STEP: create a default container
STEP: Get image status for image: k8s.gcr.io/e2e-test-images/busybox:1.29-2
STEP: Create container.
Mar  8 19:03:47.734: INFO: Created container "1eff23091f6da906f5dc6a8ad8582e4233566cf8e1ed4837daf0eb4df1a34452"

STEP: start container
STEP: Start container for containerID: 1eff23091f6da906f5dc6a8ad8582e4233566cf8e1ed4837daf0eb4df1a34452
Mar  8 19:03:48.944: INFO: Started container "1eff23091f6da906f5dc6a8ad8582e4233566cf8e1ed4837daf0eb4df1a34452"

STEP: exec given command in container: 1eff23091f6da906f5dc6a8ad8582e4233566cf8e1ed4837daf0eb4df1a34452
Mar  8 19:03:48.946: INFO: Get exec url: http://127.0.0.1:61319/exec/e8YUFeAD
STEP: check the output of exec
Mar  8 19:03:48.947: INFO: Parse url "http://127.0.0.1:61319/exec/e8YUFeAD" succeed
[AfterEach] runtime should support streaming interfaces
  github.com/kubernetes-sigs/cri-tools/pkg/validate/streaming.go:59
STEP: stop PodSandbox
STEP: delete PodSandbox
[AfterEach] [k8s.io] Streaming
  github.com/kubernetes-sigs/cri-tools/pkg/framework/framework.go:51

+ Failure [7.094 seconds]
[k8s.io] Streaming
github.com/kubernetes-sigs/cri-tools/pkg/framework/framework.go:72
  runtime should support streaming interfaces
  github.com/kubernetes-sigs/cri-tools/pkg/validate/streaming.go:55
    runtime should support exec with tty=true and stdin=true [Conformance] [It]
    github.com/kubernetes-sigs/cri-tools/pkg/validate/streaming.go:87

    The stdout of exec should contain hello
    Expected
        <string>: 
    to contain substring
        <string>: hello

    github.com/kubernetes-sigs/cri-tools/pkg/validate/streaming.go:203
------------------------------

This doesn't seem to happen on the Windows Periodic Tests on main branch, so I fear there's something in the system setup I've overlooked, but I couldn't see anything in the scripts run by the Windows Periodic Tests that leapt out as a difference.

Anyway, apologies to other developers who get undeservedly-❌ CI builds for code that should be ✔.

Steps to reproduce the issue

  1. Submit a PR

Describe the results you received and expected

Expected: GitHub Actions CI build passes consistently.
Actual: GitHub Actions CI build fails one-in-two on the Windows Server 2022 in the "cri-tools critest" stage.

What version of containerd are you using?

main

Any other relevant information

No response

Show configuration if it is related to CRI plugin.

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions