google-cloud-bigtable-admin-v2 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1e851546fc3354fe87c5899aba92ceedb248455fab78ea983c14e63c3a3f6304
4
- data.tar.gz: a33a20a24f39dd76f393e90c5b1ae0fe3ae4675aa33814ae9df4daae01d8f5ff
3
+ metadata.gz: de3300a4a28be40a2698a62a6c6c4ffa0b02908554e78463e8fa3168ce17a97a
4
+ data.tar.gz: 8f86c94ac452c827a3025fe3bc45a5b3f8a3a0307781325fb612d67382b2d983
5
5
  SHA512:
6
- metadata.gz: 65fb698a0a3b34284e86433e9278f6ef1a3d71fe125bce1f73a699f333bb5425e88e4b4be569b2365450149fdfe69ca4bcc26ca8cfc7c0e19b9dfc17f1690e25
7
- data.tar.gz: 7d1486973873ddeafa6bf2dc08ca3b3525fda8f3e93b7efcfe4cc03371b2ac408a239b87d3ac1909e678380ca066e3b40e7c1f647557b3b942067b7d2c4dd1cd
6
+ metadata.gz: 051cdaf6c1dff71c6b1b9179ac49e4d736d67c47dcddea264028a6adc4a40c67e221fb892a077c1bcc613750ad33fb2a8cb3642a2d6c342cc58f51d9b170282f
7
+ data.tar.gz: 83efe93cdae0b145fd9dde5f007253a2331a8a22096214656c92a3fe89f540bdac1f3291f7f83b03c969fb7c2789692a72fe29ad8ce971b96aed4497d66ed52e
data/LICENSE.md CHANGED
@@ -1,192 +1,190 @@
1
- Apache License
2
- ==============
3
-
4
- * Version 2.0, January 2004
5
- * https://www.apache.org/licenses/
6
-
7
- ### TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
8
-
9
- 1. **Definitions.**
10
-
11
- "License" shall mean the terms and conditions for use, reproduction,
12
- and distribution as defined by Sections 1 through 9 of this document.
13
-
14
- "Licensor" shall mean the copyright owner or entity authorized by
15
- the copyright owner that is granting the License.
16
-
17
- "Legal Entity" shall mean the union of the acting entity and all
18
- other entities that control, are controlled by, or are under common
19
- control with that entity. For the purposes of this definition,
20
- "control" means (i) the power, direct or indirect, to cause the
21
- direction or management of such entity, whether by contract or
22
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
23
- outstanding shares, or (iii) beneficial ownership of such entity.
24
-
25
- "You" (or "Your") shall mean an individual or Legal Entity
26
- exercising permissions granted by this License.
27
-
28
- "Source" form shall mean the preferred form for making modifications,
29
- including but not limited to software source code, documentation
30
- source, and configuration files.
31
-
32
- "Object" form shall mean any form resulting from mechanical
33
- transformation or translation of a Source form, including but
34
- not limited to compiled object code, generated documentation,
35
- and conversions to other media types.
36
-
37
- "Work" shall mean the work of authorship, whether in Source or
38
- Object form, made available under the License, as indicated by a
39
- copyright notice that is included in or attached to the work
40
- (an example is provided in the Appendix below).
41
-
42
- "Derivative Works" shall mean any work, whether in Source or Object
43
- form, that is based on (or derived from) the Work and for which the
44
- editorial revisions, annotations, elaborations, or other modifications
45
- represent, as a whole, an original work of authorship. For the purposes
46
- of this License, Derivative Works shall not include works that remain
47
- separable from, or merely link (or bind by name) to the interfaces of,
48
- the Work and Derivative Works thereof.
49
-
50
- "Contribution" shall mean any work of authorship, including
51
- the original version of the Work and any modifications or additions
52
- to that Work or Derivative Works thereof, that is intentionally
53
- submitted to Licensor for inclusion in the Work by the copyright owner
54
- or by an individual or Legal Entity authorized to submit on behalf of
55
- the copyright owner. For the purposes of this definition, "submitted"
56
- means any form of electronic, verbal, or written communication sent
57
- to the Licensor or its representatives, including but not limited to
58
- communication on electronic mailing lists, source code control systems,
59
- and issue tracking systems that are managed by, or on behalf of, the
60
- Licensor for the purpose of discussing and improving the Work, but
61
- excluding communication that is conspicuously marked or otherwise
62
- designated in writing by the copyright owner as "Not a Contribution."
63
-
64
- "Contributor" shall mean Licensor and any individual or Legal Entity
65
- on behalf of whom a Contribution has been received by Licensor and
66
- subsequently incorporated within the Work.
67
-
68
- 2. **Grant of Copyright License.** Subject to the terms and conditions of
69
- this License, each Contributor hereby grants to You a perpetual,
70
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
71
- copyright license to reproduce, prepare Derivative Works of,
72
- publicly display, publicly perform, sublicense, and distribute the
73
- Work and such Derivative Works in Source or Object form.
74
-
75
- 3. **Grant of Patent License.** Subject to the terms and conditions of
76
- this License, each Contributor hereby grants to You a perpetual,
77
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
78
- (except as stated in this section) patent license to make, have made,
79
- use, offer to sell, sell, import, and otherwise transfer the Work,
80
- where such license applies only to those patent claims licensable
81
- by such Contributor that are necessarily infringed by their
82
- Contribution(s) alone or by combination of their Contribution(s)
83
- with the Work to which such Contribution(s) was submitted. If You
84
- institute patent litigation against any entity (including a
85
- cross-claim or counterclaim in a lawsuit) alleging that the Work
86
- or a Contribution incorporated within the Work constitutes direct
87
- or contributory patent infringement, then any patent licenses
88
- granted to You under this License for that Work shall terminate
89
- as of the date such litigation is filed.
90
-
91
- 4. **Redistribution.** You may reproduce and distribute copies of the
92
- Work or Derivative Works thereof in any medium, with or without
93
- modifications, and in Source or Object form, provided that You
94
- meet the following conditions:
95
-
96
- * **(a)** You must give any other recipients of the Work or
97
- Derivative Works a copy of this License; and
98
-
99
- * **(b)** You must cause any modified files to carry prominent notices
100
- stating that You changed the files; and
101
-
102
- * **(c)** You must retain, in the Source form of any Derivative Works
103
- that You distribute, all copyright, patent, trademark, and
104
- attribution notices from the Source form of the Work,
105
- excluding those notices that do not pertain to any part of
106
- the Derivative Works; and
107
-
108
- * **(d)** If the Work includes a "NOTICE" text file as part of its
109
- distribution, then any Derivative Works that You distribute must
110
- include a readable copy of the attribution notices contained
111
- within such NOTICE file, excluding those notices that do not
112
- pertain to any part of the Derivative Works, in at least one
113
- of the following places: within a NOTICE text file distributed
114
- as part of the Derivative Works; within the Source form or
115
- documentation, if provided along with the Derivative Works; or,
116
- within a display generated by the Derivative Works, if and
117
- wherever such third-party notices normally appear. The contents
118
- of the NOTICE file are for informational purposes only and
119
- do not modify the License. You may add Your own attribution
120
- notices within Derivative Works that You distribute, alongside
121
- or as an addendum to the NOTICE text from the Work, provided
122
- that such additional attribution notices cannot be construed
123
- as modifying the License.
124
-
125
- You may add Your own copyright statement to Your modifications and
126
- may provide additional or different license terms and conditions
127
- for use, reproduction, or distribution of Your modifications, or
128
- for any such Derivative Works as a whole, provided Your use,
129
- reproduction, and distribution of the Work otherwise complies with
130
- the conditions stated in this License.
131
-
132
- 5. **Submission of Contributions.** Unless You explicitly state otherwise,
133
- any Contribution intentionally submitted for inclusion in the Work
134
- by You to the Licensor shall be under the terms and conditions of
135
- this License, without any additional terms or conditions.
136
- Notwithstanding the above, nothing herein shall supersede or modify
137
- the terms of any separate license agreement you may have executed
138
- with Licensor regarding such Contributions.
139
-
140
- 6. **Trademarks.** This License does not grant permission to use the trade
141
- names, trademarks, service marks, or product names of the Licensor,
142
- except as required for reasonable and customary use in describing the
143
- origin of the Work and reproducing the content of the NOTICE file.
144
-
145
- 7. **Disclaimer of Warranty.** Unless required by applicable law or
146
- agreed to in writing, Licensor provides the Work (and each
147
- Contributor provides its Contributions) on an "AS IS" BASIS,
148
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
149
- implied, including, without limitation, any warranties or conditions
150
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
151
- PARTICULAR PURPOSE. You are solely responsible for determining the
152
- appropriateness of using or redistributing the Work and assume any
153
- risks associated with Your exercise of permissions under this License.
154
-
155
- 8. **Limitation of Liability.** In no event and under no legal theory,
156
- whether in tort (including negligence), contract, or otherwise,
157
- unless required by applicable law (such as deliberate and grossly
158
- negligent acts) or agreed to in writing, shall any Contributor be
159
- liable to You for damages, including any direct, indirect, special,
160
- incidental, or consequential damages of any character arising as a
161
- result of this License or out of the use or inability to use the
162
- Work (including but not limited to damages for loss of goodwill,
163
- work stoppage, computer failure or malfunction, or any and all
164
- other commercial damages or losses), even if such Contributor
165
- has been advised of the possibility of such damages.
166
-
167
- 9. **Accepting Warranty or Additional Liability.** While redistributing
168
- the Work or Derivative Works thereof, You may choose to offer,
169
- and charge a fee for, acceptance of support, warranty, indemnity,
170
- or other liability obligations and/or rights consistent with this
171
- License. However, in accepting such obligations, You may act only
172
- on Your own behalf and on Your sole responsibility, not on behalf
173
- of any other Contributor, and only if You agree to indemnify,
174
- defend, and hold each Contributor harmless for any liability
175
- incurred by, or claims asserted against, such Contributor by reason
176
- of your accepting any such warranty or additional liability.
177
-
178
- _END OF TERMS AND CONDITIONS_
179
-
180
- ### APPENDIX: How to apply the Apache License to your work.
181
-
182
- To apply the Apache License to your work, attach the following
183
- boilerplate notice, with the fields enclosed by brackets "`[]`"
184
- replaced with your own identifying information. (Don't include
185
- the brackets!) The text should be enclosed in the appropriate
186
- comment syntax for the file format. We also recommend that a
187
- file or class name and description of purpose be included on the
188
- same "printed page" as the copyright notice for easier
189
- identification within third-party archives.
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
177
+
178
+ APPENDIX: How to apply the Apache License to your work.
179
+
180
+ To apply the Apache License to your work, attach the following
181
+ boilerplate notice, with the fields enclosed by brackets "[]"
182
+ replaced with your own identifying information. (Don't include
183
+ the brackets!) The text should be enclosed in the appropriate
184
+ comment syntax for the file format. We also recommend that a
185
+ file or class name and description of purpose be included on the
186
+ same "printed page" as the copyright notice for easier
187
+ identification within third-party archives.
190
188
 
