public override Task <GetPluginCapabilitiesResponse> GetPluginCapabilities(GetPluginCapabilitiesRequest request, ServerCallContext context)
        {
            var rsp = new GetPluginCapabilitiesResponse
            {
            };

            switch (_options.Type)
            {
            case HypervCsiDriverType.Controller:
                rsp.Capabilities.Add(new PluginCapability
                {
                    Service = new PluginCapability.Types.Service
                    {
                        Type = ServiceType.ControllerService
                    }
                });
                break;

            case HypervCsiDriverType.Node:

                break;
            }

            //todo add support for single hyperv host with disk migration
            //rsp.Capabilities.Add(new PluginCapability
            //{
            //    Service = new PluginCapability.Types.Service
            //    {
            //        Type = ServiceType.VolumeAccessibilityConstraints
            //    }
            //});

            //rsp.Capabilities.Add(new PluginCapability
            //{
            //    VolumeExpansion = new PluginCapability.Types.VolumeExpansion
            //    {
            //        Type = VolumeExpansionType.Online
            //    }
            //});

            return(Task.FromResult(rsp));
        }
示例#2
0
 public override Task <GetPluginCapabilitiesResponse> GetPluginCapabilities(
     GetPluginCapabilitiesRequest request,
     ServerCallContext context)
 => Task.FromResult(pluginCapabilities);