// Generated from kubernetes/pkg/kubelet/apis/podresources/v1alpha1/api.proto
// by removing the 'gogoproto' dependencies.
// To regenerate api_pb2.py and api_pb2_grpc.py use:
//    python -m grpc_tools.protoc -I./  --python_out=. --grpc_python_out=. kuryr_kubernetes/pod_resources/api.proto

syntax = 'proto3';

package v1alpha1;

// PodResourcesLister is a service provided by the kubelet that provides information about the
// node resources consumed by pods and containers on the node
service PodResourcesLister {
    rpc List(ListPodResourcesRequest) returns (ListPodResourcesResponse) {}
}

// ListPodResourcesRequest is the request made to the PodResourcesLister service
message ListPodResourcesRequest {}

// ListPodResourcesResponse is the response returned by List function
message ListPodResourcesResponse {
    repeated PodResources pod_resources = 1;
}

// PodResources contains information about the node resources assigned to a pod
message PodResources {
    string name = 1;
    string namespace = 2;
    repeated ContainerResources containers = 3;
}

// ContainerResources contains information about the resources assigned to a container
message ContainerResources {
    string name = 1;
    repeated ContainerDevices devices = 2;
}

// ContainerDevices contains information about the devices assigned to a container
message ContainerDevices {
    string resource_name = 1;
    repeated string device_ids = 2;
}