191
189
  Copyright [yyyy] [name of copyright owner]
192
190
 
@@ -194,7 +192,7 @@ identification within third-party archives.
194
192
  you may not use this file except in compliance with the License.
195
193
  You may obtain a copy of the License at
196
194
 
197
- https://www.apache.org/licenses/LICENSE-2.0
195
+ http://www.apache.org/licenses/LICENSE-2.0
198
196
 
199
197
  Unless required by applicable law or agreed to in writing, software
200
198
  distributed under the License is distributed on an "AS IS" BASIS,
@@ -31,6 +31,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
31
31
  optional :state, :enum, 3, "google.bigtable.admin.v2.Cluster.State"
32
32
  optional :serve_nodes, :int32, 4
33
33
  optional :default_storage_type, :enum, 5, "google.bigtable.admin.v2.StorageType"
34
+ optional :encryption_config, :message, 6, "google.bigtable.admin.v2.Cluster.EncryptionConfig"
35
+ end
36
+ add_message "google.bigtable.admin.v2.Cluster.EncryptionConfig" do
37
+ optional :kms_key_name, :string, 1
34
38
  end
35
39
  add_enum "google.bigtable.admin.v2.Cluster.State" do
36
40
  value :STATE_NOT_KNOWN, 0
@@ -66,6 +70,7 @@ module Google
66
70
  Instance::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Instance.State").enummodule
