google-cloud-bigquery-data_policies-v1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "googleauth"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Bigquery
24
+ module DataPolicies
25
+ module V1
26
+ module DataPolicyService
27
+ # Credentials for the DataPolicyService API.
28
+ class Credentials < ::Google::Auth::Credentials
29
+ self.scope = [
30
+ "https://www.googleapis.com/auth/bigquery",
31
+ "https://www.googleapis.com/auth/cloud-platform"
32
+ ]
33
+ self.env_vars = [
34
+ "GOOGLE_CLOUD_CREDENTIALS",
35
+ "GOOGLE_CLOUD_KEYFILE",
36
+ "GCLOUD_KEYFILE",
37
+ "GOOGLE_CLOUD_CREDENTIALS_JSON",
38
+ "GOOGLE_CLOUD_KEYFILE_JSON",
39
+ "GCLOUD_KEYFILE_JSON"
40
+ ]
41
+ self.paths = [
42
+ "~/.config/google_cloud/application_default_credentials.json"
43
+ ]
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Bigquery
23
+ module DataPolicies
24
+ module V1
25
+ module DataPolicyService
26
+ # Path helper methods for the DataPolicyService API.
27
+ module Paths
28
+ ##
29
+ # Create a fully-qualified DataPolicy resource string.
30
+ #
31
+ # The resource will be in the following format:
32
+ #
33
+ # `projects/{project}/locations/{location}/dataPolicies/{data_policy}`
34
+ #
35
+ # @param project [String]
36
+ # @param location [String]
37
+ # @param data_policy [String]
38
+ #
39
+ # @return [::String]
40
+ def data_policy_path project:, location:, data_policy:
41
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
42
+ raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
43
+
44
+ "projects/#{project}/locations/#{location}/dataPolicies/#{data_policy}"
45
+ end
46
+
47
+ ##
48
+ # Create a fully-qualified Location resource string.
49
+ #
50
+ # The resource will be in the following format:
51
+ #
52
+ # `projects/{project}/locations/{location}`
53
+ #
54
+ # @param project [String]
55
+ # @param location [String]
56
+ #
57
+ # @return [::String]
58
+ def location_path project:, location:
59
+ raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
60
+
61
+ "projects/#{project}/locations/#{location}"
62
+ end
63
+
64
+ extend self
65
+ end
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "gapic/common"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/bigquery/data_policies/v1/version"
24
+
25
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/credentials"
26
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/paths"
27
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module Bigquery
32
+ module DataPolicies
33
+ module V1
34
+ ##
35
+ # Data Policy Service provides APIs for managing the label-policy bindings.
36
+ #
37
+ # @example Load this service and instantiate a gRPC client
38
+ #
39
+ # require "google/cloud/bigquery/data_policies/v1/data_policy_service"
40
+ # client = ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicyService::Client.new
41
+ #
42
+ module DataPolicyService
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+
50
+ helper_path = ::File.join __dir__, "data_policy_service", "helpers.rb"
51
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service/helpers" if ::File.file? helper_path
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Bigquery
23
+ module DataPolicies
24
+ module V1
25
+ VERSION = "0.1.0"
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/bigquery/data_policies/v1/data_policy_service"
20
+ require "google/cloud/bigquery/data_policies/v1/version"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Bigquery
25
+ module DataPolicies
26
+ ##
27
+ # API client module.
28
+ #
29
+ # @example Load this package, including all its services, and instantiate a gRPC client
30
+ #
31
+ # require "google/cloud/bigquery/data_policies/v1"
32
+ # client = ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicyService::Client.new
33
+ #
34
+ module V1
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+
41
+ helper_path = ::File.join __dir__, "v1", "_helpers.rb"
42
+ require "google/cloud/bigquery/data_policies/v1/_helpers" if ::File.file? helper_path
@@ -0,0 +1,95 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/bigquery/datapolicies/v1/datapolicy.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
10
+ require 'google/iam/v1/iam_policy_pb'
11
+ require 'google/iam/v1/policy_pb'
12
+ require 'google/protobuf/empty_pb'
13
+ require 'google/protobuf/field_mask_pb'
14
+
15
+ Google::Protobuf::DescriptorPool.generated_pool.build do
16
+ add_file("google/cloud/bigquery/datapolicies/v1/datapolicy.proto", :syntax => :proto3) do
17
+ add_message "google.cloud.bigquery.datapolicies.v1.CreateDataPolicyRequest" do
18
+ optional :parent, :string, 1
19
+ optional :data_policy, :message, 2, "google.cloud.bigquery.datapolicies.v1.DataPolicy"
20
+ end
21
+ add_message "google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest" do
22
+ optional :data_policy, :message, 1, "google.cloud.bigquery.datapolicies.v1.DataPolicy"
23
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
24
+ end
25
+ add_message "google.cloud.bigquery.datapolicies.v1.RenameDataPolicyRequest" do
26
+ optional :name, :string, 1
27
+ optional :new_data_policy_id, :string, 2
28
+ end
29
+ add_message "google.cloud.bigquery.datapolicies.v1.DeleteDataPolicyRequest" do
30
+ optional :name, :string, 1
31
+ end
32
+ add_message "google.cloud.bigquery.datapolicies.v1.GetDataPolicyRequest" do
33
+ optional :name, :string, 1
34
+ end
35
+ add_message "google.cloud.bigquery.datapolicies.v1.ListDataPoliciesRequest" do
36
+ optional :parent, :string, 1
37
+ optional :page_size, :int32, 2
38
+ optional :page_token, :string, 3
39
+ optional :filter, :string, 4
40
+ end
41
+ add_message "google.cloud.bigquery.datapolicies.v1.ListDataPoliciesResponse" do
42
+ repeated :data_policies, :message, 1, "google.cloud.bigquery.datapolicies.v1.DataPolicy"
43
+ optional :next_page_token, :string, 2
44
+ end
45
+ add_message "google.cloud.bigquery.datapolicies.v1.DataPolicy" do
46
+ optional :name, :string, 1
47
+ optional :data_policy_type, :enum, 2, "google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType"
48
+ optional :data_policy_id, :string, 3
49
+ oneof :matching_label do
50
+ optional :policy_tag, :string, 4
51
+ end
52
+ oneof :policy do
53
+ optional :data_masking_policy, :message, 5, "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy"
54
+ end
55
+ end
56
+ add_enum "google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType" do
57
+ value :DATA_POLICY_TYPE_UNSPECIFIED, 0
58
+ value :COLUMN_LEVEL_SECURITY_POLICY, 3
59
+ value :DATA_MASKING_POLICY, 2
60
+ end
61
+ add_message "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy" do
62
+ oneof :masking_expression do
63
+ optional :predefined_expression, :enum, 1, "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression"
64
+ end
65
+ end
66
+ add_enum "google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression" do
67
+ value :PREDEFINED_EXPRESSION_UNSPECIFIED, 0
68
+ value :SHA256, 3
69
+ value :ALWAYS_NULL, 5
70
+ value :DEFAULT_MASKING_VALUE, 7
71
+ end
72
+ end
73
+ end
74
+
75
+ module Google
76
+ module Cloud
77
+ module Bigquery
78
+ module DataPolicies
79
+ module V1
80
+ CreateDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.CreateDataPolicyRequest").msgclass
81
+ UpdateDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest").msgclass
82
+ RenameDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.RenameDataPolicyRequest").msgclass
83
+ DeleteDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DeleteDataPolicyRequest").msgclass
84
+ GetDataPolicyRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.GetDataPolicyRequest").msgclass
85
+ ListDataPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.ListDataPoliciesRequest").msgclass
86
+ ListDataPoliciesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.ListDataPoliciesResponse").msgclass
87
+ DataPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataPolicy").msgclass
88
+ DataPolicy::DataPolicyType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType").enummodule
89
+ DataMaskingPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy").msgclass
90
+ DataMaskingPolicy::PredefinedExpression = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression").enummodule
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,65 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/bigquery/datapolicies/v1/datapolicy.proto for package 'Google.Cloud.Bigquery.DataPolicies.V1'
3
+ # Original file comments:
4
+ # Copyright 2022 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/bigquery/datapolicies/v1/datapolicy_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module Bigquery
25
+ module DataPolicies
26
+ module V1
27
+ module DataPolicyService
28
+ # Data Policy Service provides APIs for managing the label-policy bindings.
29
+ class Service
30
+
31
+ include ::GRPC::GenericService
32
+
33
+ self.marshal_class_method = :encode
34
+ self.unmarshal_class_method = :decode
35
+ self.service_name = 'google.cloud.bigquery.datapolicies.v1.DataPolicyService'
36
+
37
+ # Creates a new data policy under a project with the given `dataPolicyId`
38
+ # (used as the display name), policy tag, and data policy type.
39
+ rpc :CreateDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::CreateDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
40
+ # Updates the metadata for an existing data policy. The target data policy
41
+ # can be specified by the resource name.
42
+ rpc :UpdateDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::UpdateDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
43
+ # Renames the id (display name) of the specified data policy.
44
+ rpc :RenameDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::RenameDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
45
+ # Deletes the data policy specified by its resource name.
46
+ rpc :DeleteDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::DeleteDataPolicyRequest, ::Google::Protobuf::Empty
47
+ # Gets the data policy specified by its resource name.
48
+ rpc :GetDataPolicy, ::Google::Cloud::Bigquery::DataPolicies::V1::GetDataPolicyRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::DataPolicy
49
+ # List all of the data policies in the specified parent project.
50
+ rpc :ListDataPolicies, ::Google::Cloud::Bigquery::DataPolicies::V1::ListDataPoliciesRequest, ::Google::Cloud::Bigquery::DataPolicies::V1::ListDataPoliciesResponse
51
+ # Gets the IAM policy for the specified data policy.
52
+ rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
53
+ # Sets the IAM policy for the specified data policy.
54
+ rpc :SetIamPolicy, ::Google::Iam::V1::SetIamPolicyRequest, ::Google::Iam::V1::Policy
55
+ # Returns the caller's permission on the specified data policy resource.
56
+ rpc :TestIamPermissions, ::Google::Iam::V1::TestIamPermissionsRequest, ::Google::Iam::V1::TestIamPermissionsResponse
57
+ end
58
+
59
+ Stub = Service.rpc_stub_class
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ # This gem does not autoload during Bundler.require. To load this gem,
20
+ # issue explicit require statements for the packages desired, e.g.:
21
+ # require "google/cloud/bigquery/data_policies/v1"
@@ -0,0 +1,4 @@
1
+ # BigQuery Data Policy Service V1 Protocol Buffer Documentation
2
+
3
+ These files are for the YARD documentation of the generated protobuf files.
4
+ They are not intended to be required or loaded at runtime.