| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent e006e1c commit 94aa4f5
14 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -30,6 +30,7 @@ proto_library( | |||
| 30 | 30 | "backup_vault.proto", | |
| 31 | 31 | "cloud_netapp_service.proto", | |
| 32 | 32 | "common.proto", | |
| 33 | + "host_group.proto", | ||
| 33 | 34 | "kms.proto", | |
| 34 | 35 | "quota_rule.proto", | |
| 35 | 36 | "replication.proto", | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,4 +1,4 @@ | |||
| 1 | - // Copyright 2025 Google LLC | ||
| 1 | + // Copyright 2026 Google LLC | ||
| 2 | 2 | // | |
| 3 | 3 | // Licensed under the Apache License, Version 2.0 (the "License"); | |
| 4 | 4 | // you may not use this file except in compliance with the License. | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,4 +1,4 @@ | |||
| 1 | - // Copyright 2025 Google LLC | ||
| 1 | + // Copyright 2026 Google LLC | ||
| 2 | 2 | // | |
| 3 | 3 | // Licensed under the Apache License, Version 2.0 (the "License"); | |
| 4 | 4 | // you may not use this file except in compliance with the License. | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,4 +1,4 @@ | |||
| 1 | - // Copyright 2025 Google LLC | ||
| 1 | + // Copyright 2026 Google LLC | ||
| 2 | 2 | // | |
| 3 | 3 | // Licensed under the Apache License, Version 2.0 (the "License"); | |
| 4 | 4 | // you may not use this file except in compliance with the License. | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,4 +1,4 @@ | |||
| 1 | - // Copyright 2025 Google LLC | ||
| 1 | + // Copyright 2026 Google LLC | ||
| 2 | 2 | // | |
| 3 | 3 | // Licensed under the Apache License, Version 2.0 (the "License"); | |
| 4 | 4 | // you may not use this file except in compliance with the License. | |
@@ -99,6 +99,24 @@ message BackupVault { | |||
| 99 | 99 | CROSS_REGION = 2; | |
| 100 | 100 | } | |
| 101 | 101 | ||
| 102 | + // Encryption state of customer-managed encryption keys (CMEK) backups. | ||
| 103 | + enum EncryptionState { | ||
| 104 | + // Encryption state not set. | ||
| 105 | + ENCRYPTION_STATE_UNSPECIFIED = 0; | ||
| 106 | + | ||
| 107 | + // Encryption state is pending. | ||
| 108 | + ENCRYPTION_STATE_PENDING = 1; | ||
| 109 | + | ||
| 110 | + // Encryption is complete. | ||
| 111 | + ENCRYPTION_STATE_COMPLETED = 2; | ||
| 112 | + | ||
| 113 | + // Encryption is in progress. | ||
| 114 | + ENCRYPTION_STATE_IN_PROGRESS = 3; | ||
| 115 | + | ||
| 116 | + // Encryption has failed. | ||
| 117 | + ENCRYPTION_STATE_FAILED = 4; | ||
| 118 | + } | ||
| 119 | + | ||
| 102 | 120 | // Identifier. The resource name of the backup vault. | |
| 103 | 121 | // Format: | |
| 104 | 122 | // `projects/{project_id}/locations/{location}/backupVaults/{backup_vault_id}`. | |
@@ -160,9 +178,29 @@ message BackupVault { | |||
| 160 | 178 | } | |
| 161 | 179 | ]; | |
| 162 | 180 | ||
| 163 | - // Optional. Backup retention policy defining the retenton of backups. | ||
| 181 | + // Optional. Backup retention policy defining the retention of backups. | ||
| 164 | 182 | BackupRetentionPolicy backup_retention_policy = 11 | |
| 165 | 183 | [(google.api.field_behavior) = OPTIONAL]; | |
| 184 | + | ||
| 185 | + // Optional. Specifies the Key Management System (KMS) configuration to be | ||
| 186 | + // used for backup encryption. Format: | ||
| 187 | + // `projects/{project}/locations/{location}/kmsConfigs/{kms_config}` | ||
| 188 | + string kms_config = 12 [ | ||
| 189 | + (google.api.field_behavior) = OPTIONAL, | ||
| 190 | + (google.api.resource_reference) = { | ||
| 191 | + type: "netapp.googleapis.com/KmsConfig" | ||
| 192 | + } | ||
| 193 | + ]; | ||
| 194 | + | ||
| 195 | + // Output only. Field indicating encryption state of CMEK backups. | ||
| 196 | + EncryptionState encryption_state = 13 | ||
| 197 | + [(google.api.field_behavior) = OUTPUT_ONLY]; | ||
| 198 | + | ||
| 199 | + // Output only. The crypto key version used to encrypt the backup vault. | ||
| 200 | + // Format: | ||
| 201 | + // `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}` | ||
| 202 | + string backups_crypto_key_version = 14 | ||
| 203 | + [(google.api.field_behavior) = OUTPUT_ONLY]; | ||
| 166 | 204 | } | |
| 167 | 205 | ||
| 168 | 206 | // GetBackupVaultRequest gets the state of a backupVault. | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,4 +1,4 @@ | |||
| 1 | - // Copyright 2025 Google LLC | ||
| 1 | + // Copyright 2026 Google LLC | ||
| 2 | 2 | // | |
| 3 | 3 | // Licensed under the Apache License, Version 2.0 (the "License"); | |
| 4 | 4 | // you may not use this file except in compliance with the License. | |
@@ -24,6 +24,7 @@ import "google/cloud/netapp/v1/active_directory.proto"; | |||
| 24 | 24 | import "google/cloud/netapp/v1/backup.proto"; | |
| 25 | 25 | import "google/cloud/netapp/v1/backup_policy.proto"; | |
| 26 | 26 | import "google/cloud/netapp/v1/backup_vault.proto"; | |
| 27 | + import "google/cloud/netapp/v1/host_group.proto"; | ||
| 27 | 28 | import "google/cloud/netapp/v1/kms.proto"; | |
| 28 | 29 | import "google/cloud/netapp/v1/quota_rule.proto"; | |
| 29 | 30 | import "google/cloud/netapp/v1/replication.proto"; | |
@@ -760,6 +761,77 @@ service NetApp { | |||
| 760 | 761 | metadata_type: "OperationMetadata" | |
| 761 | 762 | }; | |
| 762 | 763 | } | |
| 764 | + | ||
| 765 | + // Restore files from a backup to a volume. | ||
| 766 | + rpc RestoreBackupFiles(RestoreBackupFilesRequest) | ||
| 767 | + returns (google.longrunning.Operation) { | ||
| 768 | + option (google.api.http) = { | ||
| 769 | + post: "/v1/{name=projects/*/locations/*/volumes/*}:restore" | ||
| 770 | + body: "*" | ||
| 771 | + }; | ||
| 772 | + option (google.longrunning.operation_info) = { | ||
| 773 | + response_type: "RestoreBackupFilesResponse" | ||
| 774 | + metadata_type: "OperationMetadata" | ||
| 775 | + }; | ||
| 776 | + } | ||
| 777 | + | ||
| 778 | + // Returns a list of host groups in a `location`. Use `-` as location to list | ||
| 779 | + // host groups across all locations. | ||
| 780 | + rpc ListHostGroups(ListHostGroupsRequest) returns (ListHostGroupsResponse) { | ||
| 781 | + option (google.api.http) = { | ||
| 782 | + get: "/v1/{parent=projects/*/locations/*}/hostGroups" | ||
| 783 | + }; | ||
| 784 | + option (google.api.method_signature) = "parent"; | ||
| 785 | + } | ||
| 786 | + | ||
| 787 | + // Returns details of the specified host group. | ||
| 788 | + rpc GetHostGroup(GetHostGroupRequest) returns (HostGroup) { | ||
| 789 | + option (google.api.http) = { | ||
| 790 | + get: "/v1/{name=projects/*/locations/*/hostGroups/*}" | ||
| 791 | + }; | ||
| 792 | + option (google.api.method_signature) = "name"; | ||
| 793 | + } | ||
| 794 | + | ||
| 795 | + // Creates a new host group. | ||
| 796 | + rpc CreateHostGroup(CreateHostGroupRequest) | ||
| 797 | + returns (google.longrunning.Operation) { | ||
| 798 | + option (google.api.http) = { | ||
| 799 | + post: "/v1/{parent=projects/*/locations/*}/hostGroups" | ||
| 800 | + body: "host_group" | ||
| 801 | + }; | ||
| 802 | + option (google.api.method_signature) = "parent,host_group,host_group_id"; | ||
| 803 | + option (google.longrunning.operation_info) = { | ||
| 804 | + response_type: "HostGroup" | ||
| 805 | + metadata_type: "OperationMetadata" | ||
| 806 | + }; | ||
| 807 | + } | ||
| 808 | + | ||
| 809 | + // Updates an existing host group. | ||
| 810 | + rpc UpdateHostGroup(UpdateHostGroupRequest) | ||
| 811 | + returns (google.longrunning.Operation) { | ||
| 812 | + option (google.api.http) = { | ||
| 813 | + patch: "/v1/{host_group.name=projects/*/locations/*/hostGroups/*}" | ||
| 814 | + body: "host_group" | ||
| 815 | + }; | ||
| 816 | + option (google.api.method_signature) = "host_group,update_mask"; | ||
| 817 | + option (google.longrunning.operation_info) = { | ||
| 818 | + response_type: "HostGroup" | ||
| 819 | + metadata_type: "OperationMetadata" | ||
| 820 | + }; | ||
| 821 | + } | ||
| 822 | + | ||
| 823 | + // Deletes a host group. | ||
| 824 | + rpc DeleteHostGroup(DeleteHostGroupRequest) | ||
| 825 | + returns (google.longrunning.Operation) { | ||
| 826 | + option (google.api.http) = { | ||
| 827 | + delete: "/v1/{name=projects/*/locations/*/hostGroups/*}" | ||
| 828 | + }; | ||
| 829 | + option (google.api.method_signature) = "name"; | ||
| 830 | + option (google.longrunning.operation_info) = { | ||
| 831 | + response_type: "google.protobuf.Empty" | ||
| 832 | + metadata_type: "OperationMetadata" | ||
| 833 | + }; | ||
| 834 | + } | ||
| 763 | 835 | } | |
| 764 | 836 | ||
| 765 | 837 | // Represents the metadata of the long-running operation. | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,4 +1,4 @@ | |||
| 1 | - // Copyright 2025 Google LLC | ||
| 1 | + // Copyright 2026 Google LLC | ||
| 2 | 2 | // | |
| 3 | 3 | // Licensed under the Apache License, Version 2.0 (the "License"); | |
| 4 | 4 | // you may not use this file except in compliance with the License. | |
@@ -77,6 +77,21 @@ enum DirectoryServiceType { | |||
| 77 | 77 | ACTIVE_DIRECTORY = 1; | |
| 78 | 78 | } | |
| 79 | 79 | ||
| 80 | + // Type of storage pool | ||
| 81 | + enum StoragePoolType { | ||
| 82 | + // Storage pool type is not specified. | ||
| 83 | + STORAGE_POOL_TYPE_UNSPECIFIED = 0; | ||
| 84 | + | ||
| 85 | + // Storage pool type is file. | ||
| 86 | + FILE = 1; | ||
| 87 | + | ||
| 88 | + // Storage pool type is unified. | ||
| 89 | + UNIFIED = 2; | ||
| 90 | + | ||
| 91 | + // Storage pool type is unified large capacity. | ||
| 92 | + UNIFIED_LARGE_CAPACITY = 3; | ||
| 93 | + } | ||
| 94 | + | ||
| 80 | 95 | // Schedule for Hybrid Replication. | |
| 81 | 96 | // New enum values may be added in future to support different frequency of | |
| 82 | 97 | // replication. | |
@@ -106,6 +121,21 @@ enum QosType { | |||
| 106 | 121 | MANUAL = 2; | |
| 107 | 122 | } | |
| 108 | 123 | ||
| 124 | + // OS types for the host group | ||
| 125 | + enum OsType { | ||
| 126 | + // Unspecified OS Type | ||
| 127 | + OS_TYPE_UNSPECIFIED = 0; | ||
| 128 | + | ||
| 129 | + // OS Type is Linux | ||
| 130 | + LINUX = 1; | ||
| 131 | + | ||
| 132 | + // OS Type is Windows | ||
| 133 | + WINDOWS = 2; | ||
| 134 | + | ||
| 135 | + // OS Type is VMware ESXi | ||
| 136 | + ESXI = 3; | ||
| 137 | + } | ||
| 138 | + | ||
| 109 | 139 | // Metadata for a given | |
| 110 | 140 | // [google.cloud.location.Location][google.cloud.location.Location]. | |
| 111 | 141 | message LocationMetadata { | |
@@ -119,6 +149,9 @@ message LocationMetadata { | |||
| 119 | 149 | ||
| 120 | 150 | // Output only. Indicates if the location has VCP support. | |
| 121 | 151 | bool has_vcp = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; | |
| 152 | + | ||
| 153 | + // Output only. Indicates if the location has ONTAP Proxy support. | ||
| 154 | + bool has_ontap_proxy = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; | ||
| 122 | 155 | } | |
| 123 | 156 | ||
| 124 | 157 | // UserCommands contains the commands to be executed by the customer. | |
| Back | FazBrowse Home | New Git URL |
0 commit comments