67
71
  Instance::Type = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Instance.Type").enummodule
68
72
  Cluster = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Cluster").msgclass
73
+ Cluster::EncryptionConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Cluster.EncryptionConfig").msgclass
69
74
  Cluster::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Cluster.State").enummodule
70
75
  AppProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.AppProfile").msgclass
71
76
  AppProfile::MultiClusterRoutingUseAny = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.AppProfile.MultiClusterRoutingUseAny").msgclass
@@ -7,6 +7,7 @@ require 'google/api/field_behavior_pb'
7
7
  require 'google/api/resource_pb'
8
8
  require 'google/protobuf/duration_pb'
9
9
  require 'google/protobuf/timestamp_pb'
10
+ require 'google/rpc/status_pb'
10
11
  Google::Protobuf::DescriptorPool.generated_pool.build do
11
12
  add_file("google/bigtable/admin/v2/table.proto", :syntax => :proto3) do
12
13
  add_message "google.bigtable.admin.v2.RestoreInfo" do
@@ -24,6 +25,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
24
25
  end
25
26
  add_message "google.bigtable.admin.v2.Table.ClusterState" do
26
27
  optional :replication_state, :enum, 1, "google.bigtable.admin.v2.Table.ClusterState.ReplicationState"
28
+ repeated :encryption_info, :message, 2, "google.bigtable.admin.v2.EncryptionInfo"
27
29
  end
