diff options
Diffstat (limited to 'third_party/googleapis/google/cloud/batch/v1alpha/volume.proto')
| -rw-r--r-- | third_party/googleapis/google/cloud/batch/v1alpha/volume.proto | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/third_party/googleapis/google/cloud/batch/v1alpha/volume.proto b/third_party/googleapis/google/cloud/batch/v1alpha/volume.proto new file mode 100644 index 0000000..b71a62b --- /dev/null +++ b/third_party/googleapis/google/cloud/batch/v1alpha/volume.proto @@ -0,0 +1,90 @@ +// Copyright 2022 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.batch.v1alpha; + +option csharp_namespace = "Google.Cloud.Batch.V1Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/batch/v1alpha;batch"; +option java_multiple_files = true; +option java_outer_classname = "VolumeProto"; +option java_package = "com.google.cloud.batch.v1alpha"; +option objc_class_prefix = "GCB"; +option php_namespace = "Google\\Cloud\\Batch\\V1alpha"; +option ruby_package = "Google::Cloud::Batch::V1alpha"; + +// Volume and mount parameters to be associated with a TaskSpec. A TaskSpec +// might describe zero, one, or multiple volumes to be mounted as part of the +// task. +message Volume { + // The source for the volume. + oneof source { + // An NFS source for the volume (could be a Filestore, for example). + NFS nfs = 1; + + // A persistent disk source for the volume. + PD pd = 2 [deprecated = true]; + + // A Google Cloud Storage source for the volume. + GCS gcs = 3; + + // Device name of an attached disk + string device_name = 6; + } + + // Mount path for the volume, e.g. /mnt/share + string mount_path = 4; + + // Mount options + // For Google Cloud Storage, mount options are the global options supported by + // gcsfuse tool. Batch will use them to mount the volume with the following + // command: + // "gcsfuse [global options] bucket mountpoint". + // For PD, NFS, mount options are these supported by /etc/fstab. Batch will + // use Fstab to mount such volumes. + // https://help.ubuntu.com/community/Fstab + repeated string mount_options = 5; +} + +// Represents an NFS server and remote path: <server>:<remote_path> +message NFS { + // URI of the NFS server, e.g. an IP address. + string server = 1; + + // Remote source path exported from NFS, e.g., "/share". + string remote_path = 2; +} + +// Represents a GCP persistent disk +message PD { + // PD disk name, e.g. pd-1. + string disk = 1; + + // PD device name, e.g. persistent-disk-1. + string device = 2; + + // Whether this is an existing PD. Default is false. If false, i.e., new + // PD, we will format it into ext4 and mount to the given path. If true, i.e., + // existing PD, it should be in ext4 format and we will mount it to the given + // path. + bool existing = 3 [deprecated = true]; +} + +// Represents a Google Cloud Storage volume source config. +message GCS { + // Remote path, either a bucket name or a subdirectory of a bucket, e.g.: + // bucket_name, bucket_name/subdirectory/ + string remote_path = 1; +} |
