csi-test icon indicating copy to clipboard operation
csi-test copied to clipboard

Controller should be optional

Open ktarplee opened this issue 5 years ago • 8 comments

According to the CSI spec, the controller is actually optional. I would like a way to run the tests without assuming the controller exists. Only the NodeServer and IdentityServer are present in my OCI plugin.

From the spec

CONTROLLER_SERVICE indicates that the Plugin provides RPCs for the ControllerService. Plugins SHOULD provide this capability. In rare cases certain plugins MAY wish to omit the ControllerService entirely from their implementation, but such SHOULD NOT be the common case.

I tried adding -ginkgo.focus Node but there are still tests that fail due to calling controller RPCs such as

• Failure [0.002 seconds]
Node Service
/code/oss/csi-test/pkg/sanity/tests.go:44
  NodeStageVolume
  /code/oss/csi-test/pkg/sanity/node.go:424
    should fail when no volume capability is provided [It]
    /code/oss/csi-test/pkg/sanity/node.go:475

    Unexpected error:
        <*status.statusError | 0xc000430c30>: {
            Code: 12,
            Message: "unknown service csi.v1.Controller",
            Details: nil,
            XXX_NoUnkeyedLiteral: {},
            XXX_unrecognized: nil,
            XXX_sizecache: 0,
        }
        rpc error: code = Unimplemented desc = unknown service csi.v1.Controller
    occurred

ktarplee avatar Aug 11 '20 14:08 ktarplee

That's a valid issue. The controller is needed to create volumes that then can be used during the node operations. Another approach for specifying valid volumes will be needed when testing without controller. Patches welcome...

pohly avatar Aug 12 '20 10:08 pohly

Issues go stale after 90d of inactivity. Mark the issue as fresh with /remove-lifecycle stale. Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta. /lifecycle stale

fejta-bot avatar Dec 31 '20 13:12 fejta-bot

Stale issues rot after 30d of inactivity. Mark the issue as fresh with /remove-lifecycle rotten. Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta. /lifecycle rotten

fejta-bot avatar Jan 30 '21 14:01 fejta-bot

Rotten issues close after 30d of inactivity. Reopen the issue with /reopen. Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-contributor-experience at kubernetes/community. /close

fejta-bot avatar Mar 01 '21 15:03 fejta-bot

@fejta-bot: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity. Reopen the issue with /reopen. Mark the issue as fresh with /remove-lifecycle rotten.

Send feedback to sig-contributor-experience at kubernetes/community. /close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

k8s-ci-robot avatar Mar 01 '21 15:03 k8s-ci-robot

I would like to re-open this issue. We also have a case when we don't really use controller service. Also, we don't use grouop controller service. However, we ended up specifying dummy ones to use this testing library for other functionality we have.

cyga avatar Mar 01 '24 11:03 cyga

/reopen

pohly avatar Mar 05 '24 10:03 pohly

@pohly: Reopened this issue.

In response to this:

/reopen

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

k8s-ci-robot avatar Mar 05 '24 10:03 k8s-ci-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Reopen this issue with /reopen
  • Mark this issue as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close not-planned

k8s-triage-robot avatar Apr 04 '24 11:04 k8s-triage-robot

@k8s-triage-robot: Closing this issue, marking it as "Not Planned".

In response to this:

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Reopen this issue with /reopen
  • Mark this issue as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close not-planned

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

k8s-ci-robot avatar Apr 04 '24 11:04 k8s-ci-robot

/reopen

onokatio avatar Nov 26 '25 08:11 onokatio

@onokatio: You can't reopen an issue/PR unless you authored it or you are a collaborator.

In response to this:

/reopen

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

k8s-ci-robot avatar Nov 26 '25 08:11 k8s-ci-robot

It is still problem.

onokatio avatar Nov 26 '25 08:11 onokatio