28
30
  add_enum "google.bigtable.admin.v2.Table.ClusterState.ReplicationState" do
29
31
  value :STATE_NOT_KNOWN, 0
@@ -42,6 +44,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
42
44
  value :NAME_ONLY, 1
43
45
  value :SCHEMA_VIEW, 2
44
46
  value :REPLICATION_VIEW, 3
47
+ value :ENCRYPTION_VIEW, 5
45
48
  value :FULL, 4
46
49
  end
47
50
  add_message "google.bigtable.admin.v2.ColumnFamily" do
@@ -61,6 +64,16 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
61
64
  add_message "google.bigtable.admin.v2.GcRule.Union" do
62
65
  repeated :rules, :message, 1, "google.bigtable.admin.v2.GcRule"
63
66
  end
67
+ add_message "google.bigtable.admin.v2.EncryptionInfo" do
68
+ optional :encryption_type, :enum, 3, "google.bigtable.admin.v2.EncryptionInfo.EncryptionType"
69
+ optional :encryption_status, :message, 4, "google.rpc.Status"
70
+ optional :kms_key_version, :string, 2
71
+ end
72
+ add_enum "google.bigtable.admin.v2.EncryptionInfo.EncryptionType" do
73
+ value :ENCRYPTION_TYPE_UNSPECIFIED, 0
74
+ value :GOOGLE_DEFAULT_ENCRYPTION, 1
75
+ value :CUSTOMER_MANAGED_ENCRYPTION, 2
76
+ end
64
77
  add_message "google.bigtable.admin.v2.Snapshot" do
65
78
  optional :name, :string, 1
66
79
  optional :source_table, :message, 2, "google.bigtable.admin.v2.Table"
@@ -83,6 +96,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
83
96
  optional :end_time, :message, 5, "google.protobuf.Timestamp"
84
97
  optional :size_bytes, :int64, 6
85
98
  optional :state, :enum, 7, "google.bigtable.admin.v2.Backup.State"
99
+ optional :encryption_info, :message, 9, "google.bigtable.admin.v2.EncryptionInfo"
86
100
  end
87
101
  add_enum "google.bigtable.admin.v2.Backup.State" do
88
102
  value :STATE_UNSPECIFIED, 0
@@ -117,6 +131,8 @@ module Google
117
131
  GcRule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.GcRule").msgclass
118
132
  GcRule::Intersection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.GcRule.Intersection").msgclass
119
133
  GcRule::Union = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.GcRule.Union").msgclass
