diff --git a/google-cloud-netapp-v1/.owlbot-manifest.json b/google-cloud-netapp-v1/.owlbot-manifest.json index 8a7b5a218eb4..cab4a5c85371 100644 --- a/google-cloud-netapp-v1/.owlbot-manifest.json +++ b/google-cloud-netapp-v1/.owlbot-manifest.json @@ -23,6 +23,7 @@ "lib/google/cloud/netapp/v1/cloud_netapp_service_pb.rb", "lib/google/cloud/netapp/v1/cloud_netapp_service_services_pb.rb", "lib/google/cloud/netapp/v1/common_pb.rb", + "lib/google/cloud/netapp/v1/host_group_pb.rb", "lib/google/cloud/netapp/v1/kms_pb.rb", "lib/google/cloud/netapp/v1/netapp.rb", "lib/google/cloud/netapp/v1/netapp/client.rb", @@ -52,6 +53,7 @@ "proto_docs/google/cloud/netapp/v1/backup_vault.rb", "proto_docs/google/cloud/netapp/v1/cloud_netapp_service.rb", "proto_docs/google/cloud/netapp/v1/common.rb", + "proto_docs/google/cloud/netapp/v1/host_group.rb", "proto_docs/google/cloud/netapp/v1/kms.rb", "proto_docs/google/cloud/netapp/v1/quota_rule.rb", "proto_docs/google/cloud/netapp/v1/replication.rb", @@ -70,6 +72,7 @@ "snippets/netapp/create_backup.rb", "snippets/netapp/create_backup_policy.rb", "snippets/netapp/create_backup_vault.rb", + "snippets/netapp/create_host_group.rb", "snippets/netapp/create_kms_config.rb", "snippets/netapp/create_quota_rule.rb", "snippets/netapp/create_replication.rb", @@ -80,6 +83,7 @@ "snippets/netapp/delete_backup.rb", "snippets/netapp/delete_backup_policy.rb", "snippets/netapp/delete_backup_vault.rb", + "snippets/netapp/delete_host_group.rb", "snippets/netapp/delete_kms_config.rb", "snippets/netapp/delete_quota_rule.rb", "snippets/netapp/delete_replication.rb", @@ -92,6 +96,7 @@ "snippets/netapp/get_backup.rb", "snippets/netapp/get_backup_policy.rb", "snippets/netapp/get_backup_vault.rb", + "snippets/netapp/get_host_group.rb", "snippets/netapp/get_kms_config.rb", "snippets/netapp/get_quota_rule.rb", "snippets/netapp/get_replication.rb", @@ -102,12 +107,14 @@ "snippets/netapp/list_backup_policies.rb", "snippets/netapp/list_backup_vaults.rb", "snippets/netapp/list_backups.rb", + "snippets/netapp/list_host_groups.rb", "snippets/netapp/list_kms_configs.rb", "snippets/netapp/list_quota_rules.rb", "snippets/netapp/list_replications.rb", "snippets/netapp/list_snapshots.rb", "snippets/netapp/list_storage_pools.rb", "snippets/netapp/list_volumes.rb", + "snippets/netapp/restore_backup_files.rb", "snippets/netapp/resume_replication.rb", "snippets/netapp/reverse_replication_direction.rb", "snippets/netapp/revert_volume.rb", @@ -118,6 +125,7 @@ "snippets/netapp/update_backup.rb", "snippets/netapp/update_backup_policy.rb", "snippets/netapp/update_backup_vault.rb", + "snippets/netapp/update_host_group.rb", "snippets/netapp/update_kms_config.rb", "snippets/netapp/update_quota_rule.rb", "snippets/netapp/update_replication.rb", diff --git a/google-cloud-netapp-v1/gapic_metadata.json b/google-cloud-netapp-v1/gapic_metadata.json index 59c3a03eea02..df80f1185a10 100644 --- a/google-cloud-netapp-v1/gapic_metadata.json +++ b/google-cloud-netapp-v1/gapic_metadata.json @@ -309,6 +309,36 @@ "methods": [ "delete_quota_rule" ] + }, + "RestoreBackupFiles": { + "methods": [ + "restore_backup_files" + ] + }, + "ListHostGroups": { + "methods": [ + "list_host_groups" + ] + }, + "GetHostGroup": { + "methods": [ + "get_host_group" + ] + }, + "CreateHostGroup": { + "methods": [ + "create_host_group" + ] + }, + "UpdateHostGroup": { + "methods": [ + "update_host_group" + ] + }, + "DeleteHostGroup": { + "methods": [ + "delete_host_group" + ] } } } diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/backup_vault_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/backup_vault_pb.rb index d9e9e1f06342..7235d278ecee 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/backup_vault_pb.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/backup_vault_pb.rb @@ -10,7 +10,7 @@ require 'google/protobuf/timestamp_pb' -descriptor_data = "\n)google/cloud/netapp/v1/backup_vault.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x91\n\n\x0b\x42\x61\x63kupVault\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12=\n\x05state\x18\x02 \x01(\x0e\x32).google.cloud.netapp.v1.BackupVault.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12?\n\x06labels\x18\x05 \x03(\x0b\x32/.google.cloud.netapp.v1.BackupVault.LabelsEntry\x12S\n\x11\x62\x61\x63kup_vault_type\x18\x06 \x01(\x0e\x32\x33.google.cloud.netapp.v1.BackupVault.BackupVaultTypeB\x03\xe0\x41\x01\x12@\n\rsource_region\x18\x07 \x01(\tB)\xe0\x41\x03\xfa\x41#\n!locations.googleapis.com/Location\x12@\n\rbackup_region\x18\x08 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!locations.googleapis.com/Location\x12\x46\n\x13source_backup_vault\x18\t \x01(\tB)\xe0\x41\x03\xfa\x41#\n!netapp.googleapis.com/BackupVault\x12K\n\x18\x64\x65stination_backup_vault\x18\n \x01(\tB)\xe0\x41\x03\xfa\x41#\n!netapp.googleapis.com/BackupVault\x12_\n\x17\x62\x61\x63kup_retention_policy\x18\x0b \x01(\x0b\x32\x39.google.cloud.netapp.v1.BackupVault.BackupRetentionPolicyB\x03\xe0\x41\x01\x1a\xe4\x01\n\x15\x42\x61\x63kupRetentionPolicy\x12\x33\n&backup_minimum_enforced_retention_days\x18\x01 \x01(\x05\x42\x03\xe0\x41\x02\x12#\n\x16\x64\x61ily_backup_immutable\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12$\n\x17weekly_backup_immutable\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12%\n\x18monthly_backup_immutable\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12$\n\x17manual_backup_immutable\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"^\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x0c\n\x08UPDATING\x10\x05\"U\n\x0f\x42\x61\x63kupVaultType\x12!\n\x1d\x42\x41\x43KUP_VAULT_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tIN_REGION\x10\x01\x12\x10\n\x0c\x43ROSS_REGION\x10\x02:\x87\x01\xea\x41\x83\x01\n!netapp.googleapis.com/BackupVault\x12\x43projects/{project}/locations/{location}/backupVaults/{backup_vault}*\x0c\x62\x61\x63kupVaults2\x0b\x62\x61\x63kupVault\"P\n\x15GetBackupVaultRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/BackupVault\"\x9d\x01\n\x17ListBackupVaultsRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/BackupVault\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x10\n\x08order_by\x18\x04 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"\x84\x01\n\x18ListBackupVaultsResponse\x12:\n\rbackup_vaults\x18\x01 \x03(\x0b\x32#.google.cloud.netapp.v1.BackupVault\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\xb3\x01\n\x18\x43reateBackupVaultRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/BackupVault\x12\x1c\n\x0f\x62\x61\x63kup_vault_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12>\n\x0c\x62\x61\x63kup_vault\x18\x03 \x01(\x0b\x32#.google.cloud.netapp.v1.BackupVaultB\x03\xe0\x41\x02\"S\n\x18\x44\x65leteBackupVaultRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/BackupVault\"\x90\x01\n\x18UpdateBackupVaultRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12>\n\x0c\x62\x61\x63kup_vault\x18\x02 \x01(\x0b\x32#.google.cloud.netapp.v1.BackupVaultB\x03\xe0\x41\x02\x42\xb2\x01\n\x1a\x63om.google.cloud.netapp.v1B\x10\x42\x61\x63kupVaultProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" +descriptor_data = "\n)google/cloud/netapp/v1/backup_vault.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xfe\x0c\n\x0b\x42\x61\x63kupVault\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12=\n\x05state\x18\x02 \x01(\x0e\x32).google.cloud.netapp.v1.BackupVault.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12?\n\x06labels\x18\x05 \x03(\x0b\x32/.google.cloud.netapp.v1.BackupVault.LabelsEntry\x12S\n\x11\x62\x61\x63kup_vault_type\x18\x06 \x01(\x0e\x32\x33.google.cloud.netapp.v1.BackupVault.BackupVaultTypeB\x03\xe0\x41\x01\x12@\n\rsource_region\x18\x07 \x01(\tB)\xe0\x41\x03\xfa\x41#\n!locations.googleapis.com/Location\x12@\n\rbackup_region\x18\x08 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!locations.googleapis.com/Location\x12\x46\n\x13source_backup_vault\x18\t \x01(\tB)\xe0\x41\x03\xfa\x41#\n!netapp.googleapis.com/BackupVault\x12K\n\x18\x64\x65stination_backup_vault\x18\n \x01(\tB)\xe0\x41\x03\xfa\x41#\n!netapp.googleapis.com/BackupVault\x12_\n\x17\x62\x61\x63kup_retention_policy\x18\x0b \x01(\x0b\x32\x39.google.cloud.netapp.v1.BackupVault.BackupRetentionPolicyB\x03\xe0\x41\x01\x12;\n\nkms_config\x18\x0c \x01(\tB\'\xe0\x41\x01\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\x12R\n\x10\x65ncryption_state\x18\r \x01(\x0e\x32\x33.google.cloud.netapp.v1.BackupVault.EncryptionStateB\x03\xe0\x41\x03\x12\'\n\x1a\x62\x61\x63kups_crypto_key_version\x18\x0e \x01(\tB\x03\xe0\x41\x03\x1a\xe4\x01\n\x15\x42\x61\x63kupRetentionPolicy\x12\x33\n&backup_minimum_enforced_retention_days\x18\x01 \x01(\x05\x42\x03\xe0\x41\x02\x12#\n\x16\x64\x61ily_backup_immutable\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12$\n\x17weekly_backup_immutable\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12%\n\x18monthly_backup_immutable\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12$\n\x17manual_backup_immutable\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"^\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x12\x0c\n\x08UPDATING\x10\x05\"U\n\x0f\x42\x61\x63kupVaultType\x12!\n\x1d\x42\x41\x43KUP_VAULT_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tIN_REGION\x10\x01\x12\x10\n\x0c\x43ROSS_REGION\x10\x02\"\xb0\x01\n\x0f\x45ncryptionState\x12 \n\x1c\x45NCRYPTION_STATE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x45NCRYPTION_STATE_PENDING\x10\x01\x12\x1e\n\x1a\x45NCRYPTION_STATE_COMPLETED\x10\x02\x12 \n\x1c\x45NCRYPTION_STATE_IN_PROGRESS\x10\x03\x12\x1b\n\x17\x45NCRYPTION_STATE_FAILED\x10\x04:\x87\x01\xea\x41\x83\x01\n!netapp.googleapis.com/BackupVault\x12\x43projects/{project}/locations/{location}/backupVaults/{backup_vault}*\x0c\x62\x61\x63kupVaults2\x0b\x62\x61\x63kupVault\"P\n\x15GetBackupVaultRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/BackupVault\"\x9d\x01\n\x17ListBackupVaultsRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/BackupVault\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x10\n\x08order_by\x18\x04 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"\x84\x01\n\x18ListBackupVaultsResponse\x12:\n\rbackup_vaults\x18\x01 \x03(\x0b\x32#.google.cloud.netapp.v1.BackupVault\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\xb3\x01\n\x18\x43reateBackupVaultRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/BackupVault\x12\x1c\n\x0f\x62\x61\x63kup_vault_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12>\n\x0c\x62\x61\x63kup_vault\x18\x03 \x01(\x0b\x32#.google.cloud.netapp.v1.BackupVaultB\x03\xe0\x41\x02\"S\n\x18\x44\x65leteBackupVaultRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/BackupVault\"\x90\x01\n\x18UpdateBackupVaultRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12>\n\x0c\x62\x61\x63kup_vault\x18\x02 \x01(\x0b\x32#.google.cloud.netapp.v1.BackupVaultB\x03\xe0\x41\x02\x42\xb2\x01\n\x1a\x63om.google.cloud.netapp.v1B\x10\x42\x61\x63kupVaultProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool @@ -46,6 +46,7 @@ module V1 BackupVault::BackupRetentionPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.BackupVault.BackupRetentionPolicy").msgclass BackupVault::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.BackupVault.State").enummodule BackupVault::BackupVaultType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.BackupVault.BackupVaultType").enummodule + BackupVault::EncryptionState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.BackupVault.EncryptionState").enummodule GetBackupVaultRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.GetBackupVaultRequest").msgclass ListBackupVaultsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.ListBackupVaultsRequest").msgclass ListBackupVaultsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.ListBackupVaultsResponse").msgclass diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_pb.rb index 828aea3d274e..4e5906aabcad 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_pb.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_pb.rb @@ -12,6 +12,7 @@ require 'google/cloud/netapp/v1/backup_pb' require 'google/cloud/netapp/v1/backup_policy_pb' require 'google/cloud/netapp/v1/backup_vault_pb' +require 'google/cloud/netapp/v1/host_group_pb' require 'google/cloud/netapp/v1/kms_pb' require 'google/cloud/netapp/v1/quota_rule_pb' require 'google/cloud/netapp/v1/replication_pb' @@ -23,7 +24,7 @@ require 'google/protobuf/timestamp_pb' -descriptor_data = "\n1google/cloud/netapp/v1/cloud_netapp_service.proto\x12\x16google.cloud.netapp.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/netapp/v1/active_directory.proto\x1a#google/cloud/netapp/v1/backup.proto\x1a*google/cloud/netapp/v1/backup_policy.proto\x1a)google/cloud/netapp/v1/backup_vault.proto\x1a google/cloud/netapp/v1/kms.proto\x1a\'google/cloud/netapp/v1/quota_rule.proto\x1a(google/cloud/netapp/v1/replication.proto\x1a%google/cloud/netapp/v1/snapshot.proto\x1a)google/cloud/netapp/v1/storage_pool.proto\x1a#google/cloud/netapp/v1/volume.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x80\x02\n\x11OperationMetadata\x12\x34\n\x0b\x63reate_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x06target\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x11\n\x04verb\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x1b\n\x0estatus_message\x18\x05 \x01(\tB\x03\xe0\x41\x03\x12#\n\x16requested_cancellation\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03\x12\x18\n\x0b\x61pi_version\x18\x07 \x01(\tB\x03\xe0\x41\x03\x32\x91\x64\n\x06NetApp\x12\xb8\x01\n\x10ListStoragePools\x12/.google.cloud.netapp.v1.ListStoragePoolsRequest\x1a\x30.google.cloud.netapp.v1.ListStoragePoolsResponse\"A\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{parent=projects/*/locations/*}/storagePools\x12\xf6\x01\n\x11\x43reateStoragePool\x12\x30.google.cloud.netapp.v1.CreateStoragePoolRequest\x1a\x1d.google.longrunning.Operation\"\x8f\x01\xca\x41 \n\x0bStoragePool\x12\x11OperationMetadata\xda\x41#parent,storage_pool,storage_pool_id\x82\xd3\xe4\x93\x02@\"0/v1/{parent=projects/*/locations/*}/storagePools:\x0cstorage_pool\x12\xa5\x01\n\x0eGetStoragePool\x12-.google.cloud.netapp.v1.GetStoragePoolRequest\x1a#.google.cloud.netapp.v1.StoragePool\"?\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{name=projects/*/locations/*/storagePools/*}\x12\xf8\x01\n\x11UpdateStoragePool\x12\x30.google.cloud.netapp.v1.UpdateStoragePoolRequest\x1a\x1d.google.longrunning.Operation\"\x91\x01\xca\x41 \n\x0bStoragePool\x12\x11OperationMetadata\xda\x41\x18storage_pool,update_mask\x82\xd3\xe4\x93\x02M2=/v1/{storage_pool.name=projects/*/locations/*/storagePools/*}:\x0cstorage_pool\x12\xd2\x01\n\x11\x44\x65leteStoragePool\x12\x30.google.cloud.netapp.v1.DeleteStoragePoolRequest\x1a\x1d.google.longrunning.Operation\"l\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32*0/v1/{name=projects/*/locations/*/storagePools/*}\x12\xf6\x01\n\x18ValidateDirectoryService\x12\x37.google.cloud.netapp.v1.ValidateDirectoryServiceRequest\x1a\x1d.google.longrunning.Operation\"\x81\x01\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02N\"I/v1/{name=projects/*/locations/*/storagePools/*}:validateDirectoryService:\x01*\x12\xd7\x01\n\x17SwitchActiveReplicaZone\x12\x36.google.cloud.netapp.v1.SwitchActiveReplicaZoneRequest\x1a\x1d.google.longrunning.Operation\"e\xca\x41 \n\x0bStoragePool\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02<\"7/v1/{name=projects/*/locations/*/storagePools/*}:switch:\x01*\x12\xa4\x01\n\x0bListVolumes\x12*.google.cloud.netapp.v1.ListVolumesRequest\x1a+.google.cloud.netapp.v1.ListVolumesResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/locations/*}/volumes\x12\x91\x01\n\tGetVolume\x12(.google.cloud.netapp.v1.GetVolumeRequest\x1a\x1e.google.cloud.netapp.v1.Volume\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/volumes/*}\x12\xcf\x01\n\x0c\x43reateVolume\x12+.google.cloud.netapp.v1.CreateVolumeRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41\x1b\n\x06Volume\x12\x11OperationMetadata\xda\x41\x17parent,volume,volume_id\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/locations/*}/volumes:\x06volume\x12\xd1\x01\n\x0cUpdateVolume\x12+.google.cloud.netapp.v1.UpdateVolumeRequest\x1a\x1d.google.longrunning.Operation\"u\xca\x41\x1b\n\x06Volume\x12\x11OperationMetadata\xda\x41\x12volume,update_mask\x82\xd3\xe4\x93\x02<22/v1/{volume.name=projects/*/locations/*/volumes/*}:\x06volume\x12\xc3\x01\n\x0c\x44\x65leteVolume\x12+.google.cloud.netapp.v1.DeleteVolumeRequest\x1a\x1d.google.longrunning.Operation\"g\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/locations/*/volumes/*}\x12\xb7\x01\n\x0cRevertVolume\x12+.google.cloud.netapp.v1.RevertVolumeRequest\x1a\x1d.google.longrunning.Operation\"[\xca\x41\x1b\n\x06Volume\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x37\"2/v1/{name=projects/*/locations/*/volumes/*}:revert:\x01*\x12\xb6\x01\n\rListSnapshots\x12,.google.cloud.netapp.v1.ListSnapshotsRequest\x1a-.google.cloud.netapp.v1.ListSnapshotsResponse\"H\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x39\x12\x37/v1/{parent=projects/*/locations/*/volumes/*}/snapshots\x12\xa3\x01\n\x0bGetSnapshot\x12*.google.cloud.netapp.v1.GetSnapshotRequest\x1a .google.cloud.netapp.v1.Snapshot\"F\xda\x41\x04name\x82\xd3\xe4\x93\x02\x39\x12\x37/v1/{name=projects/*/locations/*/volumes/*/snapshots/*}\x12\xe8\x01\n\x0e\x43reateSnapshot\x12-.google.cloud.netapp.v1.CreateSnapshotRequest\x1a\x1d.google.longrunning.Operation\"\x87\x01\xca\x41\x1d\n\x08Snapshot\x12\x11OperationMetadata\xda\x41\x1bparent,snapshot,snapshot_id\x82\xd3\xe4\x93\x02\x43\"7/v1/{parent=projects/*/locations/*/volumes/*}/snapshots:\x08snapshot\x12\xd3\x01\n\x0e\x44\x65leteSnapshot\x12-.google.cloud.netapp.v1.DeleteSnapshotRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x39*7/v1/{name=projects/*/locations/*/volumes/*/snapshots/*}\x12\xea\x01\n\x0eUpdateSnapshot\x12-.google.cloud.netapp.v1.UpdateSnapshotRequest\x1a\x1d.google.longrunning.Operation\"\x89\x01\xca\x41\x1d\n\x08Snapshot\x12\x11OperationMetadata\xda\x41\x14snapshot,update_mask\x82\xd3\xe4\x93\x02L2@/v1/{snapshot.name=projects/*/locations/*/volumes/*/snapshots/*}:\x08snapshot\x12\xcc\x01\n\x15ListActiveDirectories\x12\x34.google.cloud.netapp.v1.ListActiveDirectoriesRequest\x1a\x35.google.cloud.netapp.v1.ListActiveDirectoriesResponse\"F\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{parent=projects/*/locations/*}/activeDirectories\x12\xb6\x01\n\x12GetActiveDirectory\x12\x31.google.cloud.netapp.v1.GetActiveDirectoryRequest\x1a\'.google.cloud.netapp.v1.ActiveDirectory\"D\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{name=projects/*/locations/*/activeDirectories/*}\x12\x93\x02\n\x15\x43reateActiveDirectory\x12\x34.google.cloud.netapp.v1.CreateActiveDirectoryRequest\x1a\x1d.google.longrunning.Operation\"\xa4\x01\xca\x41$\n\x0f\x41\x63tiveDirectory\x12\x11OperationMetadata\xda\x41+parent,active_directory,active_directory_id\x82\xd3\xe4\x93\x02I\"5/v1/{parent=projects/*/locations/*}/activeDirectories:\x10\x61\x63tive_directory\x12\x95\x02\n\x15UpdateActiveDirectory\x12\x34.google.cloud.netapp.v1.UpdateActiveDirectoryRequest\x1a\x1d.google.longrunning.Operation\"\xa6\x01\xca\x41$\n\x0f\x41\x63tiveDirectory\x12\x11OperationMetadata\xda\x41\x1c\x61\x63tive_directory,update_mask\x82\xd3\xe4\x93\x02Z2F/v1/{active_directory.name=projects/*/locations/*/activeDirectories/*}:\x10\x61\x63tive_directory\x12\xdf\x01\n\x15\x44\x65leteActiveDirectory\x12\x34.google.cloud.netapp.v1.DeleteActiveDirectoryRequest\x1a\x1d.google.longrunning.Operation\"q\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37*5/v1/{name=projects/*/locations/*/activeDirectories/*}\x12\xb0\x01\n\x0eListKmsConfigs\x12-.google.cloud.netapp.v1.ListKmsConfigsRequest\x1a..google.cloud.netapp.v1.ListKmsConfigsResponse\"?\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x30\x12./v1/{parent=projects/*/locations/*}/kmsConfigs\x12\xe8\x01\n\x0f\x43reateKmsConfig\x12..google.cloud.netapp.v1.CreateKmsConfigRequest\x1a\x1d.google.longrunning.Operation\"\x85\x01\xca\x41\x1e\n\tKmsConfig\x12\x11OperationMetadata\xda\x41\x1fparent,kms_config,kms_config_id\x82\xd3\xe4\x93\x02<\"./v1/{parent=projects/*/locations/*}/kmsConfigs:\nkms_config\x12\x9d\x01\n\x0cGetKmsConfig\x12+.google.cloud.netapp.v1.GetKmsConfigRequest\x1a!.google.cloud.netapp.v1.KmsConfig\"=\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30\x12./v1/{name=projects/*/locations/*/kmsConfigs/*}\x12\xea\x01\n\x0fUpdateKmsConfig\x12..google.cloud.netapp.v1.UpdateKmsConfigRequest\x1a\x1d.google.longrunning.Operation\"\x87\x01\xca\x41\x1e\n\tKmsConfig\x12\x11OperationMetadata\xda\x41\x16kms_config,update_mask\x82\xd3\xe4\x93\x02G29/v1/{kms_config.name=projects/*/locations/*/kmsConfigs/*}:\nkms_config\x12\xc2\x01\n\x0e\x45ncryptVolumes\x12-.google.cloud.netapp.v1.EncryptVolumesRequest\x1a\x1d.google.longrunning.Operation\"b\xca\x41\x1e\n\tKmsConfig\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02;\"6/v1/{name=projects/*/locations/*/kmsConfigs/*}:encrypt:\x01*\x12\xb4\x01\n\x0fVerifyKmsConfig\x12..google.cloud.netapp.v1.VerifyKmsConfigRequest\x1a/.google.cloud.netapp.v1.VerifyKmsConfigResponse\"@\x82\xd3\xe4\x93\x02:\"5/v1/{name=projects/*/locations/*/kmsConfigs/*}:verify:\x01*\x12\xcc\x01\n\x0f\x44\x65leteKmsConfig\x12..google.cloud.netapp.v1.DeleteKmsConfigRequest\x1a\x1d.google.longrunning.Operation\"j\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30*./v1/{name=projects/*/locations/*/kmsConfigs/*}\x12\xc2\x01\n\x10ListReplications\x12/.google.cloud.netapp.v1.ListReplicationsRequest\x1a\x30.google.cloud.netapp.v1.ListReplicationsResponse\"K\xda\x41\x06parent\x82\xd3\xe4\x93\x02<\x12:/v1/{parent=projects/*/locations/*/volumes/*}/replications\x12\xaf\x01\n\x0eGetReplication\x12-.google.cloud.netapp.v1.GetReplicationRequest\x1a#.google.cloud.netapp.v1.Replication\"I\xda\x41\x04name\x82\xd3\xe4\x93\x02<\x12:/v1/{name=projects/*/locations/*/volumes/*/replications/*}\x12\xfd\x01\n\x11\x43reateReplication\x12\x30.google.cloud.netapp.v1.CreateReplicationRequest\x1a\x1d.google.longrunning.Operation\"\x96\x01\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\xda\x41!parent,replication,replication_id\x82\xd3\xe4\x93\x02I\":/v1/{parent=projects/*/locations/*/volumes/*}/replications:\x0breplication\x12\xdc\x01\n\x11\x44\x65leteReplication\x12\x30.google.cloud.netapp.v1.DeleteReplicationRequest\x1a\x1d.google.longrunning.Operation\"v\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02<*:/v1/{name=projects/*/locations/*/volumes/*/replications/*}\x12\xff\x01\n\x11UpdateReplication\x12\x30.google.cloud.netapp.v1.UpdateReplicationRequest\x1a\x1d.google.longrunning.Operation\"\x98\x01\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\xda\x41\x17replication,update_mask\x82\xd3\xe4\x93\x02U2F/v1/{replication.name=projects/*/locations/*/volumes/*/replications/*}:\x0breplication\x12\xcf\x01\n\x0fStopReplication\x12..google.cloud.netapp.v1.StopReplicationRequest\x1a\x1d.google.longrunning.Operation\"m\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x44\"?/v1/{name=projects/*/locations/*/volumes/*/replications/*}:stop:\x01*\x12\xd5\x01\n\x11ResumeReplication\x12\x30.google.cloud.netapp.v1.ResumeReplicationRequest\x1a\x1d.google.longrunning.Operation\"o\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x46\"A/v1/{name=projects/*/locations/*/volumes/*/replications/*}:resume:\x01*\x12\xf3\x01\n\x1bReverseReplicationDirection\x12:.google.cloud.netapp.v1.ReverseReplicationDirectionRequest\x1a\x1d.google.longrunning.Operation\"y\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02P\"K/v1/{name=projects/*/locations/*/volumes/*/replications/*}:reverseDirection:\x01*\x12\xdd\x01\n\x10\x45stablishPeering\x12/.google.cloud.netapp.v1.EstablishPeeringRequest\x1a\x1d.google.longrunning.Operation\"y\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02P\"K/v1/{name=projects/*/locations/*/volumes/*/replications/*}:establishPeering:\x01*\x12\xcf\x01\n\x0fSyncReplication\x12..google.cloud.netapp.v1.SyncReplicationRequest\x1a\x1d.google.longrunning.Operation\"m\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x44\"?/v1/{name=projects/*/locations/*/volumes/*/replications/*}:sync:\x01*\x12\xf6\x01\n\x11\x43reateBackupVault\x12\x30.google.cloud.netapp.v1.CreateBackupVaultRequest\x1a\x1d.google.longrunning.Operation\"\x8f\x01\xca\x41 \n\x0b\x42\x61\x63kupVault\x12\x11OperationMetadata\xda\x41#parent,backup_vault,backup_vault_id\x82\xd3\xe4\x93\x02@\"0/v1/{parent=projects/*/locations/*}/backupVaults:\x0c\x62\x61\x63kup_vault\x12\xa5\x01\n\x0eGetBackupVault\x12-.google.cloud.netapp.v1.GetBackupVaultRequest\x1a#.google.cloud.netapp.v1.BackupVault\"?\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{name=projects/*/locations/*/backupVaults/*}\x12\xb8\x01\n\x10ListBackupVaults\x12/.google.cloud.netapp.v1.ListBackupVaultsRequest\x1a\x30.google.cloud.netapp.v1.ListBackupVaultsResponse\"A\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{parent=projects/*/locations/*}/backupVaults\x12\xf8\x01\n\x11UpdateBackupVault\x12\x30.google.cloud.netapp.v1.UpdateBackupVaultRequest\x1a\x1d.google.longrunning.Operation\"\x91\x01\xca\x41 \n\x0b\x42\x61\x63kupVault\x12\x11OperationMetadata\xda\x41\x18\x62\x61\x63kup_vault,update_mask\x82\xd3\xe4\x93\x02M2=/v1/{backup_vault.name=projects/*/locations/*/backupVaults/*}:\x0c\x62\x61\x63kup_vault\x12\xd2\x01\n\x11\x44\x65leteBackupVault\x12\x30.google.cloud.netapp.v1.DeleteBackupVaultRequest\x1a\x1d.google.longrunning.Operation\"l\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32*0/v1/{name=projects/*/locations/*/backupVaults/*}\x12\xdf\x01\n\x0c\x43reateBackup\x12+.google.cloud.netapp.v1.CreateBackupRequest\x1a\x1d.google.longrunning.Operation\"\x82\x01\xca\x41\x1b\n\x06\x42\x61\x63kup\x12\x11OperationMetadata\xda\x41\x17parent,backup,backup_id\x82\xd3\xe4\x93\x02\x44\":/v1/{parent=projects/*/locations/*/backupVaults/*}/backups:\x06\x62\x61\x63kup\x12\xa0\x01\n\tGetBackup\x12(.google.cloud.netapp.v1.GetBackupRequest\x1a\x1e.google.cloud.netapp.v1.Backup\"I\xda\x41\x04name\x82\xd3\xe4\x93\x02<\x12:/v1/{name=projects/*/locations/*/backupVaults/*/backups/*}\x12\xb3\x01\n\x0bListBackups\x12*.google.cloud.netapp.v1.ListBackupsRequest\x1a+.google.cloud.netapp.v1.ListBackupsResponse\"K\xda\x41\x06parent\x82\xd3\xe4\x93\x02<\x12:/v1/{parent=projects/*/locations/*/backupVaults/*}/backups\x12\xd2\x01\n\x0c\x44\x65leteBackup\x12+.google.cloud.netapp.v1.DeleteBackupRequest\x1a\x1d.google.longrunning.Operation\"v\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02<*:/v1/{name=projects/*/locations/*/backupVaults/*/backups/*}\x12\xe1\x01\n\x0cUpdateBackup\x12+.google.cloud.netapp.v1.UpdateBackupRequest\x1a\x1d.google.longrunning.Operation\"\x84\x01\xca\x41\x1b\n\x06\x42\x61\x63kup\x12\x11OperationMetadata\xda\x41\x12\x62\x61\x63kup,update_mask\x82\xd3\xe4\x93\x02K2A/v1/{backup.name=projects/*/locations/*/backupVaults/*/backups/*}:\x06\x62\x61\x63kup\x12\xfe\x01\n\x12\x43reateBackupPolicy\x12\x31.google.cloud.netapp.v1.CreateBackupPolicyRequest\x1a\x1d.google.longrunning.Operation\"\x95\x01\xca\x41!\n\x0c\x42\x61\x63kupPolicy\x12\x11OperationMetadata\xda\x41%parent,backup_policy,backup_policy_id\x82\xd3\xe4\x93\x02\x43\"2/v1/{parent=projects/*/locations/*}/backupPolicies:\rbackup_policy\x12\xaa\x01\n\x0fGetBackupPolicy\x12..google.cloud.netapp.v1.GetBackupPolicyRequest\x1a$.google.cloud.netapp.v1.BackupPolicy\"A\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{name=projects/*/locations/*/backupPolicies/*}\x12\xc0\x01\n\x12ListBackupPolicies\x12\x31.google.cloud.netapp.v1.ListBackupPoliciesRequest\x1a\x32.google.cloud.netapp.v1.ListBackupPoliciesResponse\"C\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{parent=projects/*/locations/*}/backupPolicies\x12\x80\x02\n\x12UpdateBackupPolicy\x12\x31.google.cloud.netapp.v1.UpdateBackupPolicyRequest\x1a\x1d.google.longrunning.Operation\"\x97\x01\xca\x41!\n\x0c\x42\x61\x63kupPolicy\x12\x11OperationMetadata\xda\x41\x19\x62\x61\x63kup_policy,update_mask\x82\xd3\xe4\x93\x02Q2@/v1/{backup_policy.name=projects/*/locations/*/backupPolicies/*}:\rbackup_policy\x12\xd6\x01\n\x12\x44\x65leteBackupPolicy\x12\x31.google.cloud.netapp.v1.DeleteBackupPolicyRequest\x1a\x1d.google.longrunning.Operation\"n\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34*2/v1/{name=projects/*/locations/*/backupPolicies/*}\x12\xba\x01\n\x0eListQuotaRules\x12-.google.cloud.netapp.v1.ListQuotaRulesRequest\x1a..google.cloud.netapp.v1.ListQuotaRulesResponse\"I\xda\x41\x06parent\x82\xd3\xe4\x93\x02:\x12\x38/v1/{parent=projects/*/locations/*/volumes/*}/quotaRules\x12\xa7\x01\n\x0cGetQuotaRule\x12+.google.cloud.netapp.v1.GetQuotaRuleRequest\x1a!.google.cloud.netapp.v1.QuotaRule\"G\xda\x41\x04name\x82\xd3\xe4\x93\x02:\x12\x38/v1/{name=projects/*/locations/*/volumes/*/quotaRules/*}\x12\xf2\x01\n\x0f\x43reateQuotaRule\x12..google.cloud.netapp.v1.CreateQuotaRuleRequest\x1a\x1d.google.longrunning.Operation\"\x8f\x01\xca\x41\x1e\n\tQuotaRule\x12\x11OperationMetadata\xda\x41\x1fparent,quota_rule,quota_rule_id\x82\xd3\xe4\x93\x02\x46\"8/v1/{parent=projects/*/locations/*/volumes/*}/quotaRules:\nquota_rule\x12\xf4\x01\n\x0fUpdateQuotaRule\x12..google.cloud.netapp.v1.UpdateQuotaRuleRequest\x1a\x1d.google.longrunning.Operation\"\x91\x01\xca\x41\x1e\n\tQuotaRule\x12\x11OperationMetadata\xda\x41\x16quota_rule,update_mask\x82\xd3\xe4\x93\x02Q2C/v1/{quota_rule.name=projects/*/locations/*/volumes/*/quotaRules/*}:\nquota_rule\x12\xd6\x01\n\x0f\x44\x65leteQuotaRule\x12..google.cloud.netapp.v1.DeleteQuotaRuleRequest\x1a\x1d.google.longrunning.Operation\"t\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02:*8/v1/{name=projects/*/locations/*/volumes/*/quotaRules/*}\x1aI\xca\x41\x15netapp.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x8a\x02\n\x1a\x63om.google.cloud.netapp.v1B\x17\x43loudNetappServiceProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1\xea\x41N\n\x1e\x63ompute.googleapis.com/Network\x12,projects/{project}/global/networks/{network}b\x06proto3" +descriptor_data = "\n1google/cloud/netapp/v1/cloud_netapp_service.proto\x12\x16google.cloud.netapp.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/netapp/v1/active_directory.proto\x1a#google/cloud/netapp/v1/backup.proto\x1a*google/cloud/netapp/v1/backup_policy.proto\x1a)google/cloud/netapp/v1/backup_vault.proto\x1a\'google/cloud/netapp/v1/host_group.proto\x1a google/cloud/netapp/v1/kms.proto\x1a\'google/cloud/netapp/v1/quota_rule.proto\x1a(google/cloud/netapp/v1/replication.proto\x1a%google/cloud/netapp/v1/snapshot.proto\x1a)google/cloud/netapp/v1/storage_pool.proto\x1a#google/cloud/netapp/v1/volume.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x80\x02\n\x11OperationMetadata\x12\x34\n\x0b\x63reate_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x06target\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x11\n\x04verb\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x1b\n\x0estatus_message\x18\x05 \x01(\tB\x03\xe0\x41\x03\x12#\n\x16requested_cancellation\x18\x06 \x01(\x08\x42\x03\xe0\x41\x03\x12\x18\n\x0b\x61pi_version\x18\x07 \x01(\tB\x03\xe0\x41\x03\x32\xe6m\n\x06NetApp\x12\xb8\x01\n\x10ListStoragePools\x12/.google.cloud.netapp.v1.ListStoragePoolsRequest\x1a\x30.google.cloud.netapp.v1.ListStoragePoolsResponse\"A\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{parent=projects/*/locations/*}/storagePools\x12\xf6\x01\n\x11\x43reateStoragePool\x12\x30.google.cloud.netapp.v1.CreateStoragePoolRequest\x1a\x1d.google.longrunning.Operation\"\x8f\x01\xca\x41 \n\x0bStoragePool\x12\x11OperationMetadata\xda\x41#parent,storage_pool,storage_pool_id\x82\xd3\xe4\x93\x02@\"0/v1/{parent=projects/*/locations/*}/storagePools:\x0cstorage_pool\x12\xa5\x01\n\x0eGetStoragePool\x12-.google.cloud.netapp.v1.GetStoragePoolRequest\x1a#.google.cloud.netapp.v1.StoragePool\"?\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{name=projects/*/locations/*/storagePools/*}\x12\xf8\x01\n\x11UpdateStoragePool\x12\x30.google.cloud.netapp.v1.UpdateStoragePoolRequest\x1a\x1d.google.longrunning.Operation\"\x91\x01\xca\x41 \n\x0bStoragePool\x12\x11OperationMetadata\xda\x41\x18storage_pool,update_mask\x82\xd3\xe4\x93\x02M2=/v1/{storage_pool.name=projects/*/locations/*/storagePools/*}:\x0cstorage_pool\x12\xd2\x01\n\x11\x44\x65leteStoragePool\x12\x30.google.cloud.netapp.v1.DeleteStoragePoolRequest\x1a\x1d.google.longrunning.Operation\"l\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32*0/v1/{name=projects/*/locations/*/storagePools/*}\x12\xf6\x01\n\x18ValidateDirectoryService\x12\x37.google.cloud.netapp.v1.ValidateDirectoryServiceRequest\x1a\x1d.google.longrunning.Operation\"\x81\x01\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02N\"I/v1/{name=projects/*/locations/*/storagePools/*}:validateDirectoryService:\x01*\x12\xd7\x01\n\x17SwitchActiveReplicaZone\x12\x36.google.cloud.netapp.v1.SwitchActiveReplicaZoneRequest\x1a\x1d.google.longrunning.Operation\"e\xca\x41 \n\x0bStoragePool\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02<\"7/v1/{name=projects/*/locations/*/storagePools/*}:switch:\x01*\x12\xa4\x01\n\x0bListVolumes\x12*.google.cloud.netapp.v1.ListVolumesRequest\x1a+.google.cloud.netapp.v1.ListVolumesResponse\"<\xda\x41\x06parent\x82\xd3\xe4\x93\x02-\x12+/v1/{parent=projects/*/locations/*}/volumes\x12\x91\x01\n\tGetVolume\x12(.google.cloud.netapp.v1.GetVolumeRequest\x1a\x1e.google.cloud.netapp.v1.Volume\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/volumes/*}\x12\xcf\x01\n\x0c\x43reateVolume\x12+.google.cloud.netapp.v1.CreateVolumeRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41\x1b\n\x06Volume\x12\x11OperationMetadata\xda\x41\x17parent,volume,volume_id\x82\xd3\xe4\x93\x02\x35\"+/v1/{parent=projects/*/locations/*}/volumes:\x06volume\x12\xd1\x01\n\x0cUpdateVolume\x12+.google.cloud.netapp.v1.UpdateVolumeRequest\x1a\x1d.google.longrunning.Operation\"u\xca\x41\x1b\n\x06Volume\x12\x11OperationMetadata\xda\x41\x12volume,update_mask\x82\xd3\xe4\x93\x02<22/v1/{volume.name=projects/*/locations/*/volumes/*}:\x06volume\x12\xc3\x01\n\x0c\x44\x65leteVolume\x12+.google.cloud.netapp.v1.DeleteVolumeRequest\x1a\x1d.google.longrunning.Operation\"g\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02-*+/v1/{name=projects/*/locations/*/volumes/*}\x12\xb7\x01\n\x0cRevertVolume\x12+.google.cloud.netapp.v1.RevertVolumeRequest\x1a\x1d.google.longrunning.Operation\"[\xca\x41\x1b\n\x06Volume\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x37\"2/v1/{name=projects/*/locations/*/volumes/*}:revert:\x01*\x12\xb6\x01\n\rListSnapshots\x12,.google.cloud.netapp.v1.ListSnapshotsRequest\x1a-.google.cloud.netapp.v1.ListSnapshotsResponse\"H\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x39\x12\x37/v1/{parent=projects/*/locations/*/volumes/*}/snapshots\x12\xa3\x01\n\x0bGetSnapshot\x12*.google.cloud.netapp.v1.GetSnapshotRequest\x1a .google.cloud.netapp.v1.Snapshot\"F\xda\x41\x04name\x82\xd3\xe4\x93\x02\x39\x12\x37/v1/{name=projects/*/locations/*/volumes/*/snapshots/*}\x12\xe8\x01\n\x0e\x43reateSnapshot\x12-.google.cloud.netapp.v1.CreateSnapshotRequest\x1a\x1d.google.longrunning.Operation\"\x87\x01\xca\x41\x1d\n\x08Snapshot\x12\x11OperationMetadata\xda\x41\x1bparent,snapshot,snapshot_id\x82\xd3\xe4\x93\x02\x43\"7/v1/{parent=projects/*/locations/*/volumes/*}/snapshots:\x08snapshot\x12\xd3\x01\n\x0e\x44\x65leteSnapshot\x12-.google.cloud.netapp.v1.DeleteSnapshotRequest\x1a\x1d.google.longrunning.Operation\"s\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x39*7/v1/{name=projects/*/locations/*/volumes/*/snapshots/*}\x12\xea\x01\n\x0eUpdateSnapshot\x12-.google.cloud.netapp.v1.UpdateSnapshotRequest\x1a\x1d.google.longrunning.Operation\"\x89\x01\xca\x41\x1d\n\x08Snapshot\x12\x11OperationMetadata\xda\x41\x14snapshot,update_mask\x82\xd3\xe4\x93\x02L2@/v1/{snapshot.name=projects/*/locations/*/volumes/*/snapshots/*}:\x08snapshot\x12\xcc\x01\n\x15ListActiveDirectories\x12\x34.google.cloud.netapp.v1.ListActiveDirectoriesRequest\x1a\x35.google.cloud.netapp.v1.ListActiveDirectoriesResponse\"F\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{parent=projects/*/locations/*}/activeDirectories\x12\xb6\x01\n\x12GetActiveDirectory\x12\x31.google.cloud.netapp.v1.GetActiveDirectoryRequest\x1a\'.google.cloud.netapp.v1.ActiveDirectory\"D\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37\x12\x35/v1/{name=projects/*/locations/*/activeDirectories/*}\x12\x93\x02\n\x15\x43reateActiveDirectory\x12\x34.google.cloud.netapp.v1.CreateActiveDirectoryRequest\x1a\x1d.google.longrunning.Operation\"\xa4\x01\xca\x41$\n\x0f\x41\x63tiveDirectory\x12\x11OperationMetadata\xda\x41+parent,active_directory,active_directory_id\x82\xd3\xe4\x93\x02I\"5/v1/{parent=projects/*/locations/*}/activeDirectories:\x10\x61\x63tive_directory\x12\x95\x02\n\x15UpdateActiveDirectory\x12\x34.google.cloud.netapp.v1.UpdateActiveDirectoryRequest\x1a\x1d.google.longrunning.Operation\"\xa6\x01\xca\x41$\n\x0f\x41\x63tiveDirectory\x12\x11OperationMetadata\xda\x41\x1c\x61\x63tive_directory,update_mask\x82\xd3\xe4\x93\x02Z2F/v1/{active_directory.name=projects/*/locations/*/activeDirectories/*}:\x10\x61\x63tive_directory\x12\xdf\x01\n\x15\x44\x65leteActiveDirectory\x12\x34.google.cloud.netapp.v1.DeleteActiveDirectoryRequest\x1a\x1d.google.longrunning.Operation\"q\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x37*5/v1/{name=projects/*/locations/*/activeDirectories/*}\x12\xb0\x01\n\x0eListKmsConfigs\x12-.google.cloud.netapp.v1.ListKmsConfigsRequest\x1a..google.cloud.netapp.v1.ListKmsConfigsResponse\"?\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x30\x12./v1/{parent=projects/*/locations/*}/kmsConfigs\x12\xe8\x01\n\x0f\x43reateKmsConfig\x12..google.cloud.netapp.v1.CreateKmsConfigRequest\x1a\x1d.google.longrunning.Operation\"\x85\x01\xca\x41\x1e\n\tKmsConfig\x12\x11OperationMetadata\xda\x41\x1fparent,kms_config,kms_config_id\x82\xd3\xe4\x93\x02<\"./v1/{parent=projects/*/locations/*}/kmsConfigs:\nkms_config\x12\x9d\x01\n\x0cGetKmsConfig\x12+.google.cloud.netapp.v1.GetKmsConfigRequest\x1a!.google.cloud.netapp.v1.KmsConfig\"=\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30\x12./v1/{name=projects/*/locations/*/kmsConfigs/*}\x12\xea\x01\n\x0fUpdateKmsConfig\x12..google.cloud.netapp.v1.UpdateKmsConfigRequest\x1a\x1d.google.longrunning.Operation\"\x87\x01\xca\x41\x1e\n\tKmsConfig\x12\x11OperationMetadata\xda\x41\x16kms_config,update_mask\x82\xd3\xe4\x93\x02G29/v1/{kms_config.name=projects/*/locations/*/kmsConfigs/*}:\nkms_config\x12\xc2\x01\n\x0e\x45ncryptVolumes\x12-.google.cloud.netapp.v1.EncryptVolumesRequest\x1a\x1d.google.longrunning.Operation\"b\xca\x41\x1e\n\tKmsConfig\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02;\"6/v1/{name=projects/*/locations/*/kmsConfigs/*}:encrypt:\x01*\x12\xb4\x01\n\x0fVerifyKmsConfig\x12..google.cloud.netapp.v1.VerifyKmsConfigRequest\x1a/.google.cloud.netapp.v1.VerifyKmsConfigResponse\"@\x82\xd3\xe4\x93\x02:\"5/v1/{name=projects/*/locations/*/kmsConfigs/*}:verify:\x01*\x12\xcc\x01\n\x0f\x44\x65leteKmsConfig\x12..google.cloud.netapp.v1.DeleteKmsConfigRequest\x1a\x1d.google.longrunning.Operation\"j\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30*./v1/{name=projects/*/locations/*/kmsConfigs/*}\x12\xc2\x01\n\x10ListReplications\x12/.google.cloud.netapp.v1.ListReplicationsRequest\x1a\x30.google.cloud.netapp.v1.ListReplicationsResponse\"K\xda\x41\x06parent\x82\xd3\xe4\x93\x02<\x12:/v1/{parent=projects/*/locations/*/volumes/*}/replications\x12\xaf\x01\n\x0eGetReplication\x12-.google.cloud.netapp.v1.GetReplicationRequest\x1a#.google.cloud.netapp.v1.Replication\"I\xda\x41\x04name\x82\xd3\xe4\x93\x02<\x12:/v1/{name=projects/*/locations/*/volumes/*/replications/*}\x12\xfd\x01\n\x11\x43reateReplication\x12\x30.google.cloud.netapp.v1.CreateReplicationRequest\x1a\x1d.google.longrunning.Operation\"\x96\x01\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\xda\x41!parent,replication,replication_id\x82\xd3\xe4\x93\x02I\":/v1/{parent=projects/*/locations/*/volumes/*}/replications:\x0breplication\x12\xdc\x01\n\x11\x44\x65leteReplication\x12\x30.google.cloud.netapp.v1.DeleteReplicationRequest\x1a\x1d.google.longrunning.Operation\"v\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02<*:/v1/{name=projects/*/locations/*/volumes/*/replications/*}\x12\xff\x01\n\x11UpdateReplication\x12\x30.google.cloud.netapp.v1.UpdateReplicationRequest\x1a\x1d.google.longrunning.Operation\"\x98\x01\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\xda\x41\x17replication,update_mask\x82\xd3\xe4\x93\x02U2F/v1/{replication.name=projects/*/locations/*/volumes/*/replications/*}:\x0breplication\x12\xcf\x01\n\x0fStopReplication\x12..google.cloud.netapp.v1.StopReplicationRequest\x1a\x1d.google.longrunning.Operation\"m\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x44\"?/v1/{name=projects/*/locations/*/volumes/*/replications/*}:stop:\x01*\x12\xd5\x01\n\x11ResumeReplication\x12\x30.google.cloud.netapp.v1.ResumeReplicationRequest\x1a\x1d.google.longrunning.Operation\"o\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x46\"A/v1/{name=projects/*/locations/*/volumes/*/replications/*}:resume:\x01*\x12\xf3\x01\n\x1bReverseReplicationDirection\x12:.google.cloud.netapp.v1.ReverseReplicationDirectionRequest\x1a\x1d.google.longrunning.Operation\"y\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02P\"K/v1/{name=projects/*/locations/*/volumes/*/replications/*}:reverseDirection:\x01*\x12\xdd\x01\n\x10\x45stablishPeering\x12/.google.cloud.netapp.v1.EstablishPeeringRequest\x1a\x1d.google.longrunning.Operation\"y\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02P\"K/v1/{name=projects/*/locations/*/volumes/*/replications/*}:establishPeering:\x01*\x12\xcf\x01\n\x0fSyncReplication\x12..google.cloud.netapp.v1.SyncReplicationRequest\x1a\x1d.google.longrunning.Operation\"m\xca\x41 \n\x0bReplication\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x44\"?/v1/{name=projects/*/locations/*/volumes/*/replications/*}:sync:\x01*\x12\xf6\x01\n\x11\x43reateBackupVault\x12\x30.google.cloud.netapp.v1.CreateBackupVaultRequest\x1a\x1d.google.longrunning.Operation\"\x8f\x01\xca\x41 \n\x0b\x42\x61\x63kupVault\x12\x11OperationMetadata\xda\x41#parent,backup_vault,backup_vault_id\x82\xd3\xe4\x93\x02@\"0/v1/{parent=projects/*/locations/*}/backupVaults:\x0c\x62\x61\x63kup_vault\x12\xa5\x01\n\x0eGetBackupVault\x12-.google.cloud.netapp.v1.GetBackupVaultRequest\x1a#.google.cloud.netapp.v1.BackupVault\"?\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{name=projects/*/locations/*/backupVaults/*}\x12\xb8\x01\n\x10ListBackupVaults\x12/.google.cloud.netapp.v1.ListBackupVaultsRequest\x1a\x30.google.cloud.netapp.v1.ListBackupVaultsResponse\"A\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x32\x12\x30/v1/{parent=projects/*/locations/*}/backupVaults\x12\xf8\x01\n\x11UpdateBackupVault\x12\x30.google.cloud.netapp.v1.UpdateBackupVaultRequest\x1a\x1d.google.longrunning.Operation\"\x91\x01\xca\x41 \n\x0b\x42\x61\x63kupVault\x12\x11OperationMetadata\xda\x41\x18\x62\x61\x63kup_vault,update_mask\x82\xd3\xe4\x93\x02M2=/v1/{backup_vault.name=projects/*/locations/*/backupVaults/*}:\x0c\x62\x61\x63kup_vault\x12\xd2\x01\n\x11\x44\x65leteBackupVault\x12\x30.google.cloud.netapp.v1.DeleteBackupVaultRequest\x1a\x1d.google.longrunning.Operation\"l\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x32*0/v1/{name=projects/*/locations/*/backupVaults/*}\x12\xdf\x01\n\x0c\x43reateBackup\x12+.google.cloud.netapp.v1.CreateBackupRequest\x1a\x1d.google.longrunning.Operation\"\x82\x01\xca\x41\x1b\n\x06\x42\x61\x63kup\x12\x11OperationMetadata\xda\x41\x17parent,backup,backup_id\x82\xd3\xe4\x93\x02\x44\":/v1/{parent=projects/*/locations/*/backupVaults/*}/backups:\x06\x62\x61\x63kup\x12\xa0\x01\n\tGetBackup\x12(.google.cloud.netapp.v1.GetBackupRequest\x1a\x1e.google.cloud.netapp.v1.Backup\"I\xda\x41\x04name\x82\xd3\xe4\x93\x02<\x12:/v1/{name=projects/*/locations/*/backupVaults/*/backups/*}\x12\xb3\x01\n\x0bListBackups\x12*.google.cloud.netapp.v1.ListBackupsRequest\x1a+.google.cloud.netapp.v1.ListBackupsResponse\"K\xda\x41\x06parent\x82\xd3\xe4\x93\x02<\x12:/v1/{parent=projects/*/locations/*/backupVaults/*}/backups\x12\xd2\x01\n\x0c\x44\x65leteBackup\x12+.google.cloud.netapp.v1.DeleteBackupRequest\x1a\x1d.google.longrunning.Operation\"v\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02<*:/v1/{name=projects/*/locations/*/backupVaults/*/backups/*}\x12\xe1\x01\n\x0cUpdateBackup\x12+.google.cloud.netapp.v1.UpdateBackupRequest\x1a\x1d.google.longrunning.Operation\"\x84\x01\xca\x41\x1b\n\x06\x42\x61\x63kup\x12\x11OperationMetadata\xda\x41\x12\x62\x61\x63kup,update_mask\x82\xd3\xe4\x93\x02K2A/v1/{backup.name=projects/*/locations/*/backupVaults/*/backups/*}:\x06\x62\x61\x63kup\x12\xfe\x01\n\x12\x43reateBackupPolicy\x12\x31.google.cloud.netapp.v1.CreateBackupPolicyRequest\x1a\x1d.google.longrunning.Operation\"\x95\x01\xca\x41!\n\x0c\x42\x61\x63kupPolicy\x12\x11OperationMetadata\xda\x41%parent,backup_policy,backup_policy_id\x82\xd3\xe4\x93\x02\x43\"2/v1/{parent=projects/*/locations/*}/backupPolicies:\rbackup_policy\x12\xaa\x01\n\x0fGetBackupPolicy\x12..google.cloud.netapp.v1.GetBackupPolicyRequest\x1a$.google.cloud.netapp.v1.BackupPolicy\"A\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{name=projects/*/locations/*/backupPolicies/*}\x12\xc0\x01\n\x12ListBackupPolicies\x12\x31.google.cloud.netapp.v1.ListBackupPoliciesRequest\x1a\x32.google.cloud.netapp.v1.ListBackupPoliciesResponse\"C\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{parent=projects/*/locations/*}/backupPolicies\x12\x80\x02\n\x12UpdateBackupPolicy\x12\x31.google.cloud.netapp.v1.UpdateBackupPolicyRequest\x1a\x1d.google.longrunning.Operation\"\x97\x01\xca\x41!\n\x0c\x42\x61\x63kupPolicy\x12\x11OperationMetadata\xda\x41\x19\x62\x61\x63kup_policy,update_mask\x82\xd3\xe4\x93\x02Q2@/v1/{backup_policy.name=projects/*/locations/*/backupPolicies/*}:\rbackup_policy\x12\xd6\x01\n\x12\x44\x65leteBackupPolicy\x12\x31.google.cloud.netapp.v1.DeleteBackupPolicyRequest\x1a\x1d.google.longrunning.Operation\"n\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34*2/v1/{name=projects/*/locations/*/backupPolicies/*}\x12\xba\x01\n\x0eListQuotaRules\x12-.google.cloud.netapp.v1.ListQuotaRulesRequest\x1a..google.cloud.netapp.v1.ListQuotaRulesResponse\"I\xda\x41\x06parent\x82\xd3\xe4\x93\x02:\x12\x38/v1/{parent=projects/*/locations/*/volumes/*}/quotaRules\x12\xa7\x01\n\x0cGetQuotaRule\x12+.google.cloud.netapp.v1.GetQuotaRuleRequest\x1a!.google.cloud.netapp.v1.QuotaRule\"G\xda\x41\x04name\x82\xd3\xe4\x93\x02:\x12\x38/v1/{name=projects/*/locations/*/volumes/*/quotaRules/*}\x12\xf2\x01\n\x0f\x43reateQuotaRule\x12..google.cloud.netapp.v1.CreateQuotaRuleRequest\x1a\x1d.google.longrunning.Operation\"\x8f\x01\xca\x41\x1e\n\tQuotaRule\x12\x11OperationMetadata\xda\x41\x1fparent,quota_rule,quota_rule_id\x82\xd3\xe4\x93\x02\x46\"8/v1/{parent=projects/*/locations/*/volumes/*}/quotaRules:\nquota_rule\x12\xf4\x01\n\x0fUpdateQuotaRule\x12..google.cloud.netapp.v1.UpdateQuotaRuleRequest\x1a\x1d.google.longrunning.Operation\"\x91\x01\xca\x41\x1e\n\tQuotaRule\x12\x11OperationMetadata\xda\x41\x16quota_rule,update_mask\x82\xd3\xe4\x93\x02Q2C/v1/{quota_rule.name=projects/*/locations/*/volumes/*/quotaRules/*}:\nquota_rule\x12\xd6\x01\n\x0f\x44\x65leteQuotaRule\x12..google.cloud.netapp.v1.DeleteQuotaRuleRequest\x1a\x1d.google.longrunning.Operation\"t\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02:*8/v1/{name=projects/*/locations/*/volumes/*/quotaRules/*}\x12\xd8\x01\n\x12RestoreBackupFiles\x12\x31.google.cloud.netapp.v1.RestoreBackupFilesRequest\x1a\x1d.google.longrunning.Operation\"p\xca\x41/\n\x1aRestoreBackupFilesResponse\x12\x11OperationMetadata\x82\xd3\xe4\x93\x02\x38\"3/v1/{name=projects/*/locations/*/volumes/*}:restore:\x01*\x12\xb0\x01\n\x0eListHostGroups\x12-.google.cloud.netapp.v1.ListHostGroupsRequest\x1a..google.cloud.netapp.v1.ListHostGroupsResponse\"?\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x30\x12./v1/{parent=projects/*/locations/*}/hostGroups\x12\x9d\x01\n\x0cGetHostGroup\x12+.google.cloud.netapp.v1.GetHostGroupRequest\x1a!.google.cloud.netapp.v1.HostGroup\"=\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30\x12./v1/{name=projects/*/locations/*/hostGroups/*}\x12\xe8\x01\n\x0f\x43reateHostGroup\x12..google.cloud.netapp.v1.CreateHostGroupRequest\x1a\x1d.google.longrunning.Operation\"\x85\x01\xca\x41\x1e\n\tHostGroup\x12\x11OperationMetadata\xda\x41\x1fparent,host_group,host_group_id\x82\xd3\xe4\x93\x02<\"./v1/{parent=projects/*/locations/*}/hostGroups:\nhost_group\x12\xea\x01\n\x0fUpdateHostGroup\x12..google.cloud.netapp.v1.UpdateHostGroupRequest\x1a\x1d.google.longrunning.Operation\"\x87\x01\xca\x41\x1e\n\tHostGroup\x12\x11OperationMetadata\xda\x41\x16host_group,update_mask\x82\xd3\xe4\x93\x02G29/v1/{host_group.name=projects/*/locations/*/hostGroups/*}:\nhost_group\x12\xcc\x01\n\x0f\x44\x65leteHostGroup\x12..google.cloud.netapp.v1.DeleteHostGroupRequest\x1a\x1d.google.longrunning.Operation\"j\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30*./v1/{name=projects/*/locations/*/hostGroups/*}\x1aI\xca\x41\x15netapp.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x8a\x02\n\x1a\x63om.google.cloud.netapp.v1B\x17\x43loudNetappServiceProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1\xea\x41N\n\x1e\x63ompute.googleapis.com/Network\x12,projects/{project}/global/networks/{network}b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_services_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_services_pb.rb index 073ed1be965b..d7a4e01dcece 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_services_pb.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/cloud_netapp_service_services_pb.rb @@ -164,6 +164,19 @@ class Service rpc :UpdateQuotaRule, ::Google::Cloud::NetApp::V1::UpdateQuotaRuleRequest, ::Google::Longrunning::Operation # Deletes a quota rule. rpc :DeleteQuotaRule, ::Google::Cloud::NetApp::V1::DeleteQuotaRuleRequest, ::Google::Longrunning::Operation + # Restore files from a backup to a volume. + rpc :RestoreBackupFiles, ::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest, ::Google::Longrunning::Operation + # Returns a list of host groups in a `location`. Use `-` as location to list + # host groups across all locations. + rpc :ListHostGroups, ::Google::Cloud::NetApp::V1::ListHostGroupsRequest, ::Google::Cloud::NetApp::V1::ListHostGroupsResponse + # Returns details of the specified host group. + rpc :GetHostGroup, ::Google::Cloud::NetApp::V1::GetHostGroupRequest, ::Google::Cloud::NetApp::V1::HostGroup + # Creates a new host group. + rpc :CreateHostGroup, ::Google::Cloud::NetApp::V1::CreateHostGroupRequest, ::Google::Longrunning::Operation + # Updates an existing host group. + rpc :UpdateHostGroup, ::Google::Cloud::NetApp::V1::UpdateHostGroupRequest, ::Google::Longrunning::Operation + # Deletes a host group. + rpc :DeleteHostGroup, ::Google::Cloud::NetApp::V1::DeleteHostGroupRequest, ::Google::Longrunning::Operation end Stub = Service.rpc_stub_class diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/common_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/common_pb.rb index bd60e90e0ade..7a2838409b5f 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/common_pb.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/common_pb.rb @@ -7,7 +7,7 @@ require 'google/api/field_behavior_pb' -descriptor_data = "\n#google/cloud/netapp/v1/common.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\"\xc7\x01\n\x10LocationMetadata\x12K\n\x18supported_service_levels\x18\x01 \x03(\x0e\x32$.google.cloud.netapp.v1.ServiceLevelB\x03\xe0\x41\x03\x12P\n\x1asupported_flex_performance\x18\x02 \x03(\x0e\x32\'.google.cloud.netapp.v1.FlexPerformanceB\x03\xe0\x41\x03\x12\x14\n\x07has_vcp\x18\x03 \x01(\x08\x42\x03\xe0\x41\x03\"%\n\x0cUserCommands\x12\x15\n\x08\x63ommands\x18\x01 \x03(\tB\x03\xe0\x41\x03*_\n\x0cServiceLevel\x12\x1d\n\x19SERVICE_LEVEL_UNSPECIFIED\x10\x00\x12\x0b\n\x07PREMIUM\x10\x01\x12\x0b\n\x07\x45XTREME\x10\x02\x12\x0c\n\x08STANDARD\x10\x03\x12\x08\n\x04\x46LEX\x10\x04*n\n\x0f\x46lexPerformance\x12 \n\x1c\x46LEX_PERFORMANCE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x46LEX_PERFORMANCE_DEFAULT\x10\x01\x12\x1b\n\x17\x46LEX_PERFORMANCE_CUSTOM\x10\x02*U\n\x0e\x45ncryptionType\x12\x1f\n\x1b\x45NCRYPTION_TYPE_UNSPECIFIED\x10\x00\x12\x13\n\x0fSERVICE_MANAGED\x10\x01\x12\r\n\tCLOUD_KMS\x10\x02*T\n\x14\x44irectoryServiceType\x12&\n\"DIRECTORY_SERVICE_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x41\x43TIVE_DIRECTORY\x10\x01*u\n\x19HybridReplicationSchedule\x12+\n\'HYBRID_REPLICATION_SCHEDULE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x45VERY_10_MINUTES\x10\x01\x12\n\n\x06HOURLY\x10\x02\x12\t\n\x05\x44\x41ILY\x10\x03*9\n\x07QosType\x12\x18\n\x14QOS_TYPE_UNSPECIFIED\x10\x00\x12\x08\n\x04\x41UTO\x10\x01\x12\n\n\x06MANUAL\x10\x02\x42\xad\x01\n\x1a\x63om.google.cloud.netapp.v1B\x0b\x43ommonProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" +descriptor_data = "\n#google/cloud/netapp/v1/common.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\"\xe5\x01\n\x10LocationMetadata\x12K\n\x18supported_service_levels\x18\x01 \x03(\x0e\x32$.google.cloud.netapp.v1.ServiceLevelB\x03\xe0\x41\x03\x12P\n\x1asupported_flex_performance\x18\x02 \x03(\x0e\x32\'.google.cloud.netapp.v1.FlexPerformanceB\x03\xe0\x41\x03\x12\x14\n\x07has_vcp\x18\x03 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1c\n\x0fhas_ontap_proxy\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\"%\n\x0cUserCommands\x12\x15\n\x08\x63ommands\x18\x01 \x03(\tB\x03\xe0\x41\x03*_\n\x0cServiceLevel\x12\x1d\n\x19SERVICE_LEVEL_UNSPECIFIED\x10\x00\x12\x0b\n\x07PREMIUM\x10\x01\x12\x0b\n\x07\x45XTREME\x10\x02\x12\x0c\n\x08STANDARD\x10\x03\x12\x08\n\x04\x46LEX\x10\x04*n\n\x0f\x46lexPerformance\x12 \n\x1c\x46LEX_PERFORMANCE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x46LEX_PERFORMANCE_DEFAULT\x10\x01\x12\x1b\n\x17\x46LEX_PERFORMANCE_CUSTOM\x10\x02*U\n\x0e\x45ncryptionType\x12\x1f\n\x1b\x45NCRYPTION_TYPE_UNSPECIFIED\x10\x00\x12\x13\n\x0fSERVICE_MANAGED\x10\x01\x12\r\n\tCLOUD_KMS\x10\x02*T\n\x14\x44irectoryServiceType\x12&\n\"DIRECTORY_SERVICE_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x41\x43TIVE_DIRECTORY\x10\x01*g\n\x0fStoragePoolType\x12!\n\x1dSTORAGE_POOL_TYPE_UNSPECIFIED\x10\x00\x12\x08\n\x04\x46ILE\x10\x01\x12\x0b\n\x07UNIFIED\x10\x02\x12\x1a\n\x16UNIFIED_LARGE_CAPACITY\x10\x03*u\n\x19HybridReplicationSchedule\x12+\n\'HYBRID_REPLICATION_SCHEDULE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x45VERY_10_MINUTES\x10\x01\x12\n\n\x06HOURLY\x10\x02\x12\t\n\x05\x44\x41ILY\x10\x03*9\n\x07QosType\x12\x18\n\x14QOS_TYPE_UNSPECIFIED\x10\x00\x12\x08\n\x04\x41UTO\x10\x01\x12\n\n\x06MANUAL\x10\x02*C\n\x06OsType\x12\x17\n\x13OS_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05LINUX\x10\x01\x12\x0b\n\x07WINDOWS\x10\x02\x12\x08\n\x04\x45SXI\x10\x03\x42\xad\x01\n\x1a\x63om.google.cloud.netapp.v1B\x0b\x43ommonProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool @@ -43,8 +43,10 @@ module V1 FlexPerformance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.FlexPerformance").enummodule EncryptionType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.EncryptionType").enummodule DirectoryServiceType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.DirectoryServiceType").enummodule + StoragePoolType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.StoragePoolType").enummodule HybridReplicationSchedule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.HybridReplicationSchedule").enummodule QosType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.QosType").enummodule + OsType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.OsType").enummodule end end end diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/host_group_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/host_group_pb.rb new file mode 100644 index 000000000000..4a73d922d52e --- /dev/null +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/host_group_pb.rb @@ -0,0 +1,58 @@ +# frozen_string_literal: true +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: google/cloud/netapp/v1/host_group.proto + +require 'google/protobuf' + +require 'google/api/field_behavior_pb' +require 'google/api/resource_pb' +require 'google/cloud/netapp/v1/common_pb' +require 'google/protobuf/field_mask_pb' +require 'google/protobuf/timestamp_pb' + + +descriptor_data = "\n\'google/cloud/netapp/v1/host_group.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/cloud/netapp/v1/common.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xad\x01\n\x15ListHostGroupsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1fnetapp.googleapis.com/HostGroup\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01\"~\n\x16ListHostGroupsResponse\x12\x36\n\x0bhost_groups\x18\x01 \x03(\x0b\x32!.google.cloud.netapp.v1.HostGroup\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"L\n\x13GetHostGroupRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/HostGroup\"\xa9\x01\n\x16\x43reateHostGroupRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1fnetapp.googleapis.com/HostGroup\x12:\n\nhost_group\x18\x02 \x01(\x0b\x32!.google.cloud.netapp.v1.HostGroupB\x03\xe0\x41\x02\x12\x1a\n\rhost_group_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\x8a\x01\n\x16UpdateHostGroupRequest\x12:\n\nhost_group\x18\x01 \x01(\x0b\x32!.google.cloud.netapp.v1.HostGroupB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\"O\n\x16\x44\x65leteHostGroupRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/HostGroup\"\xb7\x05\n\tHostGroup\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x39\n\x04type\x18\x02 \x01(\x0e\x32&.google.cloud.netapp.v1.HostGroup.TypeB\x03\xe0\x41\x02\x12;\n\x05state\x18\x03 \x01(\x0e\x32\'.google.cloud.netapp.v1.HostGroup.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x12\n\x05hosts\x18\x05 \x03(\tB\x03\xe0\x41\x02\x12\x34\n\x07os_type\x18\x06 \x01(\x0e\x32\x1e.google.cloud.netapp.v1.OsTypeB\x03\xe0\x41\x02\x12\x18\n\x0b\x64\x65scription\x18\x07 \x01(\tB\x03\xe0\x41\x01\x12\x42\n\x06labels\x18\x08 \x03(\x0b\x32-.google.cloud.netapp.v1.HostGroup.LabelsEntryB\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"1\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x13\n\x0fISCSI_INITIATOR\x10\x01\"a\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\t\n\x05READY\x10\x02\x12\x0c\n\x08UPDATING\x10\x03\x12\x0c\n\x08\x44\x45LETING\x10\x04\x12\x0c\n\x08\x44ISABLED\x10\x05:|\xea\x41y\n\x1fnetapp.googleapis.com/HostGroup\x12?projects/{project}/locations/{location}/hostGroups/{host_group}*\nhostGroups2\thostGroupB\xb0\x01\n\x1a\x63om.google.cloud.netapp.v1B\x0eHostGroupProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" + +pool = Google::Protobuf::DescriptorPool.generated_pool + +begin + pool.add_serialized_file(descriptor_data) +rescue TypeError + # Compatibility code: will be removed in the next major version. + require 'google/protobuf/descriptor_pb' + parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data) + parsed.clear_dependency + serialized = parsed.class.encode(parsed) + file = pool.add_serialized_file(serialized) + warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}" + imports = [ + ["google.protobuf.FieldMask", "google/protobuf/field_mask.proto"], + ["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"], + ] + imports.each do |type_name, expected_filename| + import_file = pool.lookup(type_name).file_descriptor + if import_file.name != expected_filename + warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}" + end + end + warn "Each proto file must use a consistent fully-qualified name." + warn "This will become an error in the next major version." +end + +module Google + module Cloud + module NetApp + module V1 + ListHostGroupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.ListHostGroupsRequest").msgclass + ListHostGroupsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.ListHostGroupsResponse").msgclass + GetHostGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.GetHostGroupRequest").msgclass + CreateHostGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.CreateHostGroupRequest").msgclass + UpdateHostGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.UpdateHostGroupRequest").msgclass + DeleteHostGroupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.DeleteHostGroupRequest").msgclass + HostGroup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.HostGroup").msgclass + HostGroup::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.HostGroup.Type").enummodule + HostGroup::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.HostGroup.State").enummodule + end + end + end +end diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/kms_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/kms_pb.rb index 475af7fd6d6d..719b84236dea 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/kms_pb.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/kms_pb.rb @@ -10,7 +10,7 @@ require 'google/protobuf/timestamp_pb' -descriptor_data = "\n google/cloud/netapp/v1/kms.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"L\n\x13GetKmsConfigRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"\x99\x01\n\x15ListKmsConfigsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1fnetapp.googleapis.com/KmsConfig\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x10\n\x08order_by\x18\x04 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"~\n\x16ListKmsConfigsResponse\x12\x36\n\x0bkms_configs\x18\x01 \x03(\x0b\x32!.google.cloud.netapp.v1.KmsConfig\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\xa9\x01\n\x16\x43reateKmsConfigRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1fnetapp.googleapis.com/KmsConfig\x12\x1a\n\rkms_config_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12:\n\nkms_config\x18\x03 \x01(\x0b\x32!.google.cloud.netapp.v1.KmsConfigB\x03\xe0\x41\x02\"\x8a\x01\n\x16UpdateKmsConfigRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12:\n\nkms_config\x18\x02 \x01(\x0b\x32!.google.cloud.netapp.v1.KmsConfigB\x03\xe0\x41\x02\"O\n\x16\x44\x65leteKmsConfigRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"N\n\x15\x45ncryptVolumesRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"O\n\x16VerifyKmsConfigRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"e\n\x17VerifyKmsConfigResponse\x12\x14\n\x07healthy\x18\x01 \x01(\x08\x42\x03\xe0\x41\x03\x12\x19\n\x0chealth_error\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0cinstructions\x18\x03 \x01(\tB\x03\xe0\x41\x03\"\xcc\x05\n\tKmsConfig\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x1c\n\x0f\x63rypto_key_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12;\n\x05state\x18\x03 \x01(\x0e\x32\'.google.cloud.netapp.v1.KmsConfig.StateB\x03\xe0\x41\x03\x12\x1a\n\rstate_details\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12=\n\x06labels\x18\x07 \x03(\x0b\x32-.google.cloud.netapp.v1.KmsConfig.LabelsEntry\x12\x19\n\x0cinstructions\x18\x08 \x01(\tB\x03\xe0\x41\x03\x12\x1c\n\x0fservice_account\x18\t \x01(\tB\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc4\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\t\n\x05READY\x10\x01\x12\x0c\n\x08\x43REATING\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\x0c\n\x08UPDATING\x10\x04\x12\n\n\x06IN_USE\x10\x05\x12\t\n\x05\x45RROR\x10\x06\x12\x15\n\x11KEY_CHECK_PENDING\x10\x07\x12\x15\n\x11KEY_NOT_REACHABLE\x10\x08\x12\r\n\tDISABLING\x10\t\x12\x0c\n\x08\x44ISABLED\x10\n\x12\r\n\tMIGRATING\x10\x0b:|\xea\x41y\n\x1fnetapp.googleapis.com/KmsConfig\x12?projects/{project}/locations/{location}/kmsConfigs/{kms_config}*\nkmsConfigs2\tkmsConfigB\xaa\x01\n\x1a\x63om.google.cloud.netapp.v1B\x08KmsProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" +descriptor_data = "\n google/cloud/netapp/v1/kms.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"L\n\x13GetKmsConfigRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"\x99\x01\n\x15ListKmsConfigsRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1fnetapp.googleapis.com/KmsConfig\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x10\n\x08order_by\x18\x04 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x05 \x01(\t\"~\n\x16ListKmsConfigsResponse\x12\x36\n\x0bkms_configs\x18\x01 \x03(\x0b\x32!.google.cloud.netapp.v1.KmsConfig\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\xa9\x01\n\x16\x43reateKmsConfigRequest\x12\x37\n\x06parent\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\x12\x1fnetapp.googleapis.com/KmsConfig\x12\x1a\n\rkms_config_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12:\n\nkms_config\x18\x03 \x01(\x0b\x32!.google.cloud.netapp.v1.KmsConfigB\x03\xe0\x41\x02\"\x8a\x01\n\x16UpdateKmsConfigRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12:\n\nkms_config\x18\x02 \x01(\x0b\x32!.google.cloud.netapp.v1.KmsConfigB\x03\xe0\x41\x02\"O\n\x16\x44\x65leteKmsConfigRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"N\n\x15\x45ncryptVolumesRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"O\n\x16VerifyKmsConfigRequest\x12\x35\n\x04name\x18\x01 \x01(\tB\'\xe0\x41\x02\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\"e\n\x17VerifyKmsConfigResponse\x12\x14\n\x07healthy\x18\x01 \x01(\x08\x42\x03\xe0\x41\x03\x12\x19\n\x0chealth_error\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12\x19\n\x0cinstructions\x18\x03 \x01(\tB\x03\xe0\x41\x03\"\xcc\x05\n\tKmsConfig\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x1c\n\x0f\x63rypto_key_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12;\n\x05state\x18\x03 \x01(\x0e\x32\'.google.cloud.netapp.v1.KmsConfig.StateB\x03\xe0\x41\x03\x12\x1a\n\rstate_details\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x13\n\x0b\x64\x65scription\x18\x06 \x01(\t\x12=\n\x06labels\x18\x07 \x03(\x0b\x32-.google.cloud.netapp.v1.KmsConfig.LabelsEntry\x12\x19\n\x0cinstructions\x18\x08 \x01(\tB\x03\xe0\x41\x03\x12\x1c\n\x0fservice_account\x18\t \x01(\tB\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc4\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\t\n\x05READY\x10\x01\x12\x0c\n\x08\x43REATING\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\x0c\n\x08UPDATING\x10\x04\x12\n\n\x06IN_USE\x10\x05\x12\t\n\x05\x45RROR\x10\x06\x12\x15\n\x11KEY_CHECK_PENDING\x10\x07\x12\x15\n\x11KEY_NOT_REACHABLE\x10\x08\x12\r\n\tDISABLING\x10\t\x12\x0c\n\x08\x44ISABLED\x10\n\x12\r\n\tMIGRATING\x10\x0b:|\xea\x41y\n\x1fnetapp.googleapis.com/KmsConfig\x12?projects/{project}/locations/{location}/kmsConfigs/{kms_config}*\nkmsConfigs2\tkmsConfigB\xd4\x02\n\x1a\x63om.google.cloud.netapp.v1B\x08KmsProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1\xea\x41\xa6\x01\n(cloudkms.googleapis.com/CryptoKeyVersion\x12zprojects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/client.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/client.rb index 4e23bad4d836..7f79c77b6a2d 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/client.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/client.rb @@ -6177,6 +6177,594 @@ def delete_quota_rule request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Restore files from a backup to a volume. + # + # @overload restore_backup_files(request, options = nil) + # Pass arguments to `restore_backup_files` via a request object, either of type + # {::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional. + # + # @overload restore_backup_files(name: nil, backup: nil, file_list: nil, restore_destination_path: nil) + # Pass arguments to `restore_backup_files` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param name [::String] + # Required. The volume resource name, in the format + # `projects/{project_id}/locations/{location}/volumes/{volume_id}` + # @param backup [::String] + # Required. The backup resource name, in the format + # `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}` + # @param file_list [::Array<::String>] + # Required. List of files to be restored, specified by their absolute path in + # the source volume. + # @param restore_destination_path [::String] + # Optional. Absolute directory path in the destination volume. This is + # required if the `file_list` is provided. + # + # @yield [response, operation] Access the result along with the RPC operation + # @yieldparam response [::Gapic::Operation] + # @yieldparam operation [::GRPC::ActiveCall::Operation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the RPC is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::RestoreBackupFilesRequest.new + # + # # Call the restore_backup_files method. + # result = client.restore_backup_files request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def restore_backup_files request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + metadata = @config.rpcs.restore_backup_files.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION + metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + header_params = {} + if request.name + header_params["name"] = request.name + end + + request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") + metadata[:"x-goog-request-params"] ||= request_params_header + + options.apply_defaults timeout: @config.rpcs.restore_backup_files.timeout, + metadata: metadata, + retry_policy: @config.rpcs.restore_backup_files.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.call_rpc :restore_backup_files, request, options: options do |response, operation| + response = ::Gapic::Operation.new response, @operations_client, options: options + yield response, operation if block_given? + throw :response, response + end + rescue ::GRPC::BadStatus => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns a list of host groups in a `location`. Use `-` as location to list + # host groups across all locations. + # + # @overload list_host_groups(request, options = nil) + # Pass arguments to `list_host_groups` via a request object, either of type + # {::Google::Cloud::NetApp::V1::ListHostGroupsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::ListHostGroupsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional. + # + # @overload list_host_groups(parent: nil, page_size: nil, page_token: nil, filter: nil, order_by: nil) + # Pass arguments to `list_host_groups` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param parent [::String] + # Required. Parent value for ListHostGroupsRequest + # @param page_size [::Integer] + # Optional. Requested page size. Server may return fewer items than + # requested. If unspecified, the server will pick an appropriate default. + # @param page_token [::String] + # Optional. A token identifying a page of results the server should return. + # @param filter [::String] + # Optional. Filter to apply to the request. + # @param order_by [::String] + # Optional. Hint for how to order the results + # + # @yield [response, operation] Access the result along with the RPC operation + # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::NetApp::V1::HostGroup>] + # @yieldparam operation [::GRPC::ActiveCall::Operation] + # + # @return [::Gapic::PagedEnumerable<::Google::Cloud::NetApp::V1::HostGroup>] + # + # @raise [::Google::Cloud::Error] if the RPC is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::ListHostGroupsRequest.new + # + # # Call the list_host_groups method. + # result = client.list_host_groups request + # + # # The returned object is of type Gapic::PagedEnumerable. You can iterate + # # over elements, and API calls will be issued to fetch pages as needed. + # result.each do |item| + # # Each element is of type ::Google::Cloud::NetApp::V1::HostGroup. + # p item + # end + # + def list_host_groups request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::ListHostGroupsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + metadata = @config.rpcs.list_host_groups.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION + metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + header_params = {} + if request.parent + header_params["parent"] = request.parent + end + + request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") + metadata[:"x-goog-request-params"] ||= request_params_header + + options.apply_defaults timeout: @config.rpcs.list_host_groups.timeout, + metadata: metadata, + retry_policy: @config.rpcs.list_host_groups.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.call_rpc :list_host_groups, request, options: options do |response, operation| + response = ::Gapic::PagedEnumerable.new @net_app_stub, :list_host_groups, request, response, operation, options + yield response, operation if block_given? + throw :response, response + end + rescue ::GRPC::BadStatus => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns details of the specified host group. + # + # @overload get_host_group(request, options = nil) + # Pass arguments to `get_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::GetHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::GetHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional. + # + # @overload get_host_group(name: nil) + # Pass arguments to `get_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param name [::String] + # Required. The resource name of the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # + # @yield [response, operation] Access the result along with the RPC operation + # @yieldparam response [::Google::Cloud::NetApp::V1::HostGroup] + # @yieldparam operation [::GRPC::ActiveCall::Operation] + # + # @return [::Google::Cloud::NetApp::V1::HostGroup] + # + # @raise [::Google::Cloud::Error] if the RPC is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::GetHostGroupRequest.new + # + # # Call the get_host_group method. + # result = client.get_host_group request + # + # # The returned object is of type Google::Cloud::NetApp::V1::HostGroup. + # p result + # + def get_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::GetHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + metadata = @config.rpcs.get_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION + metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + header_params = {} + if request.name + header_params["name"] = request.name + end + + request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") + metadata[:"x-goog-request-params"] ||= request_params_header + + options.apply_defaults timeout: @config.rpcs.get_host_group.timeout, + metadata: metadata, + retry_policy: @config.rpcs.get_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.call_rpc :get_host_group, request, options: options do |response, operation| + yield response, operation if block_given? + end + rescue ::GRPC::BadStatus => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Creates a new host group. + # + # @overload create_host_group(request, options = nil) + # Pass arguments to `create_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::CreateHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::CreateHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional. + # + # @overload create_host_group(parent: nil, host_group: nil, host_group_id: nil) + # Pass arguments to `create_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param parent [::String] + # Required. Parent value for CreateHostGroupRequest + # @param host_group [::Google::Cloud::NetApp::V1::HostGroup, ::Hash] + # Required. Fields of the host group to create. + # @param host_group_id [::String] + # Required. ID of the host group to create. Must be unique within the parent + # resource. Must contain only letters, numbers, and hyphen, with + # the first character a letter or underscore, the last a letter or underscore + # or a number, and a 63 character maximum. + # + # @yield [response, operation] Access the result along with the RPC operation + # @yieldparam response [::Gapic::Operation] + # @yieldparam operation [::GRPC::ActiveCall::Operation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the RPC is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::CreateHostGroupRequest.new + # + # # Call the create_host_group method. + # result = client.create_host_group request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def create_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::CreateHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + metadata = @config.rpcs.create_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION + metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + header_params = {} + if request.parent + header_params["parent"] = request.parent + end + + request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") + metadata[:"x-goog-request-params"] ||= request_params_header + + options.apply_defaults timeout: @config.rpcs.create_host_group.timeout, + metadata: metadata, + retry_policy: @config.rpcs.create_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.call_rpc :create_host_group, request, options: options do |response, operation| + response = ::Gapic::Operation.new response, @operations_client, options: options + yield response, operation if block_given? + throw :response, response + end + rescue ::GRPC::BadStatus => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Updates an existing host group. + # + # @overload update_host_group(request, options = nil) + # Pass arguments to `update_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::UpdateHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::UpdateHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional. + # + # @overload update_host_group(host_group: nil, update_mask: nil) + # Pass arguments to `update_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param host_group [::Google::Cloud::NetApp::V1::HostGroup, ::Hash] + # Required. The host group to update. + # The host group's `name` field is used to identify the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # @param update_mask [::Google::Protobuf::FieldMask, ::Hash] + # Optional. The list of fields to update. + # + # @yield [response, operation] Access the result along with the RPC operation + # @yieldparam response [::Gapic::Operation] + # @yieldparam operation [::GRPC::ActiveCall::Operation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the RPC is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::UpdateHostGroupRequest.new + # + # # Call the update_host_group method. + # result = client.update_host_group request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def update_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::UpdateHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + metadata = @config.rpcs.update_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION + metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + header_params = {} + if request.host_group&.name + header_params["host_group.name"] = request.host_group.name + end + + request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") + metadata[:"x-goog-request-params"] ||= request_params_header + + options.apply_defaults timeout: @config.rpcs.update_host_group.timeout, + metadata: metadata, + retry_policy: @config.rpcs.update_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.call_rpc :update_host_group, request, options: options do |response, operation| + response = ::Gapic::Operation.new response, @operations_client, options: options + yield response, operation if block_given? + throw :response, response + end + rescue ::GRPC::BadStatus => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Deletes a host group. + # + # @overload delete_host_group(request, options = nil) + # Pass arguments to `delete_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::DeleteHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::DeleteHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional. + # + # @overload delete_host_group(name: nil) + # Pass arguments to `delete_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param name [::String] + # Required. The resource name of the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # + # @yield [response, operation] Access the result along with the RPC operation + # @yieldparam response [::Gapic::Operation] + # @yieldparam operation [::GRPC::ActiveCall::Operation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the RPC is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::DeleteHostGroupRequest.new + # + # # Call the delete_host_group method. + # result = client.delete_host_group request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def delete_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::DeleteHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + metadata = @config.rpcs.delete_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION + metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + header_params = {} + if request.name + header_params["name"] = request.name + end + + request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&") + metadata[:"x-goog-request-params"] ||= request_params_header + + options.apply_defaults timeout: @config.rpcs.delete_host_group.timeout, + metadata: metadata, + retry_policy: @config.rpcs.delete_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.call_rpc :delete_host_group, request, options: options do |response, operation| + response = ::Gapic::Operation.new response, @operations_client, options: options + yield response, operation if block_given? + throw :response, response + end + rescue ::GRPC::BadStatus => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Configuration class for the NetApp API. # @@ -6660,6 +7248,36 @@ class Rpcs # @return [::Gapic::Config::Method] # attr_reader :delete_quota_rule + ## + # RPC-specific configuration for `restore_backup_files` + # @return [::Gapic::Config::Method] + # + attr_reader :restore_backup_files + ## + # RPC-specific configuration for `list_host_groups` + # @return [::Gapic::Config::Method] + # + attr_reader :list_host_groups + ## + # RPC-specific configuration for `get_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :get_host_group + ## + # RPC-specific configuration for `create_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :create_host_group + ## + # RPC-specific configuration for `update_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :update_host_group + ## + # RPC-specific configuration for `delete_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :delete_host_group # @private def initialize parent_rpcs = nil @@ -6783,6 +7401,18 @@ def initialize parent_rpcs = nil @update_quota_rule = ::Gapic::Config::Method.new update_quota_rule_config delete_quota_rule_config = parent_rpcs.delete_quota_rule if parent_rpcs.respond_to? :delete_quota_rule @delete_quota_rule = ::Gapic::Config::Method.new delete_quota_rule_config + restore_backup_files_config = parent_rpcs.restore_backup_files if parent_rpcs.respond_to? :restore_backup_files + @restore_backup_files = ::Gapic::Config::Method.new restore_backup_files_config + list_host_groups_config = parent_rpcs.list_host_groups if parent_rpcs.respond_to? :list_host_groups + @list_host_groups = ::Gapic::Config::Method.new list_host_groups_config + get_host_group_config = parent_rpcs.get_host_group if parent_rpcs.respond_to? :get_host_group + @get_host_group = ::Gapic::Config::Method.new get_host_group_config + create_host_group_config = parent_rpcs.create_host_group if parent_rpcs.respond_to? :create_host_group + @create_host_group = ::Gapic::Config::Method.new create_host_group_config + update_host_group_config = parent_rpcs.update_host_group if parent_rpcs.respond_to? :update_host_group + @update_host_group = ::Gapic::Config::Method.new update_host_group_config + delete_host_group_config = parent_rpcs.delete_host_group if parent_rpcs.respond_to? :delete_host_group + @delete_host_group = ::Gapic::Config::Method.new delete_host_group_config yield self if block_given? end diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/paths.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/paths.rb index 553aaab8251c..3f18e35aaf96 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/paths.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/paths.rb @@ -102,6 +102,25 @@ def backup_vault_path project:, location:, backup_vault: "projects/#{project}/locations/#{location}/backupVaults/#{backup_vault}" end + ## + # Create a fully-qualified HostGroup resource string. + # + # The resource will be in the following format: + # + # `projects/{project}/locations/{location}/hostGroups/{host_group}` + # + # @param project [String] + # @param location [String] + # @param host_group [String] + # + # @return [::String] + def host_group_path project:, location:, host_group: + raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/" + raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/" + + "projects/#{project}/locations/#{location}/hostGroups/#{host_group}" + end + ## # Create a fully-qualified KmsConfig resource string. # diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/client.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/client.rb index 509114971c94..1e4bf81c59f0 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/client.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/client.rb @@ -5751,6 +5751,552 @@ def delete_quota_rule request, options = nil raise ::Google::Cloud::Error.from_error(e) end + ## + # Restore files from a backup to a volume. + # + # @overload restore_backup_files(request, options = nil) + # Pass arguments to `restore_backup_files` via a request object, either of type + # {::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload restore_backup_files(name: nil, backup: nil, file_list: nil, restore_destination_path: nil) + # Pass arguments to `restore_backup_files` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param name [::String] + # Required. The volume resource name, in the format + # `projects/{project_id}/locations/{location}/volumes/{volume_id}` + # @param backup [::String] + # Required. The backup resource name, in the format + # `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}` + # @param file_list [::Array<::String>] + # Required. List of files to be restored, specified by their absolute path in + # the source volume. + # @param restore_destination_path [::String] + # Optional. Absolute directory path in the destination volume. This is + # required if the `file_list` is provided. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::RestoreBackupFilesRequest.new + # + # # Call the restore_backup_files method. + # result = client.restore_backup_files request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def restore_backup_files request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.restore_backup_files.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.restore_backup_files.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.restore_backup_files.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.restore_backup_files request, options do |result, operation| + result = ::Gapic::Operation.new result, @operations_client, options: options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns a list of host groups in a `location`. Use `-` as location to list + # host groups across all locations. + # + # @overload list_host_groups(request, options = nil) + # Pass arguments to `list_host_groups` via a request object, either of type + # {::Google::Cloud::NetApp::V1::ListHostGroupsRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::ListHostGroupsRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload list_host_groups(parent: nil, page_size: nil, page_token: nil, filter: nil, order_by: nil) + # Pass arguments to `list_host_groups` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param parent [::String] + # Required. Parent value for ListHostGroupsRequest + # @param page_size [::Integer] + # Optional. Requested page size. Server may return fewer items than + # requested. If unspecified, the server will pick an appropriate default. + # @param page_token [::String] + # Optional. A token identifying a page of results the server should return. + # @param filter [::String] + # Optional. Filter to apply to the request. + # @param order_by [::String] + # Optional. Hint for how to order the results + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::NetApp::V1::HostGroup>] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::NetApp::V1::HostGroup>] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::ListHostGroupsRequest.new + # + # # Call the list_host_groups method. + # result = client.list_host_groups request + # + # # The returned object is of type Gapic::PagedEnumerable. You can iterate + # # over elements, and API calls will be issued to fetch pages as needed. + # result.each do |item| + # # Each element is of type ::Google::Cloud::NetApp::V1::HostGroup. + # p item + # end + # + def list_host_groups request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::ListHostGroupsRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.list_host_groups.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.list_host_groups.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.list_host_groups.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.list_host_groups request, options do |result, operation| + result = ::Gapic::Rest::PagedEnumerable.new @net_app_stub, :list_host_groups, "host_groups", request, result, options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Returns details of the specified host group. + # + # @overload get_host_group(request, options = nil) + # Pass arguments to `get_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::GetHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::GetHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload get_host_group(name: nil) + # Pass arguments to `get_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param name [::String] + # Required. The resource name of the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::NetApp::V1::HostGroup] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::NetApp::V1::HostGroup] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::GetHostGroupRequest.new + # + # # Call the get_host_group method. + # result = client.get_host_group request + # + # # The returned object is of type Google::Cloud::NetApp::V1::HostGroup. + # p result + # + def get_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::GetHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.get_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.get_host_group.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.get_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.get_host_group request, options do |result, operation| + yield result, operation if block_given? + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Creates a new host group. + # + # @overload create_host_group(request, options = nil) + # Pass arguments to `create_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::CreateHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::CreateHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload create_host_group(parent: nil, host_group: nil, host_group_id: nil) + # Pass arguments to `create_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param parent [::String] + # Required. Parent value for CreateHostGroupRequest + # @param host_group [::Google::Cloud::NetApp::V1::HostGroup, ::Hash] + # Required. Fields of the host group to create. + # @param host_group_id [::String] + # Required. ID of the host group to create. Must be unique within the parent + # resource. Must contain only letters, numbers, and hyphen, with + # the first character a letter or underscore, the last a letter or underscore + # or a number, and a 63 character maximum. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::CreateHostGroupRequest.new + # + # # Call the create_host_group method. + # result = client.create_host_group request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def create_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::CreateHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.create_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.create_host_group.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.create_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.create_host_group request, options do |result, operation| + result = ::Gapic::Operation.new result, @operations_client, options: options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Updates an existing host group. + # + # @overload update_host_group(request, options = nil) + # Pass arguments to `update_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::UpdateHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::UpdateHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload update_host_group(host_group: nil, update_mask: nil) + # Pass arguments to `update_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param host_group [::Google::Cloud::NetApp::V1::HostGroup, ::Hash] + # Required. The host group to update. + # The host group's `name` field is used to identify the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # @param update_mask [::Google::Protobuf::FieldMask, ::Hash] + # Optional. The list of fields to update. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::UpdateHostGroupRequest.new + # + # # Call the update_host_group method. + # result = client.update_host_group request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def update_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::UpdateHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.update_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.update_host_group.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.update_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.update_host_group request, options do |result, operation| + result = ::Gapic::Operation.new result, @operations_client, options: options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + + ## + # Deletes a host group. + # + # @overload delete_host_group(request, options = nil) + # Pass arguments to `delete_host_group` via a request object, either of type + # {::Google::Cloud::NetApp::V1::DeleteHostGroupRequest} or an equivalent Hash. + # + # @param request [::Google::Cloud::NetApp::V1::DeleteHostGroupRequest, ::Hash] + # A request object representing the call parameters. Required. To specify no + # parameters, or to keep all the default parameter values, pass an empty Hash. + # @param options [::Gapic::CallOptions, ::Hash] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @overload delete_host_group(name: nil) + # Pass arguments to `delete_host_group` via keyword arguments. Note that at + # least one keyword argument is required. To specify no parameters, or to keep all + # the default parameter values, pass an empty Hash as a request object (see above). + # + # @param name [::String] + # Required. The resource name of the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Gapic::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Gapic::Operation] + # + # @raise [::Google::Cloud::Error] if the REST call is aborted. + # + # @example Basic example + # require "google/cloud/netapp/v1" + # + # # Create a client object. The client can be reused for multiple calls. + # client = Google::Cloud::NetApp::V1::NetApp::Rest::Client.new + # + # # Create a request. To set request fields, pass in keyword arguments. + # request = Google::Cloud::NetApp::V1::DeleteHostGroupRequest.new + # + # # Call the delete_host_group method. + # result = client.delete_host_group request + # + # # The returned object is of type Gapic::Operation. You can use it to + # # check the status of an operation, cancel it, or wait for results. + # # Here is how to wait for a response. + # result.wait_until_done! timeout: 60 + # if result.response? + # p result.response + # else + # puts "No response received." + # end + # + def delete_host_group request, options = nil + raise ::ArgumentError, "request must be provided" if request.nil? + + request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::NetApp::V1::DeleteHostGroupRequest + + # Converts hash and nil to an options object + options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h + + # Customize the options with defaults + call_metadata = @config.rpcs.delete_host_group.metadata.to_h + + # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers + call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ + lib_name: @config.lib_name, lib_version: @config.lib_version, + gapic_version: ::Google::Cloud::NetApp::V1::VERSION, + transports_version_send: [:rest] + + call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty? + call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id + + options.apply_defaults timeout: @config.rpcs.delete_host_group.timeout, + metadata: call_metadata, + retry_policy: @config.rpcs.delete_host_group.retry_policy + + options.apply_defaults timeout: @config.timeout, + metadata: @config.metadata, + retry_policy: @config.retry_policy + + @net_app_stub.delete_host_group request, options do |result, operation| + result = ::Gapic::Operation.new result, @operations_client, options: options + yield result, operation if block_given? + throw :response, result + end + rescue ::Gapic::Rest::Error => e + raise ::Google::Cloud::Error.from_error(e) + end + ## # Configuration class for the NetApp REST API. # @@ -6204,6 +6750,36 @@ class Rpcs # @return [::Gapic::Config::Method] # attr_reader :delete_quota_rule + ## + # RPC-specific configuration for `restore_backup_files` + # @return [::Gapic::Config::Method] + # + attr_reader :restore_backup_files + ## + # RPC-specific configuration for `list_host_groups` + # @return [::Gapic::Config::Method] + # + attr_reader :list_host_groups + ## + # RPC-specific configuration for `get_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :get_host_group + ## + # RPC-specific configuration for `create_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :create_host_group + ## + # RPC-specific configuration for `update_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :update_host_group + ## + # RPC-specific configuration for `delete_host_group` + # @return [::Gapic::Config::Method] + # + attr_reader :delete_host_group # @private def initialize parent_rpcs = nil @@ -6327,6 +6903,18 @@ def initialize parent_rpcs = nil @update_quota_rule = ::Gapic::Config::Method.new update_quota_rule_config delete_quota_rule_config = parent_rpcs.delete_quota_rule if parent_rpcs.respond_to? :delete_quota_rule @delete_quota_rule = ::Gapic::Config::Method.new delete_quota_rule_config + restore_backup_files_config = parent_rpcs.restore_backup_files if parent_rpcs.respond_to? :restore_backup_files + @restore_backup_files = ::Gapic::Config::Method.new restore_backup_files_config + list_host_groups_config = parent_rpcs.list_host_groups if parent_rpcs.respond_to? :list_host_groups + @list_host_groups = ::Gapic::Config::Method.new list_host_groups_config + get_host_group_config = parent_rpcs.get_host_group if parent_rpcs.respond_to? :get_host_group + @get_host_group = ::Gapic::Config::Method.new get_host_group_config + create_host_group_config = parent_rpcs.create_host_group if parent_rpcs.respond_to? :create_host_group + @create_host_group = ::Gapic::Config::Method.new create_host_group_config + update_host_group_config = parent_rpcs.update_host_group if parent_rpcs.respond_to? :update_host_group + @update_host_group = ::Gapic::Config::Method.new update_host_group_config + delete_host_group_config = parent_rpcs.delete_host_group if parent_rpcs.respond_to? :delete_host_group + @delete_host_group = ::Gapic::Config::Method.new delete_host_group_config yield self if block_given? end diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/service_stub.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/service_stub.rb index dbb8dcd73bf4..9150a7065b04 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/service_stub.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/netapp/rest/service_stub.rb @@ -2473,6 +2473,246 @@ def delete_quota_rule request_pb, options = nil end end + ## + # Baseline implementation for the restore_backup_files REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Longrunning::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Longrunning::Operation] + # A result object deserialized from the server's reply + def restore_backup_files request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_restore_backup_files_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "restore_backup_files", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the list_host_groups REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::ListHostGroupsRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::NetApp::V1::ListHostGroupsResponse] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::NetApp::V1::ListHostGroupsResponse] + # A result object deserialized from the server's reply + def list_host_groups request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_list_host_groups_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "list_host_groups", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::NetApp::V1::ListHostGroupsResponse.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the get_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::GetHostGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Cloud::NetApp::V1::HostGroup] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Cloud::NetApp::V1::HostGroup] + # A result object deserialized from the server's reply + def get_host_group request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_get_host_group_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "get_host_group", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Cloud::NetApp::V1::HostGroup.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the create_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::CreateHostGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Longrunning::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Longrunning::Operation] + # A result object deserialized from the server's reply + def create_host_group request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_create_host_group_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "create_host_group", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the update_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::UpdateHostGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Longrunning::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Longrunning::Operation] + # A result object deserialized from the server's reply + def update_host_group request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_update_host_group_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "update_host_group", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + + ## + # Baseline implementation for the delete_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::DeleteHostGroupRequest] + # A request object representing the call parameters. Required. + # @param options [::Gapic::CallOptions] + # Overrides the default settings for this call, e.g, timeout, retries etc. Optional. + # + # @yield [result, operation] Access the result along with the TransportOperation object + # @yieldparam result [::Google::Longrunning::Operation] + # @yieldparam operation [::Gapic::Rest::TransportOperation] + # + # @return [::Google::Longrunning::Operation] + # A result object deserialized from the server's reply + def delete_host_group request_pb, options = nil + raise ::ArgumentError, "request must be provided" if request_pb.nil? + + verb, uri, query_string_params, body = ServiceStub.transcode_delete_host_group_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split "=", 2 } + else + {} + end + + response = @client_stub.make_http_request( + verb, + uri: uri, + body: body || "", + params: query_string_params, + method_name: "delete_host_group", + options: options + ) + operation = ::Gapic::Rest::TransportOperation.new response + result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true + catch :response do + yield result, operation if block_given? + result + end + end + ## # @private # @@ -3762,6 +4002,135 @@ def self.transcode_delete_quota_rule_request request_pb ) transcoder.transcode request_pb end + + ## + # @private + # + # GRPC transcoding helper method for the restore_backup_files REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_restore_backup_files_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/v1/{name}:restore", + body: "*", + matches: [ + ["name", %r{^projects/[^/]+/locations/[^/]+/volumes/[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the list_host_groups REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::ListHostGroupsRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_list_host_groups_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/v1/{parent}/hostGroups", + matches: [ + ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the get_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::GetHostGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_get_host_group_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/v1/{name}", + matches: [ + ["name", %r{^projects/[^/]+/locations/[^/]+/hostGroups/[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the create_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::CreateHostGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_create_host_group_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/v1/{parent}/hostGroups", + body: "host_group", + matches: [ + ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the update_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::UpdateHostGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_update_host_group_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :patch, + uri_template: "/v1/{host_group.name}", + body: "host_group", + matches: [ + ["host_group.name", %r{^projects/[^/]+/locations/[^/]+/hostGroups/[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # + # GRPC transcoding helper method for the delete_host_group REST call + # + # @param request_pb [::Google::Cloud::NetApp::V1::DeleteHostGroupRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def self.transcode_delete_host_group_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :delete, + uri_template: "/v1/{name}", + matches: [ + ["name", %r{^projects/[^/]+/locations/[^/]+/hostGroups/[^/]+/?$}, false] + ] + ) + transcoder.transcode request_pb + end end end end diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/storage_pool_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/storage_pool_pb.rb index 6a23449dc142..f3688dc38129 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/storage_pool_pb.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/storage_pool_pb.rb @@ -11,7 +11,7 @@ require 'google/protobuf/timestamp_pb' -descriptor_data = "\n)google/cloud/netapp/v1/storage_pool.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/cloud/netapp/v1/common.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"P\n\x15GetStoragePoolRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\"\xb1\x01\n\x17ListStoragePoolsRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/StoragePool\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x05 \x01(\tB\x03\xe0\x41\x01\"\x84\x01\n\x18ListStoragePoolsResponse\x12:\n\rstorage_pools\x18\x01 \x03(\x0b\x32#.google.cloud.netapp.v1.StoragePool\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\xb3\x01\n\x18\x43reateStoragePoolRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/StoragePool\x12\x1c\n\x0fstorage_pool_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12>\n\x0cstorage_pool\x18\x03 \x01(\x0b\x32#.google.cloud.netapp.v1.StoragePoolB\x03\xe0\x41\x02\"\x90\x01\n\x18UpdateStoragePoolRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12>\n\x0cstorage_pool\x18\x02 \x01(\x0b\x32#.google.cloud.netapp.v1.StoragePoolB\x03\xe0\x41\x02\"S\n\x18\x44\x65leteStoragePoolRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\"Y\n\x1eSwitchActiveReplicaZoneRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\"\xe4\x0c\n\x0bStoragePool\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12@\n\rservice_level\x18\x02 \x01(\x0e\x32$.google.cloud.netapp.v1.ServiceLevelB\x03\xe0\x41\x02\x12\x19\n\x0c\x63\x61pacity_gib\x18\x03 \x01(\x03\x42\x03\xe0\x41\x02\x12 \n\x13volume_capacity_gib\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03\x12\x19\n\x0cvolume_count\x18\x05 \x01(\x05\x42\x03\xe0\x41\x03\x12=\n\x05state\x18\x06 \x01(\x0e\x32).google.cloud.netapp.v1.StoragePool.StateB\x03\xe0\x41\x03\x12\x1a\n\rstate_details\x18\x07 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x18\n\x0b\x64\x65scription\x18\t \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x06labels\x18\n \x03(\x0b\x32/.google.cloud.netapp.v1.StoragePool.LabelsEntryB\x03\xe0\x41\x01\x12\x37\n\x07network\x18\x0b \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1e\x63ompute.googleapis.com/Network\x12G\n\x10\x61\x63tive_directory\x18\x0c \x01(\tB-\xe0\x41\x01\xfa\x41\'\n%netapp.googleapis.com/ActiveDirectory\x12;\n\nkms_config\x18\r \x01(\tB\'\xe0\x41\x01\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\x12\x19\n\x0cldap_enabled\x18\x0e \x01(\x08\x42\x03\xe0\x41\x01\x12\x16\n\tpsa_range\x18\x0f \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0f\x65ncryption_type\x18\x10 \x01(\x0e\x32&.google.cloud.netapp.v1.EncryptionTypeB\x03\xe0\x41\x03\x12&\n\x15global_access_allowed\x18\x11 \x01(\x08\x42\x02\x18\x01H\x00\x88\x01\x01\x12\x1f\n\x12\x61llow_auto_tiering\x18\x12 \x01(\x08\x42\x03\xe0\x41\x01\x12\x19\n\x0creplica_zone\x18\x14 \x01(\tB\x03\xe0\x41\x01\x12\x11\n\x04zone\x18\x15 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rsatisfies_pzs\x18\x17 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1a\n\rsatisfies_pzi\x18\x18 \x01(\x08\x42\x03\xe0\x41\x03\x12\'\n\x1a\x63ustom_performance_enabled\x18\x19 \x01(\x08\x42\x03\xe0\x41\x01\x12#\n\x16total_throughput_mibps\x18\x1a \x01(\x03\x42\x03\xe0\x41\x01\x12\x17\n\ntotal_iops\x18\x1b \x01(\x03\x42\x03\xe0\x41\x01\x12\x1e\n\x11hot_tier_size_gib\x18\x1c \x01(\x03\x42\x03\xe0\x41\x01\x12-\n\x1b\x65nable_hot_tier_auto_resize\x18\x1d \x01(\x08\x42\x03\xe0\x41\x01H\x01\x88\x01\x01\x12\x36\n\x08qos_type\x18\x1e \x01(\x0e\x32\x1f.google.cloud.netapp.v1.QosTypeB\x03\xe0\x41\x01\x12\'\n\x1a\x61vailable_throughput_mibps\x18\x1f \x01(\x01\x42\x03\xe0\x41\x03\x12$\n\x17\x63old_tier_size_used_gib\x18! \x01(\x03\x42\x03\xe0\x41\x03\x12#\n\x16hot_tier_size_used_gib\x18\" \x01(\x03\x42\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"{\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\t\n\x05READY\x10\x01\x12\x0c\n\x08\x43REATING\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\x0c\n\x08UPDATING\x10\x04\x12\r\n\tRESTORING\x10\x05\x12\x0c\n\x08\x44ISABLED\x10\x06\x12\t\n\x05\x45RROR\x10\x07:\x87\x01\xea\x41\x83\x01\n!netapp.googleapis.com/StoragePool\x12\x43projects/{project}/locations/{location}/storagePools/{storage_pool}*\x0cstoragePools2\x0bstoragePoolB\x18\n\x16_global_access_allowedB\x1e\n\x1c_enable_hot_tier_auto_resize\"\xa8\x01\n\x1fValidateDirectoryServiceRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\x12L\n\x16\x64irectory_service_type\x18\x02 \x01(\x0e\x32,.google.cloud.netapp.v1.DirectoryServiceTypeB\xb2\x01\n\x1a\x63om.google.cloud.netapp.v1B\x10StoragePoolProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" +descriptor_data = "\n)google/cloud/netapp/v1/storage_pool.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/cloud/netapp/v1/common.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"P\n\x15GetStoragePoolRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\"\xb1\x01\n\x17ListStoragePoolsRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/StoragePool\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x05 \x01(\tB\x03\xe0\x41\x01\"\x84\x01\n\x18ListStoragePoolsResponse\x12:\n\rstorage_pools\x18\x01 \x03(\x0b\x32#.google.cloud.netapp.v1.StoragePool\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"\xb3\x01\n\x18\x43reateStoragePoolRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\x12!netapp.googleapis.com/StoragePool\x12\x1c\n\x0fstorage_pool_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12>\n\x0cstorage_pool\x18\x03 \x01(\x0b\x32#.google.cloud.netapp.v1.StoragePoolB\x03\xe0\x41\x02\"\x90\x01\n\x18UpdateStoragePoolRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12>\n\x0cstorage_pool\x18\x02 \x01(\x0b\x32#.google.cloud.netapp.v1.StoragePoolB\x03\xe0\x41\x02\"S\n\x18\x44\x65leteStoragePoolRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\"Y\n\x1eSwitchActiveReplicaZoneRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\"\xae\r\n\x0bStoragePool\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12@\n\rservice_level\x18\x02 \x01(\x0e\x32$.google.cloud.netapp.v1.ServiceLevelB\x03\xe0\x41\x02\x12\x19\n\x0c\x63\x61pacity_gib\x18\x03 \x01(\x03\x42\x03\xe0\x41\x02\x12 \n\x13volume_capacity_gib\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03\x12\x19\n\x0cvolume_count\x18\x05 \x01(\x05\x42\x03\xe0\x41\x03\x12=\n\x05state\x18\x06 \x01(\x0e\x32).google.cloud.netapp.v1.StoragePool.StateB\x03\xe0\x41\x03\x12\x1a\n\rstate_details\x18\x07 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x18\n\x0b\x64\x65scription\x18\t \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x06labels\x18\n \x03(\x0b\x32/.google.cloud.netapp.v1.StoragePool.LabelsEntryB\x03\xe0\x41\x01\x12\x37\n\x07network\x18\x0b \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1e\x63ompute.googleapis.com/Network\x12G\n\x10\x61\x63tive_directory\x18\x0c \x01(\tB-\xe0\x41\x01\xfa\x41\'\n%netapp.googleapis.com/ActiveDirectory\x12;\n\nkms_config\x18\r \x01(\tB\'\xe0\x41\x01\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\x12\x19\n\x0cldap_enabled\x18\x0e \x01(\x08\x42\x03\xe0\x41\x01\x12\x16\n\tpsa_range\x18\x0f \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0f\x65ncryption_type\x18\x10 \x01(\x0e\x32&.google.cloud.netapp.v1.EncryptionTypeB\x03\xe0\x41\x03\x12&\n\x15global_access_allowed\x18\x11 \x01(\x08\x42\x02\x18\x01H\x00\x88\x01\x01\x12\x1f\n\x12\x61llow_auto_tiering\x18\x12 \x01(\x08\x42\x03\xe0\x41\x01\x12\x19\n\x0creplica_zone\x18\x14 \x01(\tB\x03\xe0\x41\x01\x12\x11\n\x04zone\x18\x15 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rsatisfies_pzs\x18\x17 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1a\n\rsatisfies_pzi\x18\x18 \x01(\x08\x42\x03\xe0\x41\x03\x12\'\n\x1a\x63ustom_performance_enabled\x18\x19 \x01(\x08\x42\x03\xe0\x41\x01\x12#\n\x16total_throughput_mibps\x18\x1a \x01(\x03\x42\x03\xe0\x41\x01\x12\x17\n\ntotal_iops\x18\x1b \x01(\x03\x42\x03\xe0\x41\x01\x12\x1e\n\x11hot_tier_size_gib\x18\x1c \x01(\x03\x42\x03\xe0\x41\x01\x12-\n\x1b\x65nable_hot_tier_auto_resize\x18\x1d \x01(\x08\x42\x03\xe0\x41\x01H\x01\x88\x01\x01\x12\x36\n\x08qos_type\x18\x1e \x01(\x0e\x32\x1f.google.cloud.netapp.v1.QosTypeB\x03\xe0\x41\x01\x12\'\n\x1a\x61vailable_throughput_mibps\x18\x1f \x01(\x01\x42\x03\xe0\x41\x03\x12$\n\x17\x63old_tier_size_used_gib\x18! \x01(\x03\x42\x03\xe0\x41\x03\x12#\n\x16hot_tier_size_used_gib\x18\" \x01(\x03\x42\x03\xe0\x41\x03\x12?\n\x04type\x18# \x01(\x0e\x32\'.google.cloud.netapp.v1.StoragePoolTypeB\x03\xe0\x41\x01H\x02\x88\x01\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"{\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\t\n\x05READY\x10\x01\x12\x0c\n\x08\x43REATING\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\x0c\n\x08UPDATING\x10\x04\x12\r\n\tRESTORING\x10\x05\x12\x0c\n\x08\x44ISABLED\x10\x06\x12\t\n\x05\x45RROR\x10\x07:\x87\x01\xea\x41\x83\x01\n!netapp.googleapis.com/StoragePool\x12\x43projects/{project}/locations/{location}/storagePools/{storage_pool}*\x0cstoragePools2\x0bstoragePoolB\x18\n\x16_global_access_allowedB\x1e\n\x1c_enable_hot_tier_auto_resizeB\x07\n\x05_type\"\xa8\x01\n\x1fValidateDirectoryServiceRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\x12L\n\x16\x64irectory_service_type\x18\x02 \x01(\x0e\x32,.google.cloud.netapp.v1.DirectoryServiceTypeB\xb2\x01\n\x1a\x63om.google.cloud.netapp.v1B\x10StoragePoolProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool diff --git a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/volume_pb.rb b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/volume_pb.rb index a74ef30f9518..4309761fd0ac 100644 --- a/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/volume_pb.rb +++ b/google-cloud-netapp-v1/lib/google/cloud/netapp/v1/volume_pb.rb @@ -12,7 +12,7 @@ require 'google/protobuf/timestamp_pb' -descriptor_data = "\n#google/cloud/netapp/v1/volume.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/api/field_info.proto\x1a\x19google/api/resource.proto\x1a#google/cloud/netapp/v1/common.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x93\x01\n\x12ListVolumesRequest\x12\x34\n\x06parent\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\x12\x1cnetapp.googleapis.com/Volume\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"t\n\x13ListVolumesResponse\x12/\n\x07volumes\x18\x01 \x03(\x0b\x32\x1e.google.cloud.netapp.v1.Volume\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"F\n\x10GetVolumeRequest\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Volume\"\x98\x01\n\x13\x43reateVolumeRequest\x12\x34\n\x06parent\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\x12\x1cnetapp.googleapis.com/Volume\x12\x16\n\tvolume_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x33\n\x06volume\x18\x03 \x01(\x0b\x32\x1e.google.cloud.netapp.v1.VolumeB\x03\xe0\x41\x02\"\x80\x01\n\x13UpdateVolumeRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12\x33\n\x06volume\x18\x02 \x01(\x0b\x32\x1e.google.cloud.netapp.v1.VolumeB\x03\xe0\x41\x02\"X\n\x13\x44\x65leteVolumeRequest\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Volume\x12\r\n\x05\x66orce\x18\x02 \x01(\x08\"c\n\x13RevertVolumeRequest\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Volume\x12\x18\n\x0bsnapshot_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\"\xd5\x11\n\x06Volume\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x38\n\x05state\x18\x02 \x01(\x0e\x32$.google.cloud.netapp.v1.Volume.StateB\x03\xe0\x41\x03\x12\x1a\n\rstate_details\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x17\n\nshare_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\tpsa_range\x18\x06 \x01(\tB\x03\xe0\x41\x03\x12?\n\x0cstorage_pool\x18\x07 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\x12\x37\n\x07network\x18\x08 \x01(\tB&\xe0\x41\x03\xfa\x41 \n\x1e\x63ompute.googleapis.com/Network\x12@\n\rservice_level\x18\t \x01(\x0e\x32$.google.cloud.netapp.v1.ServiceLevelB\x03\xe0\x41\x03\x12\x19\n\x0c\x63\x61pacity_gib\x18\n \x01(\x03\x42\x03\xe0\x41\x02\x12@\n\rexport_policy\x18\x0b \x01(\x0b\x32$.google.cloud.netapp.v1.ExportPolicyB\x03\xe0\x41\x01\x12\x39\n\tprotocols\x18\x0c \x03(\x0e\x32!.google.cloud.netapp.v1.ProtocolsB\x03\xe0\x41\x02\x12>\n\x0csmb_settings\x18\r \x03(\x0e\x32#.google.cloud.netapp.v1.SMBSettingsB\x03\xe0\x41\x01\x12?\n\rmount_options\x18\x0e \x03(\x0b\x32#.google.cloud.netapp.v1.MountOptionB\x03\xe0\x41\x03\x12\x1d\n\x10unix_permissions\x18\x0f \x01(\tB\x03\xe0\x41\x01\x12?\n\x06labels\x18\x10 \x03(\x0b\x32*.google.cloud.netapp.v1.Volume.LabelsEntryB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x11 \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0fsnapshot_policy\x18\x12 \x01(\x0b\x32&.google.cloud.netapp.v1.SnapshotPolicyB\x03\xe0\x41\x01\x12\x19\n\x0csnap_reserve\x18\x13 \x01(\x01\x42\x03\xe0\x41\x01\x12\x1f\n\x12snapshot_directory\x18\x14 \x01(\x08\x42\x03\xe0\x41\x01\x12\x15\n\x08used_gib\x18\x15 \x01(\x03\x42\x03\xe0\x41\x03\x12\x42\n\x0esecurity_style\x18\x16 \x01(\x0e\x32%.google.cloud.netapp.v1.SecurityStyleB\x03\xe0\x41\x01\x12\x1d\n\x10kerberos_enabled\x18\x17 \x01(\x08\x42\x03\xe0\x41\x01\x12\x19\n\x0cldap_enabled\x18\x18 \x01(\x08\x42\x03\xe0\x41\x03\x12G\n\x10\x61\x63tive_directory\x18\x19 \x01(\tB-\xe0\x41\x03\xfa\x41\'\n%netapp.googleapis.com/ActiveDirectory\x12J\n\x12restore_parameters\x18\x1a \x01(\x0b\x32).google.cloud.netapp.v1.RestoreParametersB\x03\xe0\x41\x01\x12;\n\nkms_config\x18\x1b \x01(\tB\'\xe0\x41\x03\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\x12\x44\n\x0f\x65ncryption_type\x18\x1c \x01(\x0e\x32&.google.cloud.netapp.v1.EncryptionTypeB\x03\xe0\x41\x03\x12\x1c\n\x0fhas_replication\x18\x1d \x01(\x08\x42\x03\xe0\x41\x03\x12@\n\rbackup_config\x18\x1e \x01(\x0b\x32$.google.cloud.netapp.v1.BackupConfigH\x00\x88\x01\x01\x12I\n\x12restricted_actions\x18\x1f \x03(\x0e\x32(.google.cloud.netapp.v1.RestrictedActionB\x03\xe0\x41\x01\x12\x1b\n\x0elarge_capacity\x18 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12multiple_endpoints\x18! \x01(\x08\x42\x03\xe0\x41\x01\x12\x42\n\x0etiering_policy\x18\" \x01(\x0b\x32%.google.cloud.netapp.v1.TieringPolicyH\x01\x88\x01\x01\x12\x19\n\x0creplica_zone\x18$ \x01(\tB\x03\xe0\x41\x03\x12\x11\n\x04zone\x18% \x01(\tB\x03\xe0\x41\x03\x12\x1f\n\x12\x63old_tier_size_gib\x18\' \x01(\x03\x42\x03\xe0\x41\x03\x12_\n\x1dhybrid_replication_parameters\x18( \x01(\x0b\x32\x33.google.cloud.netapp.v1.HybridReplicationParametersB\x03\xe0\x41\x01\x12\x1d\n\x10throughput_mibps\x18) \x01(\x01\x42\x03\xe0\x41\x01\x12#\n\x16hot_tier_size_used_gib\x18, \x01(\x03\x42\x03\xe0\x41\x03\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x99\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\t\n\x05READY\x10\x01\x12\x0c\n\x08\x43REATING\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\x0c\n\x08UPDATING\x10\x04\x12\r\n\tRESTORING\x10\x05\x12\x0c\n\x08\x44ISABLED\x10\x06\x12\t\n\x05\x45RROR\x10\x07\x12\r\n\tPREPARING\x10\x08\x12\r\n\tREAD_ONLY\x10\t:l\xea\x41i\n\x1cnetapp.googleapis.com/Volume\x12\x38projects/{project}/locations/{location}/volumes/{volume}*\x07volumes2\x06volumeB\x10\n\x0e_backup_configB\x11\n\x0f_tiering_policy\"R\n\x0c\x45xportPolicy\x12\x42\n\x05rules\x18\x01 \x03(\x0b\x32..google.cloud.netapp.v1.SimpleExportPolicyRuleB\x03\xe0\x41\x02\"\xef\x06\n\x16SimpleExportPolicyRule\x12\x1c\n\x0f\x61llowed_clients\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0fhas_root_access\x18\x02 \x01(\tH\x01\x88\x01\x01\x12<\n\x0b\x61\x63\x63\x65ss_type\x18\x03 \x01(\x0e\x32\".google.cloud.netapp.v1.AccessTypeH\x02\x88\x01\x01\x12\x12\n\x05nfsv3\x18\x04 \x01(\x08H\x03\x88\x01\x01\x12\x12\n\x05nfsv4\x18\x05 \x01(\x08H\x04\x88\x01\x01\x12!\n\x14kerberos_5_read_only\x18\x06 \x01(\x08H\x05\x88\x01\x01\x12\"\n\x15kerberos_5_read_write\x18\x07 \x01(\x08H\x06\x88\x01\x01\x12\"\n\x15kerberos_5i_read_only\x18\x08 \x01(\x08H\x07\x88\x01\x01\x12#\n\x16kerberos_5i_read_write\x18\t \x01(\x08H\x08\x88\x01\x01\x12\"\n\x15kerberos_5p_read_only\x18\n \x01(\x08H\t\x88\x01\x01\x12#\n\x16kerberos_5p_read_write\x18\x0b \x01(\x08H\n\x88\x01\x01\x12X\n\x0bsquash_mode\x18\x0c \x01(\x0e\x32\x39.google.cloud.netapp.v1.SimpleExportPolicyRule.SquashModeB\x03\xe0\x41\x01H\x0b\x88\x01\x01\x12\x1a\n\x08\x61non_uid\x18\r \x01(\x03\x42\x03\xe0\x41\x01H\x0c\x88\x01\x01\"^\n\nSquashMode\x12\x1b\n\x17SQUASH_MODE_UNSPECIFIED\x10\x00\x12\x12\n\x0eNO_ROOT_SQUASH\x10\x01\x12\x0f\n\x0bROOT_SQUASH\x10\x02\x12\x0e\n\nALL_SQUASH\x10\x03\x42\x12\n\x10_allowed_clientsB\x12\n\x10_has_root_accessB\x0e\n\x0c_access_typeB\x08\n\x06_nfsv3B\x08\n\x06_nfsv4B\x17\n\x15_kerberos_5_read_onlyB\x18\n\x16_kerberos_5_read_writeB\x18\n\x16_kerberos_5i_read_onlyB\x19\n\x17_kerberos_5i_read_writeB\x18\n\x16_kerberos_5p_read_onlyB\x19\n\x17_kerberos_5p_read_writeB\x0e\n\x0c_squash_modeB\x0b\n\t_anon_uid\"\x9a\x03\n\x0eSnapshotPolicy\x12\x14\n\x07\x65nabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x44\n\x0fhourly_schedule\x18\x02 \x01(\x0b\x32&.google.cloud.netapp.v1.HourlyScheduleH\x01\x88\x01\x01\x12\x42\n\x0e\x64\x61ily_schedule\x18\x03 \x01(\x0b\x32%.google.cloud.netapp.v1.DailyScheduleH\x02\x88\x01\x01\x12\x44\n\x0fweekly_schedule\x18\x04 \x01(\x0b\x32&.google.cloud.netapp.v1.WeeklyScheduleH\x03\x88\x01\x01\x12\x46\n\x10monthly_schedule\x18\x05 \x01(\x0b\x32\'.google.cloud.netapp.v1.MonthlyScheduleH\x04\x88\x01\x01\x42\n\n\x08_enabledB\x12\n\x10_hourly_scheduleB\x11\n\x0f_daily_scheduleB\x12\n\x10_weekly_scheduleB\x13\n\x11_monthly_schedule\"f\n\x0eHourlySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minute\"\x81\x01\n\rDailySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x12\x11\n\x04hour\x18\x03 \x01(\x01H\x02\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minuteB\x07\n\x05_hour\"\x9c\x01\n\x0eWeeklySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x12\x11\n\x04hour\x18\x03 \x01(\x01H\x02\x88\x01\x01\x12\x10\n\x03\x64\x61y\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minuteB\x07\n\x05_hourB\x06\n\x04_day\"\xb1\x01\n\x0fMonthlySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x12\x11\n\x04hour\x18\x03 \x01(\x01H\x02\x88\x01\x01\x12\x1a\n\rdays_of_month\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minuteB\x07\n\x05_hourB\x10\n\x0e_days_of_month\"\x9e\x01\n\x0bMountOption\x12\x0e\n\x06\x65xport\x18\x01 \x01(\t\x12\x13\n\x0b\x65xport_full\x18\x02 \x01(\t\x12\x33\n\x08protocol\x18\x03 \x01(\x0e\x32!.google.cloud.netapp.v1.Protocols\x12\x14\n\x0cinstructions\x18\x04 \x01(\t\x12\x1f\n\nip_address\x18\x05 \x01(\tB\x0b\xe0\x41\x03\xe2\x8c\xcf\xd7\x08\x02\x08\x02\"Q\n\x11RestoreParameters\x12\x19\n\x0fsource_snapshot\x18\x01 \x01(\tH\x00\x12\x17\n\rsource_backup\x18\x02 \x01(\tH\x00\x42\x08\n\x06source\"\x9a\x02\n\x0c\x42\x61\x63kupConfig\x12\x43\n\x0f\x62\x61\x63kup_policies\x18\x01 \x03(\tB*\xe0\x41\x01\xfa\x41$\n\"netapp.googleapis.com/BackupPolicy\x12?\n\x0c\x62\x61\x63kup_vault\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!netapp.googleapis.com/BackupVault\x12*\n\x18scheduled_backup_enabled\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01H\x00\x88\x01\x01\x12$\n\x12\x62\x61\x63kup_chain_bytes\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\x42\x1b\n\x19_scheduled_backup_enabledB\x15\n\x13_backup_chain_bytes\"\xca\x02\n\rTieringPolicy\x12O\n\x0btier_action\x18\x01 \x01(\x0e\x32\x30.google.cloud.netapp.v1.TieringPolicy.TierActionB\x03\xe0\x41\x01H\x00\x88\x01\x01\x12(\n\x16\x63ooling_threshold_days\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01H\x01\x88\x01\x01\x12.\n\x1chot_tier_bypass_mode_enabled\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01H\x02\x88\x01\x01\"B\n\nTierAction\x12\x1b\n\x17TIER_ACTION_UNSPECIFIED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x12\n\n\x06PAUSED\x10\x02\x42\x0e\n\x0c_tier_actionB\x19\n\x17_cooling_threshold_daysB\x1f\n\x1d_hot_tier_bypass_mode_enabled\"\xc3\x06\n\x1bHybridReplicationParameters\x12>\n\x0breplication\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/Replication\x12\x1d\n\x10peer_volume_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11peer_cluster_name\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rpeer_svm_name\x18\x04 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11peer_ip_addresses\x18\x05 \x03(\tB\x03\xe0\x41\x02\x12\x1d\n\x10\x63luster_location\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x07 \x01(\tB\x03\xe0\x41\x01\x12T\n\x06labels\x18\x08 \x03(\x0b\x32?.google.cloud.netapp.v1.HybridReplicationParameters.LabelsEntryB\x03\xe0\x41\x01\x12T\n\x14replication_schedule\x18\t \x01(\x0e\x32\x31.google.cloud.netapp.v1.HybridReplicationScheduleB\x03\xe0\x41\x01\x12u\n\x17hybrid_replication_type\x18\n \x01(\x0e\x32O.google.cloud.netapp.v1.HybridReplicationParameters.VolumeHybridReplicationTypeB\x03\xe0\x41\x01\x12+\n\x1elarge_volume_constituent_count\x18\x0b \x01(\x05\x42\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xb0\x01\n\x1bVolumeHybridReplicationType\x12.\n*VOLUME_HYBRID_REPLICATION_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tMIGRATION\x10\x01\x12\x1a\n\x16\x43ONTINUOUS_REPLICATION\x10\x02\x12\x16\n\x12ONPREM_REPLICATION\x10\x03\x12\x1e\n\x1aREVERSE_ONPREM_REPLICATION\x10\x04*E\n\tProtocols\x12\x19\n\x15PROTOCOLS_UNSPECIFIED\x10\x00\x12\t\n\x05NFSV3\x10\x01\x12\t\n\x05NFSV4\x10\x02\x12\x07\n\x03SMB\x10\x03*W\n\nAccessType\x12\x1b\n\x17\x41\x43\x43\x45SS_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tREAD_ONLY\x10\x01\x12\x0e\n\nREAD_WRITE\x10\x02\x12\r\n\tREAD_NONE\x10\x03*\xe8\x01\n\x0bSMBSettings\x12\x1c\n\x18SMB_SETTINGS_UNSPECIFIED\x10\x00\x12\x10\n\x0c\x45NCRYPT_DATA\x10\x01\x12\r\n\tBROWSABLE\x10\x02\x12\x11\n\rCHANGE_NOTIFY\x10\x03\x12\x11\n\rNON_BROWSABLE\x10\x04\x12\x0b\n\x07OPLOCKS\x10\x05\x12\x11\n\rSHOW_SNAPSHOT\x10\x06\x12\x1a\n\x16SHOW_PREVIOUS_VERSIONS\x10\x07\x12\x1c\n\x18\x41\x43\x43\x45SS_BASED_ENUMERATION\x10\x08\x12\x1a\n\x16\x43ONTINUOUSLY_AVAILABLE\x10\t*C\n\rSecurityStyle\x12\x1e\n\x1aSECURITY_STYLE_UNSPECIFIED\x10\x00\x12\x08\n\x04NTFS\x10\x01\x12\x08\n\x04UNIX\x10\x02*A\n\x10RestrictedAction\x12!\n\x1dRESTRICTED_ACTION_UNSPECIFIED\x10\x00\x12\n\n\x06\x44\x45LETE\x10\x01\x42\xad\x01\n\x1a\x63om.google.cloud.netapp.v1B\x0bVolumeProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" +descriptor_data = "\n#google/cloud/netapp/v1/volume.proto\x12\x16google.cloud.netapp.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/api/field_info.proto\x1a\x19google/api/resource.proto\x1a#google/cloud/netapp/v1/common.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\x93\x01\n\x12ListVolumesRequest\x12\x34\n\x06parent\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\x12\x1cnetapp.googleapis.com/Volume\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\x12\x10\n\x08order_by\x18\x05 \x01(\t\"t\n\x13ListVolumesResponse\x12/\n\x07volumes\x18\x01 \x03(\x0b\x32\x1e.google.cloud.netapp.v1.Volume\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"F\n\x10GetVolumeRequest\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Volume\"\x98\x01\n\x13\x43reateVolumeRequest\x12\x34\n\x06parent\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\x12\x1cnetapp.googleapis.com/Volume\x12\x16\n\tvolume_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x33\n\x06volume\x18\x03 \x01(\x0b\x32\x1e.google.cloud.netapp.v1.VolumeB\x03\xe0\x41\x02\"\x80\x01\n\x13UpdateVolumeRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\x12\x33\n\x06volume\x18\x02 \x01(\x0b\x32\x1e.google.cloud.netapp.v1.VolumeB\x03\xe0\x41\x02\"X\n\x13\x44\x65leteVolumeRequest\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Volume\x12\r\n\x05\x66orce\x18\x02 \x01(\x08\"c\n\x13RevertVolumeRequest\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Volume\x12\x18\n\x0bsnapshot_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\"\xde\x12\n\x06Volume\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x38\n\x05state\x18\x02 \x01(\x0e\x32$.google.cloud.netapp.v1.Volume.StateB\x03\xe0\x41\x03\x12\x1a\n\rstate_details\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x17\n\nshare_name\x18\x05 \x01(\tB\x03\xe0\x41\x02\x12\x16\n\tpsa_range\x18\x06 \x01(\tB\x03\xe0\x41\x03\x12?\n\x0cstorage_pool\x18\x07 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/StoragePool\x12\x37\n\x07network\x18\x08 \x01(\tB&\xe0\x41\x03\xfa\x41 \n\x1e\x63ompute.googleapis.com/Network\x12@\n\rservice_level\x18\t \x01(\x0e\x32$.google.cloud.netapp.v1.ServiceLevelB\x03\xe0\x41\x03\x12\x19\n\x0c\x63\x61pacity_gib\x18\n \x01(\x03\x42\x03\xe0\x41\x02\x12@\n\rexport_policy\x18\x0b \x01(\x0b\x32$.google.cloud.netapp.v1.ExportPolicyB\x03\xe0\x41\x01\x12\x39\n\tprotocols\x18\x0c \x03(\x0e\x32!.google.cloud.netapp.v1.ProtocolsB\x03\xe0\x41\x02\x12>\n\x0csmb_settings\x18\r \x03(\x0e\x32#.google.cloud.netapp.v1.SMBSettingsB\x03\xe0\x41\x01\x12?\n\rmount_options\x18\x0e \x03(\x0b\x32#.google.cloud.netapp.v1.MountOptionB\x03\xe0\x41\x03\x12\x1d\n\x10unix_permissions\x18\x0f \x01(\tB\x03\xe0\x41\x01\x12?\n\x06labels\x18\x10 \x03(\x0b\x32*.google.cloud.netapp.v1.Volume.LabelsEntryB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x11 \x01(\tB\x03\xe0\x41\x01\x12\x44\n\x0fsnapshot_policy\x18\x12 \x01(\x0b\x32&.google.cloud.netapp.v1.SnapshotPolicyB\x03\xe0\x41\x01\x12\x19\n\x0csnap_reserve\x18\x13 \x01(\x01\x42\x03\xe0\x41\x01\x12\x1f\n\x12snapshot_directory\x18\x14 \x01(\x08\x42\x03\xe0\x41\x01\x12\x15\n\x08used_gib\x18\x15 \x01(\x03\x42\x03\xe0\x41\x03\x12\x42\n\x0esecurity_style\x18\x16 \x01(\x0e\x32%.google.cloud.netapp.v1.SecurityStyleB\x03\xe0\x41\x01\x12\x1d\n\x10kerberos_enabled\x18\x17 \x01(\x08\x42\x03\xe0\x41\x01\x12\x19\n\x0cldap_enabled\x18\x18 \x01(\x08\x42\x03\xe0\x41\x03\x12G\n\x10\x61\x63tive_directory\x18\x19 \x01(\tB-\xe0\x41\x03\xfa\x41\'\n%netapp.googleapis.com/ActiveDirectory\x12J\n\x12restore_parameters\x18\x1a \x01(\x0b\x32).google.cloud.netapp.v1.RestoreParametersB\x03\xe0\x41\x01\x12;\n\nkms_config\x18\x1b \x01(\tB\'\xe0\x41\x03\xfa\x41!\n\x1fnetapp.googleapis.com/KmsConfig\x12\x44\n\x0f\x65ncryption_type\x18\x1c \x01(\x0e\x32&.google.cloud.netapp.v1.EncryptionTypeB\x03\xe0\x41\x03\x12\x1c\n\x0fhas_replication\x18\x1d \x01(\x08\x42\x03\xe0\x41\x03\x12@\n\rbackup_config\x18\x1e \x01(\x0b\x32$.google.cloud.netapp.v1.BackupConfigH\x00\x88\x01\x01\x12I\n\x12restricted_actions\x18\x1f \x03(\x0e\x32(.google.cloud.netapp.v1.RestrictedActionB\x03\xe0\x41\x01\x12\x1b\n\x0elarge_capacity\x18 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12multiple_endpoints\x18! \x01(\x08\x42\x03\xe0\x41\x01\x12\x42\n\x0etiering_policy\x18\" \x01(\x0b\x32%.google.cloud.netapp.v1.TieringPolicyH\x01\x88\x01\x01\x12\x19\n\x0creplica_zone\x18$ \x01(\tB\x03\xe0\x41\x03\x12\x11\n\x04zone\x18% \x01(\tB\x03\xe0\x41\x03\x12\x1f\n\x12\x63old_tier_size_gib\x18\' \x01(\x03\x42\x03\xe0\x41\x03\x12_\n\x1dhybrid_replication_parameters\x18( \x01(\x0b\x32\x33.google.cloud.netapp.v1.HybridReplicationParametersB\x03\xe0\x41\x01\x12\x1d\n\x10throughput_mibps\x18) \x01(\x01\x42\x03\xe0\x41\x01\x12\x46\n\x10\x63\x61\x63he_parameters\x18* \x01(\x0b\x32\'.google.cloud.netapp.v1.CacheParametersB\x03\xe0\x41\x01\x12#\n\x16hot_tier_size_used_gib\x18, \x01(\x03\x42\x03\xe0\x41\x03\x12?\n\rblock_devices\x18- \x03(\x0b\x32#.google.cloud.netapp.v1.BlockDeviceB\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x99\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\t\n\x05READY\x10\x01\x12\x0c\n\x08\x43REATING\x10\x02\x12\x0c\n\x08\x44\x45LETING\x10\x03\x12\x0c\n\x08UPDATING\x10\x04\x12\r\n\tRESTORING\x10\x05\x12\x0c\n\x08\x44ISABLED\x10\x06\x12\t\n\x05\x45RROR\x10\x07\x12\r\n\tPREPARING\x10\x08\x12\r\n\tREAD_ONLY\x10\t:l\xea\x41i\n\x1cnetapp.googleapis.com/Volume\x12\x38projects/{project}/locations/{location}/volumes/{volume}*\x07volumes2\x06volumeB\x10\n\x0e_backup_configB\x11\n\x0f_tiering_policy\"R\n\x0c\x45xportPolicy\x12\x42\n\x05rules\x18\x01 \x03(\x0b\x32..google.cloud.netapp.v1.SimpleExportPolicyRuleB\x03\xe0\x41\x02\"\xef\x06\n\x16SimpleExportPolicyRule\x12\x1c\n\x0f\x61llowed_clients\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x1c\n\x0fhas_root_access\x18\x02 \x01(\tH\x01\x88\x01\x01\x12<\n\x0b\x61\x63\x63\x65ss_type\x18\x03 \x01(\x0e\x32\".google.cloud.netapp.v1.AccessTypeH\x02\x88\x01\x01\x12\x12\n\x05nfsv3\x18\x04 \x01(\x08H\x03\x88\x01\x01\x12\x12\n\x05nfsv4\x18\x05 \x01(\x08H\x04\x88\x01\x01\x12!\n\x14kerberos_5_read_only\x18\x06 \x01(\x08H\x05\x88\x01\x01\x12\"\n\x15kerberos_5_read_write\x18\x07 \x01(\x08H\x06\x88\x01\x01\x12\"\n\x15kerberos_5i_read_only\x18\x08 \x01(\x08H\x07\x88\x01\x01\x12#\n\x16kerberos_5i_read_write\x18\t \x01(\x08H\x08\x88\x01\x01\x12\"\n\x15kerberos_5p_read_only\x18\n \x01(\x08H\t\x88\x01\x01\x12#\n\x16kerberos_5p_read_write\x18\x0b \x01(\x08H\n\x88\x01\x01\x12X\n\x0bsquash_mode\x18\x0c \x01(\x0e\x32\x39.google.cloud.netapp.v1.SimpleExportPolicyRule.SquashModeB\x03\xe0\x41\x01H\x0b\x88\x01\x01\x12\x1a\n\x08\x61non_uid\x18\r \x01(\x03\x42\x03\xe0\x41\x01H\x0c\x88\x01\x01\"^\n\nSquashMode\x12\x1b\n\x17SQUASH_MODE_UNSPECIFIED\x10\x00\x12\x12\n\x0eNO_ROOT_SQUASH\x10\x01\x12\x0f\n\x0bROOT_SQUASH\x10\x02\x12\x0e\n\nALL_SQUASH\x10\x03\x42\x12\n\x10_allowed_clientsB\x12\n\x10_has_root_accessB\x0e\n\x0c_access_typeB\x08\n\x06_nfsv3B\x08\n\x06_nfsv4B\x17\n\x15_kerberos_5_read_onlyB\x18\n\x16_kerberos_5_read_writeB\x18\n\x16_kerberos_5i_read_onlyB\x19\n\x17_kerberos_5i_read_writeB\x18\n\x16_kerberos_5p_read_onlyB\x19\n\x17_kerberos_5p_read_writeB\x0e\n\x0c_squash_modeB\x0b\n\t_anon_uid\"\x9a\x03\n\x0eSnapshotPolicy\x12\x14\n\x07\x65nabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x44\n\x0fhourly_schedule\x18\x02 \x01(\x0b\x32&.google.cloud.netapp.v1.HourlyScheduleH\x01\x88\x01\x01\x12\x42\n\x0e\x64\x61ily_schedule\x18\x03 \x01(\x0b\x32%.google.cloud.netapp.v1.DailyScheduleH\x02\x88\x01\x01\x12\x44\n\x0fweekly_schedule\x18\x04 \x01(\x0b\x32&.google.cloud.netapp.v1.WeeklyScheduleH\x03\x88\x01\x01\x12\x46\n\x10monthly_schedule\x18\x05 \x01(\x0b\x32\'.google.cloud.netapp.v1.MonthlyScheduleH\x04\x88\x01\x01\x42\n\n\x08_enabledB\x12\n\x10_hourly_scheduleB\x11\n\x0f_daily_scheduleB\x12\n\x10_weekly_scheduleB\x13\n\x11_monthly_schedule\"f\n\x0eHourlySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minute\"\x81\x01\n\rDailySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x12\x11\n\x04hour\x18\x03 \x01(\x01H\x02\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minuteB\x07\n\x05_hour\"\x9c\x01\n\x0eWeeklySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x12\x11\n\x04hour\x18\x03 \x01(\x01H\x02\x88\x01\x01\x12\x10\n\x03\x64\x61y\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minuteB\x07\n\x05_hourB\x06\n\x04_day\"\xb1\x01\n\x0fMonthlySchedule\x12\x1e\n\x11snapshots_to_keep\x18\x01 \x01(\x01H\x00\x88\x01\x01\x12\x13\n\x06minute\x18\x02 \x01(\x01H\x01\x88\x01\x01\x12\x11\n\x04hour\x18\x03 \x01(\x01H\x02\x88\x01\x01\x12\x1a\n\rdays_of_month\x18\x04 \x01(\tH\x03\x88\x01\x01\x42\x14\n\x12_snapshots_to_keepB\t\n\x07_minuteB\x07\n\x05_hourB\x10\n\x0e_days_of_month\"\x9e\x01\n\x0bMountOption\x12\x0e\n\x06\x65xport\x18\x01 \x01(\t\x12\x13\n\x0b\x65xport_full\x18\x02 \x01(\t\x12\x33\n\x08protocol\x18\x03 \x01(\x0e\x32!.google.cloud.netapp.v1.Protocols\x12\x14\n\x0cinstructions\x18\x04 \x01(\t\x12\x1f\n\nip_address\x18\x05 \x01(\tB\x0b\xe0\x41\x03\xe2\x8c\xcf\xd7\x08\x02\x08\x02\"Q\n\x11RestoreParameters\x12\x19\n\x0fsource_snapshot\x18\x01 \x01(\tH\x00\x12\x17\n\rsource_backup\x18\x02 \x01(\tH\x00\x42\x08\n\x06source\"\x9a\x02\n\x0c\x42\x61\x63kupConfig\x12\x43\n\x0f\x62\x61\x63kup_policies\x18\x01 \x03(\tB*\xe0\x41\x01\xfa\x41$\n\"netapp.googleapis.com/BackupPolicy\x12?\n\x0c\x62\x61\x63kup_vault\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!netapp.googleapis.com/BackupVault\x12*\n\x18scheduled_backup_enabled\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01H\x00\x88\x01\x01\x12$\n\x12\x62\x61\x63kup_chain_bytes\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\x42\x1b\n\x19_scheduled_backup_enabledB\x15\n\x13_backup_chain_bytes\"\xca\x02\n\rTieringPolicy\x12O\n\x0btier_action\x18\x01 \x01(\x0e\x32\x30.google.cloud.netapp.v1.TieringPolicy.TierActionB\x03\xe0\x41\x01H\x00\x88\x01\x01\x12(\n\x16\x63ooling_threshold_days\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01H\x01\x88\x01\x01\x12.\n\x1chot_tier_bypass_mode_enabled\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01H\x02\x88\x01\x01\"B\n\nTierAction\x12\x1b\n\x17TIER_ACTION_UNSPECIFIED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x12\n\n\x06PAUSED\x10\x02\x42\x0e\n\x0c_tier_actionB\x19\n\x17_cooling_threshold_daysB\x1f\n\x1d_hot_tier_bypass_mode_enabled\"\xc3\x06\n\x1bHybridReplicationParameters\x12>\n\x0breplication\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!netapp.googleapis.com/Replication\x12\x1d\n\x10peer_volume_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11peer_cluster_name\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rpeer_svm_name\x18\x04 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11peer_ip_addresses\x18\x05 \x03(\tB\x03\xe0\x41\x02\x12\x1d\n\x10\x63luster_location\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x64\x65scription\x18\x07 \x01(\tB\x03\xe0\x41\x01\x12T\n\x06labels\x18\x08 \x03(\x0b\x32?.google.cloud.netapp.v1.HybridReplicationParameters.LabelsEntryB\x03\xe0\x41\x01\x12T\n\x14replication_schedule\x18\t \x01(\x0e\x32\x31.google.cloud.netapp.v1.HybridReplicationScheduleB\x03\xe0\x41\x01\x12u\n\x17hybrid_replication_type\x18\n \x01(\x0e\x32O.google.cloud.netapp.v1.HybridReplicationParameters.VolumeHybridReplicationTypeB\x03\xe0\x41\x01\x12+\n\x1elarge_volume_constituent_count\x18\x0b \x01(\x05\x42\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xb0\x01\n\x1bVolumeHybridReplicationType\x12.\n*VOLUME_HYBRID_REPLICATION_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tMIGRATION\x10\x01\x12\x1a\n\x16\x43ONTINUOUS_REPLICATION\x10\x02\x12\x16\n\x12ONPREM_REPLICATION\x10\x03\x12\x1e\n\x1aREVERSE_ONPREM_REPLICATION\x10\x04\"\xea\x04\n\x0f\x43\x61\x63heParameters\x12\x1d\n\x10peer_volume_name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11peer_cluster_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rpeer_svm_name\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x1e\n\x11peer_ip_addresses\x18\x04 \x03(\tB\x03\xe0\x41\x02\x12)\n\x17\x65nable_global_file_lock\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01H\x00\x88\x01\x01\x12>\n\x0c\x63\x61\x63he_config\x18\x06 \x01(\x0b\x32#.google.cloud.netapp.v1.CacheConfigB\x03\xe0\x41\x01\x12L\n\x0b\x63\x61\x63he_state\x18\x07 \x01(\x0e\x32\x32.google.cloud.netapp.v1.CacheParameters.CacheStateB\x03\xe0\x41\x03\x12\x14\n\x07\x63ommand\x18\x08 \x01(\tB\x03\xe0\x41\x03\x12\x44\n\x1bpeering_command_expiry_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12\x17\n\npassphrase\x18\n \x01(\tB\x03\xe0\x41\x03\x12\x1a\n\rstate_details\x18\x0c \x01(\tB\x03\xe0\x41\x03\"v\n\nCacheState\x12\x1b\n\x17\x43\x41\x43HE_STATE_UNSPECIFIED\x10\x00\x12\x1b\n\x17PENDING_CLUSTER_PEERING\x10\x01\x12\x17\n\x13PENDING_SVM_PEERING\x10\x02\x12\n\n\x06PEERED\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x42\x1a\n\x18_enable_global_file_lock\"\xbf\x03\n\x0b\x43\x61\x63heConfig\x12I\n\x12\x63\x61\x63he_pre_populate\x18\x01 \x01(\x0b\x32(.google.cloud.netapp.v1.CachePrePopulateB\x03\xe0\x41\x01\x12#\n\x11writeback_enabled\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01H\x00\x88\x01\x01\x12,\n\x1a\x63ifs_change_notify_enabled\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01H\x01\x88\x01\x01\x12`\n\x18\x63\x61\x63he_pre_populate_state\x18\x06 \x01(\x0e\x32\x39.google.cloud.netapp.v1.CacheConfig.CachePrePopulateStateB\x03\xe0\x41\x03\"{\n\x15\x43\x61\x63hePrePopulateState\x12(\n$CACHE_PRE_POPULATE_STATE_UNSPECIFIED\x10\x00\x12\x0e\n\nNOT_NEEDED\x10\x01\x12\x0f\n\x0bIN_PROGRESS\x10\x02\x12\x0c\n\x08\x43OMPLETE\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x42\x14\n\x12_writeback_enabledB\x1d\n\x1b_cifs_change_notify_enabled\"u\n\x10\x43\x61\x63hePrePopulate\x12\x16\n\tpath_list\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x1e\n\x11\x65xclude_path_list\x18\x02 \x03(\tB\x03\xe0\x41\x01\x12\x1b\n\trecursion\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01H\x00\x88\x01\x01\x42\x0c\n\n_recursion\"\xe7\x01\n\x0b\x42lockDevice\x12\x16\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01H\x00\x88\x01\x01\x12<\n\x0bhost_groups\x18\x02 \x03(\tB\'\xe0\x41\x01\xfa\x41!\n\x1fnetapp.googleapis.com/HostGroup\x12\x17\n\nidentifier\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x1a\n\x08size_gib\x18\x04 \x01(\x03\x42\x03\xe0\x41\x01H\x01\x88\x01\x01\x12\x37\n\x07os_type\x18\x05 \x01(\x0e\x32\x1e.google.cloud.netapp.v1.OsTypeB\x06\xe0\x41\x02\xe0\x41\x05\x42\x07\n\x05_nameB\x0b\n\t_size_gib\"\xc4\x01\n\x19RestoreBackupFilesRequest\x12\x32\n\x04name\x18\x01 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Volume\x12\x34\n\x06\x62\x61\x63kup\x18\x02 \x01(\tB$\xe0\x41\x02\xfa\x41\x1e\n\x1cnetapp.googleapis.com/Backup\x12\x16\n\tfile_list\x18\x03 \x03(\tB\x03\xe0\x41\x02\x12%\n\x18restore_destination_path\x18\x04 \x01(\tB\x03\xe0\x41\x01\"\x1c\n\x1aRestoreBackupFilesResponse*P\n\tProtocols\x12\x19\n\x15PROTOCOLS_UNSPECIFIED\x10\x00\x12\t\n\x05NFSV3\x10\x01\x12\t\n\x05NFSV4\x10\x02\x12\x07\n\x03SMB\x10\x03\x12\t\n\x05ISCSI\x10\x04*W\n\nAccessType\x12\x1b\n\x17\x41\x43\x43\x45SS_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tREAD_ONLY\x10\x01\x12\x0e\n\nREAD_WRITE\x10\x02\x12\r\n\tREAD_NONE\x10\x03*\xe8\x01\n\x0bSMBSettings\x12\x1c\n\x18SMB_SETTINGS_UNSPECIFIED\x10\x00\x12\x10\n\x0c\x45NCRYPT_DATA\x10\x01\x12\r\n\tBROWSABLE\x10\x02\x12\x11\n\rCHANGE_NOTIFY\x10\x03\x12\x11\n\rNON_BROWSABLE\x10\x04\x12\x0b\n\x07OPLOCKS\x10\x05\x12\x11\n\rSHOW_SNAPSHOT\x10\x06\x12\x1a\n\x16SHOW_PREVIOUS_VERSIONS\x10\x07\x12\x1c\n\x18\x41\x43\x43\x45SS_BASED_ENUMERATION\x10\x08\x12\x1a\n\x16\x43ONTINUOUSLY_AVAILABLE\x10\t*C\n\rSecurityStyle\x12\x1e\n\x1aSECURITY_STYLE_UNSPECIFIED\x10\x00\x12\x08\n\x04NTFS\x10\x01\x12\x08\n\x04UNIX\x10\x02*A\n\x10RestrictedAction\x12!\n\x1dRESTRICTED_ACTION_UNSPECIFIED\x10\x00\x12\n\n\x06\x44\x45LETE\x10\x01\x42\xad\x01\n\x1a\x63om.google.cloud.netapp.v1B\x0bVolumeProtoP\x01Z2cloud.google.com/go/netapp/apiv1/netapppb;netapppb\xaa\x02\x16Google.Cloud.NetApp.V1\xca\x02\x16Google\\Cloud\\NetApp\\V1\xea\x02\x19Google::Cloud::NetApp::V1b\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool @@ -68,6 +68,14 @@ module V1 TieringPolicy::TierAction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.TieringPolicy.TierAction").enummodule HybridReplicationParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.HybridReplicationParameters").msgclass HybridReplicationParameters::VolumeHybridReplicationType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.HybridReplicationParameters.VolumeHybridReplicationType").enummodule + CacheParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.CacheParameters").msgclass + CacheParameters::CacheState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.CacheParameters.CacheState").enummodule + CacheConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.CacheConfig").msgclass + CacheConfig::CachePrePopulateState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.CacheConfig.CachePrePopulateState").enummodule + CachePrePopulate = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.CachePrePopulate").msgclass + BlockDevice = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.BlockDevice").msgclass + RestoreBackupFilesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.RestoreBackupFilesRequest").msgclass + RestoreBackupFilesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.RestoreBackupFilesResponse").msgclass Protocols = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.Protocols").enummodule AccessType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.AccessType").enummodule SMBSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.netapp.v1.SMBSettings").enummodule diff --git a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/backup_vault.rb b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/backup_vault.rb index 8a704f2e42f9..04391f6cc7af 100644 --- a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/backup_vault.rb +++ b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/backup_vault.rb @@ -63,7 +63,20 @@ module V1 # `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}` # @!attribute [rw] backup_retention_policy # @return [::Google::Cloud::NetApp::V1::BackupVault::BackupRetentionPolicy] - # Optional. Backup retention policy defining the retenton of backups. + # Optional. Backup retention policy defining the retention of backups. + # @!attribute [rw] kms_config + # @return [::String] + # Optional. Specifies the Key Management System (KMS) configuration to be + # used for backup encryption. Format: + # `projects/{project}/locations/{location}/kmsConfigs/{kms_config}` + # @!attribute [r] encryption_state + # @return [::Google::Cloud::NetApp::V1::BackupVault::EncryptionState] + # Output only. Field indicating encryption state of CMEK backups. + # @!attribute [r] backups_crypto_key_version + # @return [::String] + # Output only. The crypto key version used to encrypt the backup vault. + # Format: + # `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}` class BackupVault include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods @@ -139,6 +152,24 @@ module BackupVaultType # BackupVault type is CROSS_REGION. CROSS_REGION = 2 end + + # Encryption state of customer-managed encryption keys (CMEK) backups. + module EncryptionState + # Encryption state not set. + ENCRYPTION_STATE_UNSPECIFIED = 0 + + # Encryption state is pending. + ENCRYPTION_STATE_PENDING = 1 + + # Encryption is complete. + ENCRYPTION_STATE_COMPLETED = 2 + + # Encryption is in progress. + ENCRYPTION_STATE_IN_PROGRESS = 3 + + # Encryption has failed. + ENCRYPTION_STATE_FAILED = 4 + end end # GetBackupVaultRequest gets the state of a backupVault. diff --git a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/common.rb b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/common.rb index 451ad43c7565..f42e35a89c81 100644 --- a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/common.rb +++ b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/common.rb @@ -32,6 +32,9 @@ module V1 # @!attribute [r] has_vcp # @return [::Boolean] # Output only. Indicates if the location has VCP support. + # @!attribute [r] has_ontap_proxy + # @return [::Boolean] + # Output only. Indicates if the location has ONTAP Proxy support. class LocationMetadata include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods @@ -97,6 +100,21 @@ module DirectoryServiceType ACTIVE_DIRECTORY = 1 end + # Type of storage pool + module StoragePoolType + # Storage pool type is not specified. + STORAGE_POOL_TYPE_UNSPECIFIED = 0 + + # Storage pool type is file. + FILE = 1 + + # Storage pool type is unified. + UNIFIED = 2 + + # Storage pool type is unified large capacity. + UNIFIED_LARGE_CAPACITY = 3 + end + # Schedule for Hybrid Replication. # New enum values may be added in future to support different frequency of # replication. @@ -125,6 +143,21 @@ module QosType # QoS Type is Manual MANUAL = 2 end + + # OS types for the host group + module OsType + # Unspecified OS Type + OS_TYPE_UNSPECIFIED = 0 + + # OS Type is Linux + LINUX = 1 + + # OS Type is Windows + WINDOWS = 2 + + # OS Type is VMware ESXi + ESXI = 3 + end end end end diff --git a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/host_group.rb b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/host_group.rb new file mode 100644 index 000000000000..5fda553c61b4 --- /dev/null +++ b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/host_group.rb @@ -0,0 +1,193 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + + +module Google + module Cloud + module NetApp + module V1 + # ListHostGroupsRequest for listing host groups. + # @!attribute [rw] parent + # @return [::String] + # Required. Parent value for ListHostGroupsRequest + # @!attribute [rw] page_size + # @return [::Integer] + # Optional. Requested page size. Server may return fewer items than + # requested. If unspecified, the server will pick an appropriate default. + # @!attribute [rw] page_token + # @return [::String] + # Optional. A token identifying a page of results the server should return. + # @!attribute [rw] filter + # @return [::String] + # Optional. Filter to apply to the request. + # @!attribute [rw] order_by + # @return [::String] + # Optional. Hint for how to order the results + class ListHostGroupsRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # ListHostGroupsResponse is the response to a ListHostGroupsRequest. + # @!attribute [rw] host_groups + # @return [::Array<::Google::Cloud::NetApp::V1::HostGroup>] + # The list of host groups. + # @!attribute [rw] next_page_token + # @return [::String] + # A token identifying a page of results the server should return. + # @!attribute [rw] unreachable + # @return [::Array<::String>] + # Locations that could not be reached. + class ListHostGroupsResponse + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # GetHostGroupRequest for getting a host group. + # @!attribute [rw] name + # @return [::String] + # Required. The resource name of the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + class GetHostGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # CreateHostGroupRequest for creating a host group. + # @!attribute [rw] parent + # @return [::String] + # Required. Parent value for CreateHostGroupRequest + # @!attribute [rw] host_group + # @return [::Google::Cloud::NetApp::V1::HostGroup] + # Required. Fields of the host group to create. + # @!attribute [rw] host_group_id + # @return [::String] + # Required. ID of the host group to create. Must be unique within the parent + # resource. Must contain only letters, numbers, and hyphen, with + # the first character a letter or underscore, the last a letter or underscore + # or a number, and a 63 character maximum. + class CreateHostGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # UpdateHostGroupRequest for updating a host group. + # @!attribute [rw] host_group + # @return [::Google::Cloud::NetApp::V1::HostGroup] + # Required. The host group to update. + # The host group's `name` field is used to identify the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # @!attribute [rw] update_mask + # @return [::Google::Protobuf::FieldMask] + # Optional. The list of fields to update. + class UpdateHostGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # DeleteHostGroupRequest for deleting a single host group. + # @!attribute [rw] name + # @return [::String] + # Required. The resource name of the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + class DeleteHostGroupRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # Host group is a collection of hosts that can be used for accessing a Block + # Volume. + # @!attribute [rw] name + # @return [::String] + # Identifier. The resource name of the host group. + # Format: + # `projects/{project_number}/locations/{location_id}/hostGroups/{host_group_id}`. + # @!attribute [rw] type + # @return [::Google::Cloud::NetApp::V1::HostGroup::Type] + # Required. Type of the host group. + # @!attribute [r] state + # @return [::Google::Cloud::NetApp::V1::HostGroup::State] + # Output only. State of the host group. + # @!attribute [r] create_time + # @return [::Google::Protobuf::Timestamp] + # Output only. Create time of the host group. + # @!attribute [rw] hosts + # @return [::Array<::String>] + # Required. The list of hosts associated with the host group. + # @!attribute [rw] os_type + # @return [::Google::Cloud::NetApp::V1::OsType] + # Required. The OS type of the host group. It indicates the type of operating + # system used by all of the hosts in the HostGroup. All hosts in a HostGroup + # must be of the same OS type. This can be set only when creating a + # HostGroup. + # @!attribute [rw] description + # @return [::String] + # Optional. Description of the host group. + # @!attribute [rw] labels + # @return [::Google::Protobuf::Map{::String => ::String}] + # Optional. Labels of the host group. + class HostGroup + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # @!attribute [rw] key + # @return [::String] + # @!attribute [rw] value + # @return [::String] + class LabelsEntry + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # Types of host group. + module Type + # Unspecified type for host group. + TYPE_UNSPECIFIED = 0 + + # iSCSI initiator host group. + ISCSI_INITIATOR = 1 + end + + # Host group states. + module State + # Unspecified state for host group. + STATE_UNSPECIFIED = 0 + + # Host group is creating. + CREATING = 1 + + # Host group is ready. + READY = 2 + + # Host group is updating. + UPDATING = 3 + + # Host group is deleting. + DELETING = 4 + + # Host group is disabled. + DISABLED = 5 + end + end + end + end + end +end diff --git a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/kms.rb b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/kms.rb index 328a1e83cede..ed399deb6a72 100644 --- a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/kms.rb +++ b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/kms.rb @@ -146,14 +146,15 @@ class VerifyKmsConfigResponse extend ::Google::Protobuf::MessageExts::ClassMethods end - # KmsConfig is the customer managed encryption key(CMEK) configuration. + # KmsConfig is the customer-managed encryption key(CMEK) configuration. # @!attribute [rw] name # @return [::String] # Identifier. Name of the KmsConfig. + # Format: `projects/{project}/locations/{location}/kmsConfigs/{kms_config}` # @!attribute [rw] crypto_key_name # @return [::String] - # Required. Customer managed crypto key resource full name. Format: - # projects/\\{project}/locations/\\{location}/keyRings/\\{key_ring}/cryptoKeys/\\{key}. + # Required. Customer-managed crypto key resource full name. Format: + # `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}` # @!attribute [r] state # @return [::Google::Cloud::NetApp::V1::KmsConfig::State] # Output only. State of the KmsConfig. diff --git a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/storage_pool.rb b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/storage_pool.rb index f052b428200f..8860ab055581 100644 --- a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/storage_pool.rb +++ b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/storage_pool.rb @@ -234,6 +234,13 @@ class SwitchActiveReplicaZoneRequest # @return [::Integer] # Output only. Total hot tier data rounded down to the nearest GiB used by # the storage pool. + # @!attribute [rw] type + # @return [::Google::Cloud::NetApp::V1::StoragePoolType] + # Optional. Type of the storage pool. This field is used to control whether + # the pool supports `FILE` based volumes only or `UNIFIED` (both `FILE` and + # `BLOCK`) volumes or `UNIFIED_LARGE_CAPACITY` (both `FILE` and `BLOCK`) + # volumes with large capacity. If not specified during creation, it defaults + # to `FILE`. class StoragePool include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods diff --git a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/volume.rb b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/volume.rb index 7814b6a91a7a..068bafceea96 100644 --- a/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/volume.rb +++ b/google-cloud-netapp-v1/proto_docs/google/cloud/netapp/v1/volume.rb @@ -261,10 +261,17 @@ class RevertVolumeRequest # @!attribute [rw] throughput_mibps # @return [::Float] # Optional. Throughput of the volume (in MiB/s) + # @!attribute [rw] cache_parameters + # @return [::Google::Cloud::NetApp::V1::CacheParameters] + # Optional. Cache parameters for the volume. # @!attribute [r] hot_tier_size_used_gib # @return [::Integer] # Output only. Total hot tier data rounded down to the nearest GiB used by # the Volume. This field is only used for flex Service Level + # @!attribute [rw] block_devices + # @return [::Array<::Google::Cloud::NetApp::V1::BlockDevice>] + # Optional. Block devices for the volume. + # Currently, only one block device is permitted per Volume. class Volume include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods @@ -380,16 +387,16 @@ class ExportPolicy # @!attribute [rw] anon_uid # @return [::Integer] # Optional. An integer representing the anonymous user ID. Range is 0 to - # 4294967295. Required when squash_mode is ROOT_SQUASH or ALL_SQUASH. + # `4294967295`. Required when `squash_mode` is `ROOT_SQUASH` or `ALL_SQUASH`. class SimpleExportPolicyRule include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods - # SquashMode defines how remote user privileges are restricted when accessing - # an NFS export. It controls how user identities (like root) are mapped to - # anonymous users to limit access and enforce security. + # `SquashMode` defines how remote user privileges are restricted when + # accessing an NFS export. It controls how user identities (like root) are + # mapped to anonymous users to limit access and enforce security. module SquashMode - # Defaults to NO_ROOT_SQUASH. + # Defaults to `NO_ROOT_SQUASH`. SQUASH_MODE_UNSPECIFIED = 0 # The root user (UID 0) retains full access. Other users are @@ -664,6 +671,193 @@ module VolumeHybridReplicationType end end + # Cache Parameters for the volume. + # @!attribute [rw] peer_volume_name + # @return [::String] + # Required. Name of the origin volume for the cache volume. + # @!attribute [rw] peer_cluster_name + # @return [::String] + # Required. Name of the origin volume's ONTAP cluster. + # @!attribute [rw] peer_svm_name + # @return [::String] + # Required. Name of the origin volume's SVM. + # @!attribute [rw] peer_ip_addresses + # @return [::Array<::String>] + # Required. List of IC LIF addresses of the origin volume's ONTAP cluster. + # @!attribute [rw] enable_global_file_lock + # @return [::Boolean] + # Optional. Indicates whether the cache volume has global file lock enabled. + # @!attribute [rw] cache_config + # @return [::Google::Cloud::NetApp::V1::CacheConfig] + # Optional. Configuration of the cache volume. + # @!attribute [r] cache_state + # @return [::Google::Cloud::NetApp::V1::CacheParameters::CacheState] + # Output only. State of the cache volume indicating the peering status. + # @!attribute [r] command + # @return [::String] + # Output only. Copy-paste-able commands to be used on user's ONTAP to accept + # peering requests. + # @!attribute [rw] peering_command_expiry_time + # @return [::Google::Protobuf::Timestamp] + # Optional. Expiration time for the peering command to be executed on user's + # ONTAP. + # @!attribute [r] passphrase + # @return [::String] + # Output only. Temporary passphrase generated to accept cluster peering + # command. + # @!attribute [r] state_details + # @return [::String] + # Output only. Detailed description of the current cache state. + class CacheParameters + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # State of the cache volume indicating the peering status. + module CacheState + # Default unspecified state. + CACHE_STATE_UNSPECIFIED = 0 + + # State indicating waiting for cluster peering to be established. + PENDING_CLUSTER_PEERING = 1 + + # State indicating waiting for SVM peering to be established. + PENDING_SVM_PEERING = 2 + + # State indicating successful establishment of peering with origin + # volumes's ONTAP cluster. + PEERED = 3 + + # Terminal state wherein peering with origin volume's ONTAP cluster + # has failed. + ERROR = 4 + end + end + + # Configuration of the cache volume. + # @!attribute [rw] cache_pre_populate + # @return [::Google::Cloud::NetApp::V1::CachePrePopulate] + # Optional. Pre-populate cache volume with data from the origin volume. + # @!attribute [rw] writeback_enabled + # @return [::Boolean] + # Optional. Flag indicating whether writeback is enabled for the FlexCache + # volume. + # @!attribute [rw] cifs_change_notify_enabled + # @return [::Boolean] + # Optional. Flag indicating whether a CIFS change notification is enabled for + # the FlexCache volume. + # @!attribute [r] cache_pre_populate_state + # @return [::Google::Cloud::NetApp::V1::CacheConfig::CachePrePopulateState] + # Output only. State of the prepopulation job indicating how the + # prepopulation is progressing. + class CacheConfig + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + + # State of the prepopulation job indicating how the prepopulation is + # progressing. + module CachePrePopulateState + # Default unspecified state. + CACHE_PRE_POPULATE_STATE_UNSPECIFIED = 0 + + # State representing when the most recent create or update request did not + # require a prepopulation job. + NOT_NEEDED = 1 + + # State representing when the most recent update request requested a + # prepopulation job but it has not yet completed. + IN_PROGRESS = 2 + + # State representing when the most recent update request requested a + # prepopulation job and it has completed successfully. + COMPLETE = 3 + + # State representing when the most recent update request requested a + # prepopulation job but the prepopulate job failed. + ERROR = 4 + end + end + + # Pre-populate cache volume with data from the origin volume. + # @!attribute [rw] path_list + # @return [::Array<::String>] + # Optional. List of directory-paths to be pre-populated for the FlexCache + # volume. + # @!attribute [rw] exclude_path_list + # @return [::Array<::String>] + # Optional. List of directory-paths to be excluded for pre-population for the + # FlexCache volume. + # @!attribute [rw] recursion + # @return [::Boolean] + # Optional. Flag indicating whether the directories listed with the + # `path_list` need to be recursively pre-populated. + class CachePrePopulate + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # Block device represents the device(s) which are stored in the block volume. + # @!attribute [rw] name + # @return [::String] + # Optional. User-defined name for the block device, unique within the volume. + # In case no user input is provided, name will be auto-generated in the + # backend. The name must meet the following requirements: + # * Be between 1 and 255 characters long. + # * Contain only uppercase or lowercase letters (A-Z, a-z), numbers (0-9), + # and the following special characters: "-", "_", "}", "{", ".". + # * Spaces are not allowed. + # @!attribute [rw] host_groups + # @return [::Array<::String>] + # Optional. A list of host groups that identify hosts that can mount the + # block volume. Format: + # `projects/{project_id}/locations/{location}/hostGroups/{host_group_id}` + # This field can be updated after the block device is created. + # @!attribute [r] identifier + # @return [::String] + # Output only. Device identifier of the block volume. This represents + # `lun_serial_number` for iSCSI volumes. + # @!attribute [rw] size_gib + # @return [::Integer] + # Optional. The size of the block device in GiB. + # Any value provided for the `size_gib` field during volume creation is + # ignored. The block device's size is system-managed and will be set to match + # the parent Volume's `capacity_gib`. + # @!attribute [rw] os_type + # @return [::Google::Cloud::NetApp::V1::OsType] + # Required. Immutable. The OS type of the volume. + # This field can't be changed after the block device is created. + class BlockDevice + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # RestoreBackupFilesRequest restores files from a backup to a volume. + # @!attribute [rw] name + # @return [::String] + # Required. The volume resource name, in the format + # `projects/{project_id}/locations/{location}/volumes/{volume_id}` + # @!attribute [rw] backup + # @return [::String] + # Required. The backup resource name, in the format + # `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}/backups/{backup_id}` + # @!attribute [rw] file_list + # @return [::Array<::String>] + # Required. List of files to be restored, specified by their absolute path in + # the source volume. + # @!attribute [rw] restore_destination_path + # @return [::String] + # Optional. Absolute directory path in the destination volume. This is + # required if the `file_list` is provided. + class RestoreBackupFilesRequest + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + + # RestoreBackupFilesResponse is the result of RestoreBackupFilesRequest. + class RestoreBackupFilesResponse + include ::Google::Protobuf::MessageExts + extend ::Google::Protobuf::MessageExts::ClassMethods + end + # Protocols is an enum of all the supported network protocols for a volume. module Protocols # Unspecified protocol @@ -677,6 +871,9 @@ module Protocols # SMB protocol SMB = 3 + + # ISCSI protocol + ISCSI = 4 end # AccessType is an enum of all the supported access types for a volume. diff --git a/google-cloud-netapp-v1/snippets/netapp/create_host_group.rb b/google-cloud-netapp-v1/snippets/netapp/create_host_group.rb new file mode 100644 index 000000000000..a3fcd02c95ca --- /dev/null +++ b/google-cloud-netapp-v1/snippets/netapp/create_host_group.rb @@ -0,0 +1,54 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +# [START netapp_v1_generated_NetApp_CreateHostGroup_sync] +require "google/cloud/netapp/v1" + +## +# Snippet for the create_host_group call in the NetApp service +# +# This snippet has been automatically generated and should be regarded as a code +# template only. It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in https://cloud.google.com/ruby/docs/reference. +# +# This is an auto-generated example demonstrating basic usage of +# Google::Cloud::NetApp::V1::NetApp::Client#create_host_group. +# +def create_host_group + # Create a client object. The client can be reused for multiple calls. + client = Google::Cloud::NetApp::V1::NetApp::Client.new + + # Create a request. To set request fields, pass in keyword arguments. + request = Google::Cloud::NetApp::V1::CreateHostGroupRequest.new + + # Call the create_host_group method. + result = client.create_host_group request + + # The returned object is of type Gapic::Operation. You can use it to + # check the status of an operation, cancel it, or wait for results. + # Here is how to wait for a response. + result.wait_until_done! timeout: 60 + if result.response? + p result.response + else + puts "No response received." + end +end +# [END netapp_v1_generated_NetApp_CreateHostGroup_sync] diff --git a/google-cloud-netapp-v1/snippets/netapp/delete_host_group.rb b/google-cloud-netapp-v1/snippets/netapp/delete_host_group.rb new file mode 100644 index 000000000000..89d7fcc55c39 --- /dev/null +++ b/google-cloud-netapp-v1/snippets/netapp/delete_host_group.rb @@ -0,0 +1,54 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +# [START netapp_v1_generated_NetApp_DeleteHostGroup_sync] +require "google/cloud/netapp/v1" + +## +# Snippet for the delete_host_group call in the NetApp service +# +# This snippet has been automatically generated and should be regarded as a code +# template only. It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in https://cloud.google.com/ruby/docs/reference. +# +# This is an auto-generated example demonstrating basic usage of +# Google::Cloud::NetApp::V1::NetApp::Client#delete_host_group. +# +def delete_host_group + # Create a client object. The client can be reused for multiple calls. + client = Google::Cloud::NetApp::V1::NetApp::Client.new + + # Create a request. To set request fields, pass in keyword arguments. + request = Google::Cloud::NetApp::V1::DeleteHostGroupRequest.new + + # Call the delete_host_group method. + result = client.delete_host_group request + + # The returned object is of type Gapic::Operation. You can use it to + # check the status of an operation, cancel it, or wait for results. + # Here is how to wait for a response. + result.wait_until_done! timeout: 60 + if result.response? + p result.response + else + puts "No response received." + end +end +# [END netapp_v1_generated_NetApp_DeleteHostGroup_sync] diff --git a/google-cloud-netapp-v1/snippets/netapp/get_host_group.rb b/google-cloud-netapp-v1/snippets/netapp/get_host_group.rb new file mode 100644 index 000000000000..80c2a45c7b2e --- /dev/null +++ b/google-cloud-netapp-v1/snippets/netapp/get_host_group.rb @@ -0,0 +1,47 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +# [START netapp_v1_generated_NetApp_GetHostGroup_sync] +require "google/cloud/netapp/v1" + +## +# Snippet for the get_host_group call in the NetApp service +# +# This snippet has been automatically generated and should be regarded as a code +# template only. It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in https://cloud.google.com/ruby/docs/reference. +# +# This is an auto-generated example demonstrating basic usage of +# Google::Cloud::NetApp::V1::NetApp::Client#get_host_group. +# +def get_host_group + # Create a client object. The client can be reused for multiple calls. + client = Google::Cloud::NetApp::V1::NetApp::Client.new + + # Create a request. To set request fields, pass in keyword arguments. + request = Google::Cloud::NetApp::V1::GetHostGroupRequest.new + + # Call the get_host_group method. + result = client.get_host_group request + + # The returned object is of type Google::Cloud::NetApp::V1::HostGroup. + p result +end +# [END netapp_v1_generated_NetApp_GetHostGroup_sync] diff --git a/google-cloud-netapp-v1/snippets/netapp/list_host_groups.rb b/google-cloud-netapp-v1/snippets/netapp/list_host_groups.rb new file mode 100644 index 000000000000..a10691f132c8 --- /dev/null +++ b/google-cloud-netapp-v1/snippets/netapp/list_host_groups.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +# [START netapp_v1_generated_NetApp_ListHostGroups_sync] +require "google/cloud/netapp/v1" + +## +# Snippet for the list_host_groups call in the NetApp service +# +# This snippet has been automatically generated and should be regarded as a code +# template only. It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in https://cloud.google.com/ruby/docs/reference. +# +# This is an auto-generated example demonstrating basic usage of +# Google::Cloud::NetApp::V1::NetApp::Client#list_host_groups. +# +def list_host_groups + # Create a client object. The client can be reused for multiple calls. + client = Google::Cloud::NetApp::V1::NetApp::Client.new + + # Create a request. To set request fields, pass in keyword arguments. + request = Google::Cloud::NetApp::V1::ListHostGroupsRequest.new + + # Call the list_host_groups method. + result = client.list_host_groups request + + # The returned object is of type Gapic::PagedEnumerable. You can iterate + # over elements, and API calls will be issued to fetch pages as needed. + result.each do |item| + # Each element is of type ::Google::Cloud::NetApp::V1::HostGroup. + p item + end +end +# [END netapp_v1_generated_NetApp_ListHostGroups_sync] diff --git a/google-cloud-netapp-v1/snippets/netapp/restore_backup_files.rb b/google-cloud-netapp-v1/snippets/netapp/restore_backup_files.rb new file mode 100644 index 000000000000..c01d88e39a0a --- /dev/null +++ b/google-cloud-netapp-v1/snippets/netapp/restore_backup_files.rb @@ -0,0 +1,54 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +# [START netapp_v1_generated_NetApp_RestoreBackupFiles_sync] +require "google/cloud/netapp/v1" + +## +# Snippet for the restore_backup_files call in the NetApp service +# +# This snippet has been automatically generated and should be regarded as a code +# template only. It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in https://cloud.google.com/ruby/docs/reference. +# +# This is an auto-generated example demonstrating basic usage of +# Google::Cloud::NetApp::V1::NetApp::Client#restore_backup_files. +# +def restore_backup_files + # Create a client object. The client can be reused for multiple calls. + client = Google::Cloud::NetApp::V1::NetApp::Client.new + + # Create a request. To set request fields, pass in keyword arguments. + request = Google::Cloud::NetApp::V1::RestoreBackupFilesRequest.new + + # Call the restore_backup_files method. + result = client.restore_backup_files request + + # The returned object is of type Gapic::Operation. You can use it to + # check the status of an operation, cancel it, or wait for results. + # Here is how to wait for a response. + result.wait_until_done! timeout: 60 + if result.response? + p result.response + else + puts "No response received." + end +end +# [END netapp_v1_generated_NetApp_RestoreBackupFiles_sync] diff --git a/google-cloud-netapp-v1/snippets/netapp/update_host_group.rb b/google-cloud-netapp-v1/snippets/netapp/update_host_group.rb new file mode 100644 index 000000000000..fb0f5be806af --- /dev/null +++ b/google-cloud-netapp-v1/snippets/netapp/update_host_group.rb @@ -0,0 +1,54 @@ +# frozen_string_literal: true + +# Copyright 2026 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 +# +# https://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. + +# Auto-generated by gapic-generator-ruby. DO NOT EDIT! + +# [START netapp_v1_generated_NetApp_UpdateHostGroup_sync] +require "google/cloud/netapp/v1" + +## +# Snippet for the update_host_group call in the NetApp service +# +# This snippet has been automatically generated and should be regarded as a code +# template only. It will require modifications to work: +# - It may require correct/in-range values for request initialization. +# - It may require specifying regional endpoints when creating the service +# client as shown in https://cloud.google.com/ruby/docs/reference. +# +# This is an auto-generated example demonstrating basic usage of +# Google::Cloud::NetApp::V1::NetApp::Client#update_host_group. +# +def update_host_group + # Create a client object. The client can be reused for multiple calls. + client = Google::Cloud::NetApp::V1::NetApp::Client.new + + # Create a request. To set request fields, pass in keyword arguments. + request = Google::Cloud::NetApp::V1::UpdateHostGroupRequest.new + + # Call the update_host_group method. + result = client.update_host_group request + + # The returned object is of type Gapic::Operation. You can use it to + # check the status of an operation, cancel it, or wait for results. + # Here is how to wait for a response. + result.wait_until_done! timeout: 60 + if result.response? + p result.response + else + puts "No response received." + end +end +# [END netapp_v1_generated_NetApp_UpdateHostGroup_sync] diff --git a/google-cloud-netapp-v1/snippets/snippet_metadata_google.cloud.netapp.v1.json b/google-cloud-netapp-v1/snippets/snippet_metadata_google.cloud.netapp.v1.json index d177962787bb..a1b1a13a3685 100644 --- a/google-cloud-netapp-v1/snippets/snippet_metadata_google.cloud.netapp.v1.json +++ b/google-cloud-netapp-v1/snippets/snippet_metadata_google.cloud.netapp.v1.json @@ -2410,6 +2410,246 @@ "type": "FULL" } ] + }, + { + "region_tag": "netapp_v1_generated_NetApp_RestoreBackupFiles_sync", + "title": "Snippet for the restore_backup_files call in the NetApp service", + "description": "This is an auto-generated example demonstrating basic usage of Google::Cloud::NetApp::V1::NetApp::Client#restore_backup_files.", + "file": "netapp/restore_backup_files.rb", + "language": "RUBY", + "client_method": { + "short_name": "restore_backup_files", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client#restore_backup_files", + "async": false, + "parameters": [ + { + "type": "::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest", + "name": "request" + } + ], + "result_type": "::Google::Longrunning::Operation", + "client": { + "short_name": "NetApp::Client", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client" + }, + "method": { + "short_name": "RestoreBackupFiles", + "full_name": "google.cloud.netapp.v1.NetApp.RestoreBackupFiles", + "service": { + "short_name": "NetApp", + "full_name": "google.cloud.netapp.v1.NetApp" + } + } + }, + "canonical": true, + "origin": "API_DEFINITION", + "segments": [ + { + "start": 20, + "end": 53, + "type": "FULL" + } + ] + }, + { + "region_tag": "netapp_v1_generated_NetApp_ListHostGroups_sync", + "title": "Snippet for the list_host_groups call in the NetApp service", + "description": "This is an auto-generated example demonstrating basic usage of Google::Cloud::NetApp::V1::NetApp::Client#list_host_groups.", + "file": "netapp/list_host_groups.rb", + "language": "RUBY", + "client_method": { + "short_name": "list_host_groups", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client#list_host_groups", + "async": false, + "parameters": [ + { + "type": "::Google::Cloud::NetApp::V1::ListHostGroupsRequest", + "name": "request" + } + ], + "result_type": "::Google::Cloud::NetApp::V1::ListHostGroupsResponse", + "client": { + "short_name": "NetApp::Client", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client" + }, + "method": { + "short_name": "ListHostGroups", + "full_name": "google.cloud.netapp.v1.NetApp.ListHostGroups", + "service": { + "short_name": "NetApp", + "full_name": "google.cloud.netapp.v1.NetApp" + } + } + }, + "canonical": true, + "origin": "API_DEFINITION", + "segments": [ + { + "start": 20, + "end": 50, + "type": "FULL" + } + ] + }, + { + "region_tag": "netapp_v1_generated_NetApp_GetHostGroup_sync", + "title": "Snippet for the get_host_group call in the NetApp service", + "description": "This is an auto-generated example demonstrating basic usage of Google::Cloud::NetApp::V1::NetApp::Client#get_host_group.", + "file": "netapp/get_host_group.rb", + "language": "RUBY", + "client_method": { + "short_name": "get_host_group", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client#get_host_group", + "async": false, + "parameters": [ + { + "type": "::Google::Cloud::NetApp::V1::GetHostGroupRequest", + "name": "request" + } + ], + "result_type": "::Google::Cloud::NetApp::V1::HostGroup", + "client": { + "short_name": "NetApp::Client", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client" + }, + "method": { + "short_name": "GetHostGroup", + "full_name": "google.cloud.netapp.v1.NetApp.GetHostGroup", + "service": { + "short_name": "NetApp", + "full_name": "google.cloud.netapp.v1.NetApp" + } + } + }, + "canonical": true, + "origin": "API_DEFINITION", + "segments": [ + { + "start": 20, + "end": 46, + "type": "FULL" + } + ] + }, + { + "region_tag": "netapp_v1_generated_NetApp_CreateHostGroup_sync", + "title": "Snippet for the create_host_group call in the NetApp service", + "description": "This is an auto-generated example demonstrating basic usage of Google::Cloud::NetApp::V1::NetApp::Client#create_host_group.", + "file": "netapp/create_host_group.rb", + "language": "RUBY", + "client_method": { + "short_name": "create_host_group", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client#create_host_group", + "async": false, + "parameters": [ + { + "type": "::Google::Cloud::NetApp::V1::CreateHostGroupRequest", + "name": "request" + } + ], + "result_type": "::Google::Longrunning::Operation", + "client": { + "short_name": "NetApp::Client", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client" + }, + "method": { + "short_name": "CreateHostGroup", + "full_name": "google.cloud.netapp.v1.NetApp.CreateHostGroup", + "service": { + "short_name": "NetApp", + "full_name": "google.cloud.netapp.v1.NetApp" + } + } + }, + "canonical": true, + "origin": "API_DEFINITION", + "segments": [ + { + "start": 20, + "end": 53, + "type": "FULL" + } + ] + }, + { + "region_tag": "netapp_v1_generated_NetApp_UpdateHostGroup_sync", + "title": "Snippet for the update_host_group call in the NetApp service", + "description": "This is an auto-generated example demonstrating basic usage of Google::Cloud::NetApp::V1::NetApp::Client#update_host_group.", + "file": "netapp/update_host_group.rb", + "language": "RUBY", + "client_method": { + "short_name": "update_host_group", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client#update_host_group", + "async": false, + "parameters": [ + { + "type": "::Google::Cloud::NetApp::V1::UpdateHostGroupRequest", + "name": "request" + } + ], + "result_type": "::Google::Longrunning::Operation", + "client": { + "short_name": "NetApp::Client", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client" + }, + "method": { + "short_name": "UpdateHostGroup", + "full_name": "google.cloud.netapp.v1.NetApp.UpdateHostGroup", + "service": { + "short_name": "NetApp", + "full_name": "google.cloud.netapp.v1.NetApp" + } + } + }, + "canonical": true, + "origin": "API_DEFINITION", + "segments": [ + { + "start": 20, + "end": 53, + "type": "FULL" + } + ] + }, + { + "region_tag": "netapp_v1_generated_NetApp_DeleteHostGroup_sync", + "title": "Snippet for the delete_host_group call in the NetApp service", + "description": "This is an auto-generated example demonstrating basic usage of Google::Cloud::NetApp::V1::NetApp::Client#delete_host_group.", + "file": "netapp/delete_host_group.rb", + "language": "RUBY", + "client_method": { + "short_name": "delete_host_group", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client#delete_host_group", + "async": false, + "parameters": [ + { + "type": "::Google::Cloud::NetApp::V1::DeleteHostGroupRequest", + "name": "request" + } + ], + "result_type": "::Google::Longrunning::Operation", + "client": { + "short_name": "NetApp::Client", + "full_name": "::Google::Cloud::NetApp::V1::NetApp::Client" + }, + "method": { + "short_name": "DeleteHostGroup", + "full_name": "google.cloud.netapp.v1.NetApp.DeleteHostGroup", + "service": { + "short_name": "NetApp", + "full_name": "google.cloud.netapp.v1.NetApp" + } + } + }, + "canonical": true, + "origin": "API_DEFINITION", + "segments": [ + { + "start": 20, + "end": 53, + "type": "FULL" + } + ] } ] } \ No newline at end of file diff --git a/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_paths_test.rb b/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_paths_test.rb index 1b34fb9f253b..66c7118831f1 100644 --- a/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_paths_test.rb +++ b/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_paths_test.rb @@ -89,6 +89,18 @@ def test_backup_vault_path end end + def test_host_group_path + grpc_channel = ::GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + ::Gapic::ServiceStub.stub :new, DummyStub.new do + client = ::Google::Cloud::NetApp::V1::NetApp::Client.new do |config| + config.credentials = grpc_channel + end + + path = client.host_group_path project: "value0", location: "value1", host_group: "value2" + assert_equal "projects/value0/locations/value1/hostGroups/value2", path + end + end + def test_kms_config_path grpc_channel = ::GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure ::Gapic::ServiceStub.stub :new, DummyStub.new do diff --git a/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_rest_test.rb b/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_rest_test.rb index 77c08ecbd83b..b6bd034d2344 100644 --- a/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_rest_test.rb +++ b/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_rest_test.rb @@ -3396,6 +3396,340 @@ def test_delete_quota_rule end end + def test_restore_backup_files + # Create test objects. + client_result = ::Google::Longrunning::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + name = "hello world" + backup = "hello world" + file_list = ["hello world"] + restore_destination_path = "hello world" + + restore_backup_files_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::NetApp::V1::NetApp::Rest::ServiceStub.stub :transcode_restore_backup_files_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, restore_backup_files_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.restore_backup_files({ name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.restore_backup_files name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.restore_backup_files ::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest.new(name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.restore_backup_files({ name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.restore_backup_files(::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest.new(name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, restore_backup_files_client_stub.call_count + end + end + end + + def test_list_host_groups + # Create test objects. + client_result = ::Google::Cloud::NetApp::V1::ListHostGroupsResponse.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + parent = "hello world" + page_size = 42 + page_token = "hello world" + filter = "hello world" + order_by = "hello world" + + list_host_groups_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::NetApp::V1::NetApp::Rest::ServiceStub.stub :transcode_list_host_groups_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, list_host_groups_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.list_host_groups({ parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.list_host_groups parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.list_host_groups ::Google::Cloud::NetApp::V1::ListHostGroupsRequest.new(parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.list_host_groups({ parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.list_host_groups(::Google::Cloud::NetApp::V1::ListHostGroupsRequest.new(parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, list_host_groups_client_stub.call_count + end + end + end + + def test_get_host_group + # Create test objects. + client_result = ::Google::Cloud::NetApp::V1::HostGroup.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + name = "hello world" + + get_host_group_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::NetApp::V1::NetApp::Rest::ServiceStub.stub :transcode_get_host_group_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, get_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.get_host_group({ name: name }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.get_host_group name: name do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.get_host_group ::Google::Cloud::NetApp::V1::GetHostGroupRequest.new(name: name) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.get_host_group({ name: name }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.get_host_group(::Google::Cloud::NetApp::V1::GetHostGroupRequest.new(name: name), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, get_host_group_client_stub.call_count + end + end + end + + def test_create_host_group + # Create test objects. + client_result = ::Google::Longrunning::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + parent = "hello world" + host_group = {} + host_group_id = "hello world" + + create_host_group_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::NetApp::V1::NetApp::Rest::ServiceStub.stub :transcode_create_host_group_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, create_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.create_host_group({ parent: parent, host_group: host_group, host_group_id: host_group_id }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.create_host_group parent: parent, host_group: host_group, host_group_id: host_group_id do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.create_host_group ::Google::Cloud::NetApp::V1::CreateHostGroupRequest.new(parent: parent, host_group: host_group, host_group_id: host_group_id) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.create_host_group({ parent: parent, host_group: host_group, host_group_id: host_group_id }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.create_host_group(::Google::Cloud::NetApp::V1::CreateHostGroupRequest.new(parent: parent, host_group: host_group, host_group_id: host_group_id), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, create_host_group_client_stub.call_count + end + end + end + + def test_update_host_group + # Create test objects. + client_result = ::Google::Longrunning::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + host_group = {} + update_mask = {} + + update_host_group_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::NetApp::V1::NetApp::Rest::ServiceStub.stub :transcode_update_host_group_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, update_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.update_host_group({ host_group: host_group, update_mask: update_mask }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.update_host_group host_group: host_group, update_mask: update_mask do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.update_host_group ::Google::Cloud::NetApp::V1::UpdateHostGroupRequest.new(host_group: host_group, update_mask: update_mask) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.update_host_group({ host_group: host_group, update_mask: update_mask }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.update_host_group(::Google::Cloud::NetApp::V1::UpdateHostGroupRequest.new(host_group: host_group, update_mask: update_mask), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, update_host_group_client_stub.call_count + end + end + end + + def test_delete_host_group + # Create test objects. + client_result = ::Google::Longrunning::Operation.new + http_response = OpenStruct.new body: client_result.to_json + + call_options = {} + + # Create request parameters for a unary method. + name = "hello world" + + delete_host_group_client_stub = ClientStub.new http_response do |_verb, uri:, body:, params:, options:, method_name:| + assert options.metadata.key? :"x-goog-api-client" + assert options.metadata[:"x-goog-api-client"].include? "rest" + refute options.metadata[:"x-goog-api-client"].include? "grpc" + end + + ::Google::Cloud::NetApp::V1::NetApp::Rest::ServiceStub.stub :transcode_delete_host_group_request, ["", "", {}] do + Gapic::Rest::ClientStub.stub :new, delete_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Rest::Client.new do |config| + config.credentials = :dummy_value + end + + # Use hash object + client.delete_host_group({ name: name }) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use named arguments + client.delete_host_group name: name do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object + client.delete_host_group ::Google::Cloud::NetApp::V1::DeleteHostGroupRequest.new(name: name) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use hash object with options + client.delete_host_group({ name: name }, call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Use protobuf object with options + client.delete_host_group(::Google::Cloud::NetApp::V1::DeleteHostGroupRequest.new(name: name), call_options) do |_result, response| + assert_equal http_response, response.underlying_op + end + + # Verify method calls + assert_equal 5, delete_host_group_client_stub.call_count + end + end + end + def test_configure credentials_token = :dummy_value diff --git a/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_test.rb b/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_test.rb index 57938929d6c5..4d3c68918cfa 100644 --- a/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_test.rb +++ b/google-cloud-netapp-v1/test/google/cloud/netapp/v1/netapp_test.rb @@ -3944,6 +3944,399 @@ def test_delete_quota_rule end end + def test_restore_backup_files + # Create GRPC objects. + grpc_response = ::Google::Longrunning::Operation.new + grpc_operation = GRPC::ActiveCall::Operation.new nil + grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + grpc_options = {} + + # Create request parameters for a unary method. + name = "hello world" + backup = "hello world" + file_list = ["hello world"] + restore_destination_path = "hello world" + + restore_backup_files_client_stub = ClientStub.new grpc_response, grpc_operation do |name, request, options:| + assert_equal :restore_backup_files, name + assert_kind_of ::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest, request + assert_equal "hello world", request["name"] + assert_equal "hello world", request["backup"] + assert_equal ["hello world"], request["file_list"] + assert_equal "hello world", request["restore_destination_path"] + refute_nil options + end + + Gapic::ServiceStub.stub :new, restore_backup_files_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Client.new do |config| + config.credentials = grpc_channel + end + + # Use hash object + client.restore_backup_files({ name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path }) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use named arguments + client.restore_backup_files name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object + client.restore_backup_files ::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest.new(name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use hash object with options + client.restore_backup_files({ name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path }, grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object with options + client.restore_backup_files(::Google::Cloud::NetApp::V1::RestoreBackupFilesRequest.new(name: name, backup: backup, file_list: file_list, restore_destination_path: restore_destination_path), grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Verify method calls + assert_equal 5, restore_backup_files_client_stub.call_rpc_count + end + end + + def test_list_host_groups + # Create GRPC objects. + grpc_response = ::Google::Cloud::NetApp::V1::ListHostGroupsResponse.new + grpc_operation = GRPC::ActiveCall::Operation.new nil + grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + grpc_options = {} + + # Create request parameters for a unary method. + parent = "hello world" + page_size = 42 + page_token = "hello world" + filter = "hello world" + order_by = "hello world" + + list_host_groups_client_stub = ClientStub.new grpc_response, grpc_operation do |name, request, options:| + assert_equal :list_host_groups, name + assert_kind_of ::Google::Cloud::NetApp::V1::ListHostGroupsRequest, request + assert_equal "hello world", request["parent"] + assert_equal 42, request["page_size"] + assert_equal "hello world", request["page_token"] + assert_equal "hello world", request["filter"] + assert_equal "hello world", request["order_by"] + refute_nil options + end + + Gapic::ServiceStub.stub :new, list_host_groups_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Client.new do |config| + config.credentials = grpc_channel + end + + # Use hash object + client.list_host_groups({ parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by }) do |response, operation| + assert_kind_of Gapic::PagedEnumerable, response + assert_equal grpc_response, response.response + assert_equal grpc_operation, operation + end + + # Use named arguments + client.list_host_groups parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by do |response, operation| + assert_kind_of Gapic::PagedEnumerable, response + assert_equal grpc_response, response.response + assert_equal grpc_operation, operation + end + + # Use protobuf object + client.list_host_groups ::Google::Cloud::NetApp::V1::ListHostGroupsRequest.new(parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by) do |response, operation| + assert_kind_of Gapic::PagedEnumerable, response + assert_equal grpc_response, response.response + assert_equal grpc_operation, operation + end + + # Use hash object with options + client.list_host_groups({ parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by }, grpc_options) do |response, operation| + assert_kind_of Gapic::PagedEnumerable, response + assert_equal grpc_response, response.response + assert_equal grpc_operation, operation + end + + # Use protobuf object with options + client.list_host_groups(::Google::Cloud::NetApp::V1::ListHostGroupsRequest.new(parent: parent, page_size: page_size, page_token: page_token, filter: filter, order_by: order_by), grpc_options) do |response, operation| + assert_kind_of Gapic::PagedEnumerable, response + assert_equal grpc_response, response.response + assert_equal grpc_operation, operation + end + + # Verify method calls + assert_equal 5, list_host_groups_client_stub.call_rpc_count + end + end + + def test_get_host_group + # Create GRPC objects. + grpc_response = ::Google::Cloud::NetApp::V1::HostGroup.new + grpc_operation = GRPC::ActiveCall::Operation.new nil + grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + grpc_options = {} + + # Create request parameters for a unary method. + name = "hello world" + + get_host_group_client_stub = ClientStub.new grpc_response, grpc_operation do |name, request, options:| + assert_equal :get_host_group, name + assert_kind_of ::Google::Cloud::NetApp::V1::GetHostGroupRequest, request + assert_equal "hello world", request["name"] + refute_nil options + end + + Gapic::ServiceStub.stub :new, get_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Client.new do |config| + config.credentials = grpc_channel + end + + # Use hash object + client.get_host_group({ name: name }) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use named arguments + client.get_host_group name: name do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use protobuf object + client.get_host_group ::Google::Cloud::NetApp::V1::GetHostGroupRequest.new(name: name) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use hash object with options + client.get_host_group({ name: name }, grpc_options) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Use protobuf object with options + client.get_host_group(::Google::Cloud::NetApp::V1::GetHostGroupRequest.new(name: name), grpc_options) do |response, operation| + assert_equal grpc_response, response + assert_equal grpc_operation, operation + end + + # Verify method calls + assert_equal 5, get_host_group_client_stub.call_rpc_count + end + end + + def test_create_host_group + # Create GRPC objects. + grpc_response = ::Google::Longrunning::Operation.new + grpc_operation = GRPC::ActiveCall::Operation.new nil + grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + grpc_options = {} + + # Create request parameters for a unary method. + parent = "hello world" + host_group = {} + host_group_id = "hello world" + + create_host_group_client_stub = ClientStub.new grpc_response, grpc_operation do |name, request, options:| + assert_equal :create_host_group, name + assert_kind_of ::Google::Cloud::NetApp::V1::CreateHostGroupRequest, request + assert_equal "hello world", request["parent"] + assert_equal Gapic::Protobuf.coerce({}, to: ::Google::Cloud::NetApp::V1::HostGroup), request["host_group"] + assert_equal "hello world", request["host_group_id"] + refute_nil options + end + + Gapic::ServiceStub.stub :new, create_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Client.new do |config| + config.credentials = grpc_channel + end + + # Use hash object + client.create_host_group({ parent: parent, host_group: host_group, host_group_id: host_group_id }) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use named arguments + client.create_host_group parent: parent, host_group: host_group, host_group_id: host_group_id do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object + client.create_host_group ::Google::Cloud::NetApp::V1::CreateHostGroupRequest.new(parent: parent, host_group: host_group, host_group_id: host_group_id) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use hash object with options + client.create_host_group({ parent: parent, host_group: host_group, host_group_id: host_group_id }, grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object with options + client.create_host_group(::Google::Cloud::NetApp::V1::CreateHostGroupRequest.new(parent: parent, host_group: host_group, host_group_id: host_group_id), grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Verify method calls + assert_equal 5, create_host_group_client_stub.call_rpc_count + end + end + + def test_update_host_group + # Create GRPC objects. + grpc_response = ::Google::Longrunning::Operation.new + grpc_operation = GRPC::ActiveCall::Operation.new nil + grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + grpc_options = {} + + # Create request parameters for a unary method. + host_group = {} + update_mask = {} + + update_host_group_client_stub = ClientStub.new grpc_response, grpc_operation do |name, request, options:| + assert_equal :update_host_group, name + assert_kind_of ::Google::Cloud::NetApp::V1::UpdateHostGroupRequest, request + assert_equal Gapic::Protobuf.coerce({}, to: ::Google::Cloud::NetApp::V1::HostGroup), request["host_group"] + assert_equal Gapic::Protobuf.coerce({}, to: ::Google::Protobuf::FieldMask), request["update_mask"] + refute_nil options + end + + Gapic::ServiceStub.stub :new, update_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Client.new do |config| + config.credentials = grpc_channel + end + + # Use hash object + client.update_host_group({ host_group: host_group, update_mask: update_mask }) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use named arguments + client.update_host_group host_group: host_group, update_mask: update_mask do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object + client.update_host_group ::Google::Cloud::NetApp::V1::UpdateHostGroupRequest.new(host_group: host_group, update_mask: update_mask) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use hash object with options + client.update_host_group({ host_group: host_group, update_mask: update_mask }, grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object with options + client.update_host_group(::Google::Cloud::NetApp::V1::UpdateHostGroupRequest.new(host_group: host_group, update_mask: update_mask), grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Verify method calls + assert_equal 5, update_host_group_client_stub.call_rpc_count + end + end + + def test_delete_host_group + # Create GRPC objects. + grpc_response = ::Google::Longrunning::Operation.new + grpc_operation = GRPC::ActiveCall::Operation.new nil + grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure + grpc_options = {} + + # Create request parameters for a unary method. + name = "hello world" + + delete_host_group_client_stub = ClientStub.new grpc_response, grpc_operation do |name, request, options:| + assert_equal :delete_host_group, name + assert_kind_of ::Google::Cloud::NetApp::V1::DeleteHostGroupRequest, request + assert_equal "hello world", request["name"] + refute_nil options + end + + Gapic::ServiceStub.stub :new, delete_host_group_client_stub do + # Create client + client = ::Google::Cloud::NetApp::V1::NetApp::Client.new do |config| + config.credentials = grpc_channel + end + + # Use hash object + client.delete_host_group({ name: name }) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use named arguments + client.delete_host_group name: name do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object + client.delete_host_group ::Google::Cloud::NetApp::V1::DeleteHostGroupRequest.new(name: name) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use hash object with options + client.delete_host_group({ name: name }, grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Use protobuf object with options + client.delete_host_group(::Google::Cloud::NetApp::V1::DeleteHostGroupRequest.new(name: name), grpc_options) do |response, operation| + assert_kind_of Gapic::Operation, response + assert_equal grpc_response, response.grpc_op + assert_equal grpc_operation, operation + end + + # Verify method calls + assert_equal 5, delete_host_group_client_stub.call_rpc_count + end + end + def test_configure grpc_channel = GRPC::Core::Channel.new "localhost:8888", nil, :this_channel_is_insecure