syntax = "proto3";

package akash.inventory.v1;

import "gogoproto/gogo.proto";
import "akash/inventory/v1/node.proto";
import "akash/inventory/v1/storage.proto";

option go_package = "github.com/akash-network/akash-api/go/inventory/v1";

// Cluster reports inventory across entire cluster
message Cluster {
  option (gogoproto.equal) = false;

  repeated Node nodes = 1 [
    (gogoproto.nullable)     = false,
    (gogoproto.castrepeated) = "Nodes",
    (gogoproto.customname)   = "Nodes",
    (gogoproto.jsontag)      = "nodes",
    (gogoproto.moretags)     = "yaml:\"nodes\""
  ];

  repeated Storage storage = 2 [
    (gogoproto.nullable)     = false,
    (gogoproto.castrepeated) = "ClusterStorage",
    (gogoproto.customname)   = "Storage",
    (gogoproto.jsontag)      = "storage",
    (gogoproto.moretags)     = "yaml:\"storage\""
  ];
}