134
+ EncryptionInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.EncryptionInfo").msgclass
135
+ EncryptionInfo::EncryptionType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.EncryptionInfo.EncryptionType").enummodule
120
136
  Snapshot = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Snapshot").msgclass
121
137
  Snapshot::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Snapshot.State").enummodule
122
138
  Backup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.bigtable.admin.v2.Backup").msgclass
@@ -944,7 +944,7 @@ module Google
944
944
  # @param options [::Gapic::CallOptions, ::Hash]
945
945
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
946
946
  #
947
- # @overload update_cluster(location: nil, serve_nodes: nil, default_storage_type: nil)
947
+ # @overload update_cluster(location: nil, serve_nodes: nil, default_storage_type: nil, encryption_config: nil)
948
948
  # Pass arguments to `update_cluster` via keyword arguments. Note that at
949
949
  # least one keyword argument is required. To specify no parameters, or to keep all
950
950
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -962,6 +962,8 @@ module Google
962
962
  # (`CreationOnly`)
963
963
  # The type of storage used by this cluster to serve its
964
964
  # parent instance's tables, unless explicitly overridden.
965
+ # @param encryption_config [::Google::Cloud::Bigtable::Admin::V2::Cluster::EncryptionConfig, ::Hash]
966
+ # Immutable. The encryption configuration for CMEK-protected clusters.
965
967
  #
966
968
  # @yield [response, operation] Access the result along with the RPC operation
967
969
  # @yieldparam response [::Gapic::Operation]
@@ -63,6 +63,27 @@ module Google
63
63
  "projects/#{project}/instances/#{instance}/clusters/#{cluster}"
64
64
  end
65
65
 
66
+ ##
67
+ # Create a fully-qualified CryptoKey resource string.
68
+ #
69
+ # The resource will be in the following format:
70
+ #
71
+ # `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`
72
+ #
73
+ # @param project [String]
74
+ # @param location [String]
75
+ # @param key_ring [String]
76
+ # @param crypto_key [String]
77
+ #
78
+ # @return [::String]
79
+ def crypto_key_path project:, location:, key_ring:, crypto_key:
80
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
81
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
82
+ raise ::ArgumentError, "key_ring cannot contain /" if key_ring.to_s.include? "/"
83
+
84
+ "projects/#{project}/locations/#{location}/keyRings/#{key_ring}/cryptoKeys/#{crypto_key}"
85
+ end
86
+
66
87
  ##
67
88
  # Create a fully-qualified Instance resource string.
68
89
  #
@@ -65,6 +65,29 @@ module Google
65
65
  "projects/#{project}/instances/#{instance}/clusters/#{cluster}"
66
66
  end
67
67
 
68
+ ##
69
+ # Create a fully-qualified CryptoKeyVersion resource string.
70
+ #
71
+ # The resource will be in the following format:
72
+ #
73
+ # `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}`
74
+ #
75
+ # @param project [String]
76
+ # @param location [String]
77
+ # @param key_ring [String]
78
+ # @param crypto_key [String]
79
+ # @param crypto_key_version [String]
80
+ #
81
+ # @return [::String]
82
+ def crypto_key_version_path project:, location:, key_ring:, crypto_key:, crypto_key_version:
83
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
84
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
85
+ raise ::ArgumentError, "key_ring cannot contain /" if key_ring.to_s.include? "/"
86
+ raise ::ArgumentError, "crypto_key cannot contain /" if crypto_key.to_s.include? "/"
87
+
88
+ "projects/#{project}/locations/#{location}/keyRings/#{key_ring}/cryptoKeys/#{crypto_key}/cryptoKeyVersions/#{crypto_key_version}"
89
+ end
90
+
68
91
  ##
69
92
  # Create a fully-qualified Instance resource string.
70
93
  #
@@ -22,7 +22,7 @@ module Google
22
22
  module Bigtable
23
23
  module Admin
24
24
  module V2
25
- VERSION = "0.3.0"
25
+ VERSION = "0.4.0"
26
26
  end
27
27
  end
28
28
  end
@@ -130,10 +130,30 @@ module Google
130
130
  # (`CreationOnly`)
131
131
  # The type of storage used by this cluster to serve its
