Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.cloud.parallelstore.v1beta;
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/api/field_behavior.proto";
import "google/api/field_info.proto";
import "google/api/resource.proto";
import "google/longrunning/operations.proto";
import "google/protobuf/empty.proto";
import "google/protobuf/field_mask.proto";
import "google/protobuf/timestamp.proto";
option csharp_namespace = "Google.Cloud.Parallelstore.V1Beta";
option go_package = "cloud.google.com/go/parallelstore/apiv1beta/parallelstorepb;parallelstorepb";
option java_multiple_files = true;
option java_outer_classname = "ParallelstoreProto";
option java_package = "com.google.cloud.parallelstore.v1beta";
option php_namespace = "Google\\Cloud\\Parallelstore\\V1beta";
option ruby_package = "Google::Cloud::Parallelstore::V1beta";
option (google.api.resource_definition) = {
type: "compute.googleapis.com/Network"
pattern: "projects/{project}/global/networks/{network}"
};
option (google.api.resource_definition) = {
type: "compute.googleapis.com/Address"
pattern: "projects/{project}/regions/{region}/addresses/{address}"
};
// Service describing handlers for resources
// Configures and manages parallelstore resources.
//
// Parallelstore service.
//
// The `parallelstore.googleapis.com` service implements the parallelstore API
// and defines the following resource model for managing instances:
// * The service works with a collection of cloud projects, named: `/projects/*`
// * Each project has a collection of available locations, named: `/locations/*`
// * Each location has a collection of instances named `/instances/*`.
// * Parallelstore instances are resources of the form:
// `/projects/{project_id}/locations/{location_id}/instances/{instance_id}`
//
// Note that location_id must be a Google Cloud `zone`; for example:
// * `projects/12345/locations/us-central1-c/instances/my-parallelstore-share`
service Parallelstore {
option (google.api.default_host) = "parallelstore.googleapis.com";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Lists Instances in a given project and location.
rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) {
option (google.api.http) = {
get: "/v1beta/{parent=projects/*/locations/*}/instances"
};
option (google.api.method_signature) = "parent";
}
// Gets details of a single Instance.
rpc GetInstance(GetInstanceRequest) returns (Instance) {
option (google.api.http) = {
get: "/v1beta/{name=projects/*/locations/*/instances/*}"
};
option (google.api.method_signature) = "name";
}
// Creates a Parallelstore instance in a given project and location.
rpc CreateInstance(CreateInstanceRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta/{parent=projects/*/locations/*}/instances"
body: "instance"
};
option (google.api.method_signature) = "parent,instance,instance_id";
option (google.longrunning.operation_info) = {
response_type: "Instance"
metadata_type: "OperationMetadata"
};
}
// Updates the parameters of a single Instance.
rpc UpdateInstance(UpdateInstanceRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
patch: "/v1beta/{instance.name=projects/*/locations/*/instances/*}"
body: "instance"
};
option (google.api.method_signature) = "instance,update_mask";
option (google.longrunning.operation_info) = {
response_type: "Instance"
metadata_type: "OperationMetadata"
};
}
// Deletes a single Instance.
rpc DeleteInstance(DeleteInstanceRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
delete: "/v1beta/{name=projects/*/locations/*/instances/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OperationMetadata"
};
}
// ImportData copies data from Cloud Storage to Parallelstore.
rpc ImportData(ImportDataRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta/{name=projects/*/locations/*/instances/*}:importData"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "ImportDataResponse"
metadata_type: "ImportDataMetadata"
};
}
// ExportData copies data from Parallelstore to Cloud Storage
rpc ExportData(ExportDataRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta/{name=projects/*/locations/*/instances/*}:exportData"
body: "*"
};
option (google.longrunning.operation_info) = {
response_type: "ExportDataResponse"
metadata_type: "ExportDataMetadata"
};
}
}
// Type of transfer that occurred.
enum TransferType {
// Zero is an illegal value.
TRANSFER_TYPE_UNSPECIFIED = 0;
// Imports to Parallelstore.
IMPORT = 1;
// Exports from Parallelstore.
EXPORT = 2;
}
// A Parallelstore instance.
message Instance {
option (google.api.resource) = {
type: "parallelstore.googleapis.com/Instance"
pattern: "projects/{project}/locations/{location}/instances/{instance}"
plural: "instances"
singular: "instance"
};
// Represents the different states of a Parallelstore instance.
enum State {
// Not set.
STATE_UNSPECIFIED = 0;
// The instance is being created.
CREATING = 1;
// The instance is available for use.
ACTIVE = 2;
// The instance is being deleted.
DELETING = 3;
// The instance is not usable.
FAILED = 4;
}
// Identifier. The resource name of the instance, in the format
// `projects/{project}/locations/{location}/instances/{instance_id}`
string name = 1 [(google.api.field_behavior) = IDENTIFIER];
// Optional. The description of the instance. 2048 characters or less.
string description = 2 [(google.api.field_behavior) = OPTIONAL];
// Output only. The instance state.
State state = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time when the instance was created.
google.protobuf.Timestamp create_time = 4
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time when the instance was updated.
google.protobuf.Timestamp update_time = 5
[(google.api.field_behavior) = OUTPUT_ONLY];
// Optional. Cloud Labels are a flexible and lightweight mechanism for
// organizing cloud resources into groups that reflect a customer's
// organizational needs and deployment strategies. Cloud Labels can be used to
// filter collections of resources. They can be used to control how resource
// metrics are aggregated. And they can be used as arguments to policy
// management rules (e.g. route, firewall, load balancing, etc.).
//
// * Label keys must be between 1 and 63 characters long and must conform to
// the following regular expression: `[a-z][a-z0-9_-]{0,62}`.
// * Label values must be between 0 and 63 characters long and must conform
// to the regular expression `[a-z0-9_-]{0,63}`.
// * No more than 64 labels can be associated with a given resource.
//
// See https://goo.gl/xmQnxf for more information on and examples of labels.
//
// If you plan to use labels in your own code, please note that additional
// characters may be allowed in the future. Therefore, you are advised to use
// an internal label representation, such as JSON, which doesn't rely upon
// specific characters being disallowed. For example, representing labels
// as the string: name + "_" + value would prove problematic if we were to
// allow "_" in a future release.
map labels = 6 [(google.api.field_behavior) = OPTIONAL];
// Required. Immutable. Storage capacity of Parallelstore instance in
// Gibibytes (GiB).
int64 capacity_gib = 8 [
(google.api.field_behavior) = IMMUTABLE,
(google.api.field_behavior) = REQUIRED
];
// Output only. The version of DAOS software running in the instance
string daos_version = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. List of access_points.
// Contains a list of IPv4 addresses used for client side configuration.
repeated string access_points = 10
[(google.api.field_behavior) = OUTPUT_ONLY];
// Optional. Immutable. The name of the Google Compute Engine
// [VPC network](https://cloud.google.com/vpc/docs/vpc) to which the
// instance is connected.
string network = 11 [
(google.api.field_behavior) = IMMUTABLE,
(google.api.field_behavior) = OPTIONAL,
(google.api.resource_reference) = { type: "compute.googleapis.com/Network" }
];
// Optional. Immutable. Contains the id of the allocated IP address range
// associated with the private service access connection for example,
// "test-default" associated with IP range 10.0.0.0/29. If no range id is
// provided all ranges will be considered.
string reserved_ip_range = 12 [
(google.api.field_behavior) = IMMUTABLE,
(google.api.field_behavior) = OPTIONAL,
(google.api.resource_reference) = { type: "compute.googleapis.com/Address" }
];
// Output only. Immutable. Contains the id of the allocated IP address range
// associated with the private service access connection for example,
// "test-default" associated with IP range 10.0.0.0/29. This field is
// populated by the service and and contains the value currently used by the
// service.
string effective_reserved_ip_range = 14 [
(google.api.field_behavior) = IMMUTABLE,
(google.api.field_behavior) = OUTPUT_ONLY,
(google.api.resource_reference) = { type: "compute.googleapis.com/Address" }
];
}
// Message for requesting list of Instances
message ListInstancesRequest {
// Required. The project and location for which to retrieve instance
// information, in the format `projects/{project_id}/locations/{location}`.
// For Parallelstore locations map to Google Cloud zones, for example
// **us-central1-a**.
// To retrieve instance information for all locations, use "-" for the
// `{location}` value.
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
child_type: "parallelstore.googleapis.com/Instance"
}
];
// Optional. Requested page size. Server may return fewer items than
// requested. If unspecified, server will pick an appropriate default.
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. A token identifying a page of results the server should return.
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
// Optional. Filtering results
string filter = 4 [(google.api.field_behavior) = OPTIONAL];
// Optional. Hint for how to order the results
string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
}
// Message for response to listing Instances
message ListInstancesResponse {
// The list of Parallelstore Instances
repeated Instance instances = 1;
// A token identifying a page of results the server should return.
string next_page_token = 2;
// Locations that could not be reached.
repeated string unreachable = 3;
}
// Request to get an instance's details.
message GetInstanceRequest {
// Required. The instance resource name, in the format
// `projects/{project_id}/locations/{location}/instances/{instance_id}`.
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "parallelstore.googleapis.com/Instance"
}
];
}
// Request for
// [CreateInstance][google.cloud.parallelstore.v1beta.Parallelstore.CreateInstance]
message CreateInstanceRequest {
// Required. The instance's project and location, in the format
// `projects/{project}/locations/{location}`.
// Locations map to Google Cloud zones, for example **us-west1-b**.
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
child_type: "parallelstore.googleapis.com/Instance"
}
];
// Required. The logical name of the Parallelstore instance in the user
// project with the following restrictions:
//
// * Must contain only lowercase letters, numbers, and hyphens.
// * Must start with a letter.
// * Must be between 1-63 characters.
// * Must end with a number or a letter.
// * Must be unique within the customer project / location
string instance_id = 2 [(google.api.field_behavior) = REQUIRED];
// Required. The instance to create.
Instance instance = 3 [(google.api.field_behavior) = REQUIRED];
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and t
// he request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
}
// Message for updating a Instance
message UpdateInstanceRequest {
// Required. Mask of fields to update .Field mask is used to specify the
// fields to be overwritten in the Instance resource by the update. At least
// one path must be supplied in this field. The fields specified in the
// update_mask are relative to the resource, not the full request.
google.protobuf.FieldMask update_mask = 1
[(google.api.field_behavior) = REQUIRED];
// Required. The instance to update
Instance instance = 2 [(google.api.field_behavior) = REQUIRED];
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and t
// he request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
}
// Message for deleting a Instance
message DeleteInstanceRequest {
// Required. Name of the resource
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "parallelstore.googleapis.com/Instance"
}
];
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes after the first request.
//
// For example, consider a situation where you make an initial request and t
// he request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
}
// Represents the metadata of the long-running operation.
message OperationMetadata {
// Output only. The time the operation was created.
google.protobuf.Timestamp create_time = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time the operation finished running.
google.protobuf.Timestamp end_time = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Server-defined resource path for the target of the operation.
string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Name of the verb executed by the operation.
string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Human-readable status of the operation, if any.
string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Identifies whether the user has requested cancellation
// of the operation. Operations that have been cancelled successfully
// have [Operation.error][] value with a
// [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to
// `Code.CANCELLED`.
bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. API version used to start the operation.
string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// Message representing the request importing data from parallelstore to Cloud
// Storage.
message ImportDataRequest {
// The source of the data being imported into the parallelstore instance.
oneof source {
// URI to a Cloud Storage object in format:
// 'gs:///'.
string source_gcs_uri = 2;
}
// The destination of the data being imported into the parallelstore instance.
oneof destination {
// Optional. Root directory path to the Paralellstore filesystem, starting
// with '/'. Sets to '/' if no value is set.
string destination_path = 3 [(google.api.field_behavior) = OPTIONAL];
}
// Required. Name of the resource.
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "parallelstore.googleapis.com/Instance"
}
];
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and t
// he request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
string request_id = 4 [
(google.api.field_info).format = UUID4,
(google.api.field_behavior) = OPTIONAL
];
}
// Message representing the request exporting data from Cloud Storage to
// parallelstore.
message ExportDataRequest {
// The source of the data exported from the parallelstore instance.
oneof source {
// Optional. Root directory path to the Paralellstore filesystem, starting
// with '/'. Sets to '/' if no value is set.
string source_path = 2 [(google.api.field_behavior) = OPTIONAL];
}
// The destination of the data exported from the parallelstore instance.
oneof destination {
// URI to a Cloud Storage object in format:
// 'gs:///'.
string destination_gcs_uri = 3;
}
// Required. Name of the resource.
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "parallelstore.googleapis.com/Instance"
}
];
// Optional. An optional request ID to identify requests. Specify a unique
// request ID so that if you must retry your request, the server will know to
// ignore the request if it has already been completed. The server will
// guarantee that for at least 60 minutes since the first request.
//
// For example, consider a situation where you make an initial request and t
// he request times out. If you make the request again with the same request
// ID, the server can check if original operation with the same request ID
// was received, and if so, will ignore the second request. This prevents
// clients from accidentally creating duplicate commitments.
//
// The request ID must be a valid UUID with the exception that zero UUID is
// not supported (00000000-0000-0000-0000-000000000000).
string request_id = 4 [
(google.api.field_info).format = UUID4,
(google.api.field_behavior) = OPTIONAL
];
}
// ImportDataResponse is the response returned from ImportData rpc.
message ImportDataResponse {}
// ImportDataMetadata contains import data operation metadata
message ImportDataMetadata {
// Contains the data transfer operation metadata.
TransferOperationMetadata operation_metadata = 1;
}
// ExportDataResponse is the response returned from ExportData rpc
message ExportDataResponse {}
// ExportDataMetadata contains export data operation metadata
message ExportDataMetadata {
// Contains the data transfer operation metadata.
TransferOperationMetadata operation_metadata = 1;
}
// Represents the metadata of the long-running operation.
message TransferOperationMetadata {
// Output only. CCFE supplied fields BEGIN
// The time the operation was created.
google.protobuf.Timestamp create_time = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time the operation finished running.
google.protobuf.Timestamp end_time = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Information about the progress of the transfer operation.
TransferCounters counters = 3;
// Required. The origin of the data transfer.
string source = 4 [(google.api.field_behavior) = REQUIRED];
// Required. The destination of the data transfer.
string destination = 5 [(google.api.field_behavior) = REQUIRED];
// The type of transfer occurring.
TransferType transfer_type = 6;
}
// A collection of counters that report the progress of a transfer operation.
message TransferCounters {
// Objects found in the data source that are scheduled to be transferred,
// excluding any that are filtered based on object conditions or skipped due
// to sync.
int64 objects_found = 1;
// Bytes found in the data source that are scheduled to be transferred,
// excluding any that are filtered based on object conditions or skipped due
// to sync.
int64 bytes_found = 2;
// Objects in the data source that are not transferred because they already
// exist in the data destination.
int64 objects_skipped = 3;
// Bytes in the data source that are not transferred because they already
// exist in the data destination.
int64 bytes_skipped = 4;
// Objects that are copied to the data destination.
int64 objects_copied = 5;
// Bytes that are copied to the data destination.
int64 bytes_copied = 6;
}