Skip to content

Commit

Permalink
Add rpc calls related to peering of storageClusters
Browse files Browse the repository at this point in the history
Signed-off-by: Rewant Soni <[email protected]>
  • Loading branch information
rewantsoni committed Sep 4, 2024
1 parent c04062a commit 5480de3
Showing 1 changed file with 61 additions and 0 deletions.
61 changes: 61 additions & 0 deletions services/provider/proto/provider.proto
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,23 @@ service OCSProvider {

rpc ReportStatus(ReportStatusRequest)
returns (ReportStatusResponse){}

// OnboardStorageClusterPeer RPC call to onboard the StorageClusterPeer to the remote StorageCluster
rpc OnboardStorageClusterPeer(OnboardStorageClusterPeerRequest)
returns (OnboardStorageClusterPeerResponse) {}

// OffboardStorageClusterPeer RPC call to offboard the StorageClusterPeer from the remote StorageCluster
rpc OffboardStorageClusterPeer(OffboardStorageClusterPeerRequest)
returns (OffboardStorageClusterPeerResponse) {}

// AcknowledgeOnboardingStorageClusterPeer RPC call acknowledge the StorageClusterPeer Onboarding
rpc AcknowledgeOnboardingStorageClusterPeer(AcknowledgeOnboardingStorageClusterPeerRequest)
returns (AcknowledgeOnboardingStorageClusterPeerResponse){}

// GetMirroringInfo RPC call to get the mirroring info for connecting block pools from local to remote StorageCluster
rpc GetMirroringInfo(MirroringInfoRequest)
returns (MirroringInfoResponse) {}

}

// OnboardConsumerRequest holds the required information to validate the consumer and create StorageConsumer
Expand Down Expand Up @@ -177,3 +194,47 @@ message ReportStatusResponse{
string desiredConfigHash = 2;

}

// OnboardStorageClusterPeerRequest holds the required information to onboard to remote StorageCluster
message OnboardStorageClusterPeerRequest{
// onboardingTicket authenticates the StorageClusterPeer
string onboardingTicket = 1;
// storageClusterPeerUID is the k8s UID of the StorageClusterPeer on local StorageCluster
string storageClusterPeerUID = 2;
}

// OnboardStorageClusterPeerResponse holds the response for OnboardStorageClusterPeer API request
message OnboardStorageClusterPeerResponse{}

// OffboardStorageClusterPeerRequest holds the required information to offboard from remote StorageCluster.
message OffboardStorageClusterPeerRequest{
// storageClusterPeerUID is the K8s UID of the StorageClusterPeer on local StorageCluster
string storageClusterPeerUID = 1;
}

// OffboardStorageClusterPeerResponse holds the response for the OffboardStorageClusterPeer API request
message OffboardStorageClusterPeerResponse{}

// AcknowledgeOnboardingStorageClusterPeerRequest holds the information required to acknowledge the onboarding
message AcknowledgeOnboardingStorageClusterPeerRequest{
// storageClusterPeerUID is the K8s UID of the StorageClusterPeer on local StorageCluster
string storageClusterPeerUID = 1;
}

// AcknowledgeMirrorPeerOnboardingResponse holds the response for the AcknowledgeOnboardingStorageClusterPeer API request
message AcknowledgeOnboardingStorageClusterPeerResponse{}

// MirroringInfoRequest holds the information required to get config for mirroring block pools on local StorageCluster.
message MirroringInfoRequest{
// storageClusterPeerUID is the K8s UID of the StorageClusterPeer on local StorageCluster
string storageClusterPeerUID = 1;
// BlockPoolNames is a list of BlockPools for mirroring
repeated string BlockPoolNames = 2;
}

// MirroringInfoResponse holds the response for the GetMirroringInfo API request
message MirroringInfoResponse{
// ExternalResource holds the block pool configuration data from remote StorageCluster
repeated ExternalResource externalResource = 1;
}

0 comments on commit 5480de3

Please sign in to comment.