132
132
  # parent instance's tables, unless explicitly overridden.
133
+ # @!attribute [rw] encryption_config
134
+ # @return [::Google::Cloud::Bigtable::Admin::V2::Cluster::EncryptionConfig]
135
+ # Immutable. The encryption configuration for CMEK-protected clusters.
133
136
  class Cluster
134
137
  include ::Google::Protobuf::MessageExts
135
138
  extend ::Google::Protobuf::MessageExts::ClassMethods
136
139
 
140
+ # Cloud Key Management Service (Cloud KMS) settings for a CMEK-protected
141
+ # cluster.
142
+ # @!attribute [rw] kms_key_name
143
+ # @return [::String]
144
+ # Describes the Cloud KMS encryption key that will be used to protect the
145
+ # destination Bigtable cluster. The requirements for this key are:
146
+ # 1) The Cloud Bigtable service account associated with the project that
147
+ # contains this cluster must be granted the
148
+ # `cloudkms.cryptoKeyEncrypterDecrypter` role on the CMEK key.
149
+ # 2) Only regional keys can be used and the region of the CMEK key must
150
+ # match the region of the cluster.
151
+ # 3) All clusters within an instance must use the same CMEK key.
152
+ class EncryptionConfig
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+ end
156
+
137
157
  # Possible states of a cluster.
138
158
  module State
139
159
  # The state of the cluster could not be determined.
@@ -166,7 +186,7 @@ module Google
166
186
  # @return [::String]
167
187
  # (`OutputOnly`)
168
188
  # The unique name of the app profile. Values are of the form
169
- # `projects/<project>/instances/<instance>/appProfiles/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`.
189
+ # `projects/{project}/instances/{instance}/appProfiles/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`.
170
190
  # @!attribute [rw] etag
171
191
  # @return [::String]
172
192
  # Strongly validated etag for optimistic concurrency control. Preserve the
@@ -39,8 +39,8 @@ module Google
39
39
  # Each table is served using the resources of its parent cluster.
40
40
  # @!attribute [rw] name
41
41
  # @return [::String]
42
- # Output only. The unique name of the table. Values are of the form
43
- # `projects/<project>/instances/<instance>/tables/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`.
42
+ # The unique name of the table. Values are of the form
43
+ # `projects/{project}/instances/{instance}/tables/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`.
44
44
  # Views: `NAME_ONLY`, `SCHEMA_VIEW`, `REPLICATION_VIEW`, `FULL`
45
45
  # @!attribute [rw] cluster_states
46
46
  # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Bigtable::Admin::V2::Table::ClusterState}]
@@ -48,7 +48,7 @@ module Google
48
48
  # If it could not be determined whether or not the table has data in a
49
49
  # particular cluster (for example, if its zone is unavailable), then
50
50
  # there will be an entry for the cluster with UNKNOWN `replication_status`.
51
- # Views: `REPLICATION_VIEW`, `FULL`
51
+ # Views: `REPLICATION_VIEW`, `ENCRYPTION_VIEW`, `FULL`
52
52
  # @!attribute [rw] column_families
53
53
  # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Bigtable::Admin::V2::ColumnFamily}]
54
54
  # (`CreationOnly`)
@@ -73,6 +73,13 @@ module Google
73
73
  # @!attribute [rw] replication_state
74
74
  # @return [::Google::Cloud::Bigtable::Admin::V2::Table::ClusterState::ReplicationState]
75
75
  # Output only. The state of replication for the table in this cluster.
76
+ # @!attribute [r] encryption_info
77
+ # @return [::Array<::Google::Cloud::Bigtable::Admin::V2::EncryptionInfo>]
78
+ # Output only. The encryption information for the table in this cluster.
79
+ # If the encryption key protecting this resource is customer managed, then
80
+ # its version can be rotated in Cloud Key Management Service (Cloud KMS).
81
+ # The primary version of the key and its status will be reflected here when
82
+ # changes propagate from Cloud KMS.
76
83
  class ClusterState
77
84
  include ::Google::Protobuf::MessageExts
78
85
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -151,6 +158,9 @@ module Google
151
158
  # state.
152
159
  REPLICATION_VIEW = 3
