mmv1/products/lustre/Instance.yaml (119 lines of code) (raw):

# Copyright 2024 Google Inc. # 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. --- name: Instance description: A Managed Lustre instance base_url: projects/{{project}}/locations/{{location}}/instances update_mask: true self_link: projects/{{project}}/locations/{{location}}/instances/{{instance_id}} create_url: projects/{{project}}/locations/{{location}}/instances?instanceId={{instance_id}} update_verb: PATCH id_format: projects/{{project}}/locations/{{location}}/instances/{{instance_id}} import_format: - projects/{{project}}/locations/{{location}}/instances/{{instance_id}} examples: - name: lustre_instance_basic primary_resource_id: 'instance' vars: name: 'my-instance' address_name: 'my-ip-address-name' network_name: 'my-network' subnetwork_name: 'my-subnetwork' test_vars_overrides: 'network_name': 'acctest.BootstrapSharedServiceNetworkingConnection(t, "default-vpc")' autogen_async: true async: operation: timeouts: insert_minutes: 20 update_minutes: 20 delete_minutes: 20 base_url: '{{op_id}}' actions: - create - delete - update type: OpAsync result: resource_inside_response: true include_project: false autogen_status: SW5zdGFuY2U= parameters: - name: location type: String description: Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. immutable: true url_param_only: true required: true - name: instanceId type: String description: |- Required. The name of the Managed Lustre instance. * 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. immutable: true url_param_only: true required: true properties: - name: state type: String description: |- Output only. The state of the instance. Possible values: STATE_UNSPECIFIED ACTIVE CREATING DELETING UPGRADING REPAIRING STOPPED output: true - name: mountPoint type: String description: Output only. Mount point of the instance in the format `IP_ADDRESS@tcp:/FILESYSTEM`. output: true - name: labels type: KeyValueLabels description: Optional. Labels as key value pairs. - name: capacityGib type: String description: |- Required. The storage capacity of the instance in gibibytes (GiB). Allowed values are from 18000 to 954000, in increments of 9000. required: true - name: createTime type: String description: Output only. Timestamp when the instance was created. output: true - name: updateTime type: String description: Output only. Timestamp when the instance was last updated. output: true - name: description type: String description: Optional. A user-readable description of the instance. - name: gkeSupportEnabled type: Boolean description: |- Optional. Indicates whether you want to enable support for GKE clients. By default, GKE clients are not supported. - name: name type: String description: Identifier. The name of the instance. output: true - name: filesystem type: String description: |- Required. Immutable. The filesystem name for this instance. This name is used by client-side tools, including when mounting the instance. Must be 8 characters or less and may only contain letters and numbers. immutable: true required: true - name: network type: String description: |- Required. Immutable. The full name of the VPC network to which the instance is connected. Must be in the format `projects/{project_id}/global/networks/{network_name}`. immutable: true required: true