12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- // To regenerate api.pb.go run hack/update-generated-kubelet-plugin-registration.sh
- syntax = 'proto3';
- package pluginregistration;
- import "github.com/gogo/protobuf/gogoproto/gogo.proto";
- option (gogoproto.goproto_stringer_all) = false;
- option (gogoproto.stringer_all) = true;
- option (gogoproto.goproto_getters_all) = true;
- option (gogoproto.marshaler_all) = true;
- option (gogoproto.sizer_all) = true;
- option (gogoproto.unmarshaler_all) = true;
- option (gogoproto.goproto_unrecognized_all) = false;
- // PluginInfo is the message sent from a plugin to the Kubelet pluginwatcher for plugin registration
- message PluginInfo {
- // Type of the Plugin. CSIPlugin or DevicePlugin
- string type = 1;
- // Plugin name that uniquely identifies the plugin for the given plugin type.
- // For DevicePlugin, this is the resource name that the plugin manages and
- // should follow the extended resource name convention.
- // For CSI, this is the CSI driver registrar name.
- string name = 2;
- // Optional endpoint location. If found set by Kubelet component,
- // Kubelet component will use this endpoint for specific requests.
- // This allows the plugin to register using one endpoint and possibly use
- // a different socket for control operations. CSI uses this model to delegate
- // its registration external from the plugin.
- string endpoint = 3;
- // Plugin service API versions the plugin supports.
- // For DevicePlugin, this maps to the deviceplugin API versions the
- // plugin supports at the given socket.
- // The Kubelet component communicating with the plugin should be able
- // to choose any preferred version from this list, or returns an error
- // if none of the listed versions is supported.
- repeated string supported_versions = 4;
- }
- // RegistrationStatus is the message sent from Kubelet pluginwatcher to the plugin for notification on registration status
- message RegistrationStatus {
- // True if plugin gets registered successfully at Kubelet
- bool plugin_registered = 1;
- // Error message in case plugin fails to register, empty string otherwise
- string error = 2;
- }
- // RegistrationStatusResponse is sent by plugin to kubelet in response to RegistrationStatus RPC
- message RegistrationStatusResponse {
- }
- // InfoRequest is the empty request message from Kubelet
- message InfoRequest {
- }
- // Registration is the service advertised by the Plugins.
- service Registration {
- rpc GetInfo(InfoRequest) returns (PluginInfo) {}
- rpc NotifyRegistrationStatus(RegistrationStatus) returns (RegistrationStatusResponse) {}
- }
|