153
160
 
161
+ # Only populates 'name' and fields related to the table's encryption state.
162
+ ENCRYPTION_VIEW = 5
163
+
154
164
  # Populates all fields.
155
165
  FULL = 4
156
166
  end
@@ -208,6 +218,47 @@ module Google
208
218
  end
209
219
  end
210
220
 
221
+ # Encryption information for a given resource.
222
+ # If this resource is protected with customer managed encryption, the in-use
223
+ # Cloud Key Management Service (Cloud KMS) key version is specified along with
224
+ # its status.
225
+ # @!attribute [r] encryption_type
226
+ # @return [::Google::Cloud::Bigtable::Admin::V2::EncryptionInfo::EncryptionType]
227
+ # Output only. The type of encryption used to protect this resource.
228
+ # @!attribute [r] encryption_status
229
+ # @return [::Google::Rpc::Status]
230
+ # Output only. The status of encrypt/decrypt calls on underlying data for
231
+ # this resource. Regardless of status, the existing data is always encrypted
232
+ # at rest.
233
+ # @!attribute [r] kms_key_version
234
+ # @return [::String]
235
+ # Output only. The version of the Cloud KMS key specified in the parent
236
+ # cluster that is in use for the data underlying this table.
237
+ class EncryptionInfo
238
+ include ::Google::Protobuf::MessageExts
239
+ extend ::Google::Protobuf::MessageExts::ClassMethods
240
+
241
+ # Possible encryption types for a resource.
242
+ module EncryptionType
243
+ # Encryption type was not specified, though data at rest remains encrypted.
244
+ ENCRYPTION_TYPE_UNSPECIFIED = 0
245
+
246
+ # The data backing this resource is encrypted at rest with a key that is
247
+ # fully managed by Google. No key version or status will be populated.
248
+ # This is the default state.
249
+ GOOGLE_DEFAULT_ENCRYPTION = 1
250
+
251
+ # The data backing this resource is encrypted at rest with a key that is
252
+ # managed by the customer.
253
+ # The in-use version of the key and its status are populated for
254
+ # CMEK-protected tables.
255
+ # CMEK-protected backups are pinned to the key version that was in use at
256
+ # the time the backup was taken. This key version is populated but its
257
+ # status is not tracked and is reported as `UNKNOWN`.
258
+ CUSTOMER_MANAGED_ENCRYPTION = 2
259
+ end
260
+ end
261
+
211
262
  # A snapshot of a table at a particular time. A snapshot can be used as a
212
263
  # checkpoint for data restoration or a data source for a new table.
213
264
  #
@@ -219,7 +270,7 @@ module Google
219
270
  # @return [::String]
220
271
  # Output only. The unique name of the snapshot.
221
272
  # Values are of the form
222
- # `projects/<project>/instances/<instance>/clusters/<cluster>/snapshots/<snapshot>`.
273
+ # `projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}`.
223
274
  # @!attribute [rw] source_table
224
275
  # @return [::Google::Cloud::Bigtable::Admin::V2::Table]
225
276
  # Output only. The source table at the time the snapshot was taken.
@@ -304,6 +355,9 @@ module Google
304
355
  # @!attribute [r] state
305
356
  # @return [::Google::Cloud::Bigtable::Admin::V2::Backup::State]
306
357
  # Output only. The current state of the backup.
358
+ # @!attribute [r] encryption_info
359
+ # @return [::Google::Cloud::Bigtable::Admin::V2::EncryptionInfo]
360
+ # Output only. The encryption information for the backup.
307
361
  class Backup
308
362
  include ::Google::Protobuf::MessageExts
309
363
  extend ::Google::Protobuf::MessageExts::ClassMethods
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-bigtable-admin-v2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-02 00:00:00.000000000 Z
11
+ date: 2021-02-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -242,7 +242,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
242
242
  - !ruby/object:Gem::Version
243
243
  version: '0'
244
244
  requirements: []
245
- rubygems_version: 3.2.6
245
+ rubygems_version: 3.2.11
246
246
  signing_key:
247
247
  specification_version: 4
248
248
  summary: API Client library for the Cloud Bigtable Admin V2 API