google-cloud-dataplex-v1 2.7.0 → 2.8.1

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.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/dataplex/v1/bindings_override.rb +24 -0
  3. data/lib/google/cloud/dataplex/v1/business_glossary_service/client.rb +20 -3
  4. data/lib/google/cloud/dataplex/v1/business_glossary_service/operations.rb +20 -3
  5. data/lib/google/cloud/dataplex/v1/catalog_pb.rb +2 -1
  6. data/lib/google/cloud/dataplex/v1/catalog_service/client.rb +35 -3
  7. data/lib/google/cloud/dataplex/v1/catalog_service/operations.rb +20 -3
  8. data/lib/google/cloud/dataplex/v1/catalog_service/rest/client.rb +15 -0
  9. data/lib/google/cloud/dataplex/v1/catalog_services_pb.rb +15 -0
  10. data/lib/google/cloud/dataplex/v1/cmek_pb.rb +1 -1
  11. data/lib/google/cloud/dataplex/v1/cmek_service/client.rb +20 -3
  12. data/lib/google/cloud/dataplex/v1/cmek_service/operations.rb +20 -3
  13. data/lib/google/cloud/dataplex/v1/content_service/client.rb +20 -3
  14. data/lib/google/cloud/dataplex/v1/data_documentation_pb.rb +49 -0
  15. data/lib/google/cloud/dataplex/v1/data_quality_pb.rb +2 -1
  16. data/lib/google/cloud/dataplex/v1/data_scan_service/client.rb +20 -3
  17. data/lib/google/cloud/dataplex/v1/data_scan_service/operations.rb +20 -3
  18. data/lib/google/cloud/dataplex/v1/data_taxonomy_service/client.rb +20 -3
  19. data/lib/google/cloud/dataplex/v1/data_taxonomy_service/operations.rb +20 -3
  20. data/lib/google/cloud/dataplex/v1/dataplex_service/client.rb +20 -3
  21. data/lib/google/cloud/dataplex/v1/dataplex_service/operations.rb +20 -3
  22. data/lib/google/cloud/dataplex/v1/datascans_pb.rb +3 -1
  23. data/lib/google/cloud/dataplex/v1/metadata_service/client.rb +20 -3
  24. data/lib/google/cloud/dataplex/v1/version.rb +1 -1
  25. data/proto_docs/google/cloud/dataplex/v1/catalog.rb +16 -7
  26. data/proto_docs/google/cloud/dataplex/v1/cmek.rb +3 -0
  27. data/proto_docs/google/cloud/dataplex/v1/data_documentation.rb +98 -0
  28. data/proto_docs/google/cloud/dataplex/v1/data_quality.rb +32 -0
  29. data/proto_docs/google/cloud/dataplex/v1/datascans.rb +39 -12
  30. data/proto_docs/google/cloud/dataplex/v1/processing.rb +2 -2
  31. metadata +3 -1
@@ -1041,8 +1041,6 @@ module Google
1041
1041
  # @return [::String,nil]
1042
1042
  # @!attribute [rw] credentials
1043
1043
  # Credentials to send with calls. You may provide any of the following types:
1044
- # * (`String`) The path to a service account key file in JSON format
1045
- # * (`Hash`) A service account key as a Hash
1046
1044
  # * (`Google::Auth::Credentials`) A googleauth credentials object
1047
1045
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
1048
1046
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -1051,7 +1049,26 @@ module Google
1051
1049
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1052
1050
  # * (`nil`) indicating no credentials
1053
1051
  #
1054
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
1052
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
1053
+ # is deprecated. Providing an unvalidated credential configuration to
1054
+ # Google APIs can compromise the security of your systems and data.
1055
+ #
1056
+ # @example
1057
+ #
1058
+ # # The recommended way to provide credentials is to use the `make_creds` method
1059
+ # # on the appropriate credentials class for your environment.
1060
+ #
1061
+ # require "googleauth"
1062
+ #
1063
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
1064
+ # json_key_io: ::File.open("/path/to/keyfile.json")
1065
+ # )
1066
+ #
1067
+ # client = ::Google::Cloud::Dataplex::V1::ContentService::Client.new do |config|
1068
+ # config.credentials = credentials
1069
+ # end
1070
+ #
1071
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
1055
1072
  # external source for authentication to Google Cloud, you must validate it before
1056
1073
  # providing it to a Google API client library. Providing an unvalidated credential
1057
1074
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/cloud/dataplex/v1/data_documentation.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/field_behavior_pb'
8
+
9
+
10
+ descriptor_data = "\n1google/cloud/dataplex/v1/data_documentation.proto\x12\x18google.cloud.dataplex.v1\x1a\x1fgoogle/api/field_behavior.proto\"\x17\n\x15\x44\x61taDocumentationSpec\"\xe9\x04\n\x17\x44\x61taDocumentationResult\x12Z\n\x0ctable_result\x18\x08 \x01(\x0b\x32=.google.cloud.dataplex.v1.DataDocumentationResult.TableResultB\x03\xe0\x41\x03H\x00\x1a\xd5\x01\n\x0bTableResult\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x15\n\x08overview\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12M\n\x06schema\x18\x03 \x01(\x0b\x32\x38.google.cloud.dataplex.v1.DataDocumentationResult.SchemaB\x03\xe0\x41\x03\x12M\n\x07queries\x18\x04 \x03(\x0b\x32\x37.google.cloud.dataplex.v1.DataDocumentationResult.QueryB\x03\xe0\x41\x03\x1a\x33\n\x05Query\x12\x10\n\x03sql\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x03\x1aV\n\x06Schema\x12L\n\x06\x66ields\x18\x01 \x03(\x0b\x32\x37.google.cloud.dataplex.v1.DataDocumentationResult.FieldB\x03\xe0\x41\x03\x1a\x82\x01\n\x05\x46ield\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12L\n\x06\x66ields\x18\x03 \x03(\x0b\x32\x37.google.cloud.dataplex.v1.DataDocumentationResult.FieldB\x03\xe0\x41\x03\x42\x08\n\x06resultBr\n\x1c\x63om.google.cloud.dataplex.v1B\x16\x44\x61taDocumentationProtoP\x01Z8cloud.google.com/go/dataplex/apiv1/dataplexpb;dataplexpbb\x06proto3"
11
+
12
+ pool = Google::Protobuf::DescriptorPool.generated_pool
13
+
14
+ begin
15
+ pool.add_serialized_file(descriptor_data)
16
+ rescue TypeError
17
+ # Compatibility code: will be removed in the next major version.
18
+ require 'google/protobuf/descriptor_pb'
19
+ parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
20
+ parsed.clear_dependency
21
+ serialized = parsed.class.encode(parsed)
22
+ file = pool.add_serialized_file(serialized)
23
+ warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
24
+ imports = [
25
+ ]
26
+ imports.each do |type_name, expected_filename|
27
+ import_file = pool.lookup(type_name).file_descriptor
28
+ if import_file.name != expected_filename
29
+ warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
30
+ end
31
+ end
32
+ warn "Each proto file must use a consistent fully-qualified name."
33
+ warn "This will become an error in the next major version."
34
+ end
35
+
36
+ module Google
37
+ module Cloud
38
+ module Dataplex
39
+ module V1
40
+ DataDocumentationSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataDocumentationSpec").msgclass
41
+ DataDocumentationResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataDocumentationResult").msgclass
42
+ DataDocumentationResult::TableResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataDocumentationResult.TableResult").msgclass
43
+ DataDocumentationResult::Query = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataDocumentationResult.Query").msgclass
44
+ DataDocumentationResult::Schema = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataDocumentationResult.Schema").msgclass
45
+ DataDocumentationResult::Field = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataDocumentationResult.Field").msgclass
46
+ end
47
+ end
48
+ end
49
+ end
@@ -10,7 +10,7 @@ require 'google/cloud/dataplex/v1/datascans_common_pb'
10
10
  require 'google/cloud/dataplex/v1/processing_pb'
11
11
 
12
12
 
13
- descriptor_data = "\n+google/cloud/dataplex/v1/data_quality.proto\x12\x18google.cloud.dataplex.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a/google/cloud/dataplex/v1/datascans_common.proto\x1a)google/cloud/dataplex/v1/processing.proto\"\xe9\x08\n\x0f\x44\x61taQualitySpec\x12=\n\x05rules\x18\x01 \x03(\x0b\x32).google.cloud.dataplex.v1.DataQualityRuleB\x03\xe0\x41\x02\x12\x1d\n\x10sampling_percent\x18\x04 \x01(\x02\x42\x03\xe0\x41\x01\x12\x17\n\nrow_filter\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12Y\n\x11post_scan_actions\x18\x06 \x01(\x0b\x32\x39.google.cloud.dataplex.v1.DataQualitySpec.PostScanActionsB\x03\xe0\x41\x01\x12\'\n\x1a\x63\x61talog_publishing_enabled\x18\x08 \x01(\x08\x42\x03\xe0\x41\x01\x1a\xda\x06\n\x0fPostScanActions\x12\x66\n\x0f\x62igquery_export\x18\x01 \x01(\x0b\x32H.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.BigQueryExportB\x03\xe0\x41\x01\x12n\n\x13notification_report\x18\x02 \x01(\x0b\x32L.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.NotificationReportB\x03\xe0\x41\x01\x1a,\n\x0e\x42igQueryExport\x12\x1a\n\rresults_table\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a!\n\nRecipients\x12\x13\n\x06\x65mails\x18\x01 \x03(\tB\x03\xe0\x41\x01\x1a\x35\n\x15ScoreThresholdTrigger\x12\x1c\n\x0fscore_threshold\x18\x02 \x01(\x02\x42\x03\xe0\x41\x01\x1a\x13\n\x11JobFailureTrigger\x1a\x0f\n\rJobEndTrigger\x1a\xc0\x03\n\x12NotificationReport\x12]\n\nrecipients\x18\x01 \x01(\x0b\x32\x44.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.RecipientsB\x03\xe0\x41\x02\x12u\n\x17score_threshold_trigger\x18\x02 \x01(\x0b\x32O.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.ScoreThresholdTriggerB\x03\xe0\x41\x01\x12m\n\x13job_failure_trigger\x18\x04 \x01(\x0b\x32K.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.JobFailureTriggerB\x03\xe0\x41\x01\x12\x65\n\x0fjob_end_trigger\x18\x05 \x01(\x0b\x32G.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.JobEndTriggerB\x03\xe0\x41\x01\"\xcf\x07\n\x11\x44\x61taQualityResult\x12\x13\n\x06passed\x18\x05 \x01(\x08\x42\x03\xe0\x41\x03\x12\x17\n\x05score\x18\t \x01(\x02\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12M\n\ndimensions\x18\x02 \x03(\x0b\x32\x34.google.cloud.dataplex.v1.DataQualityDimensionResultB\x03\xe0\x41\x03\x12G\n\x07\x63olumns\x18\n \x03(\x0b\x32\x31.google.cloud.dataplex.v1.DataQualityColumnResultB\x03\xe0\x41\x03\x12\x43\n\x05rules\x18\x03 \x03(\x0b\x32/.google.cloud.dataplex.v1.DataQualityRuleResultB\x03\xe0\x41\x03\x12\x16\n\trow_count\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03\x12@\n\x0cscanned_data\x18\x07 \x01(\x0b\x32%.google.cloud.dataplex.v1.ScannedDataB\x03\xe0\x41\x03\x12h\n\x18post_scan_actions_result\x18\x08 \x01(\x0b\x32\x41.google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResultB\x03\xe0\x41\x03\x12\x61\n\x19\x63\x61talog_publishing_status\x18\x0b \x01(\x0b\x32\x39.google.cloud.dataplex.v1.DataScanCatalogPublishingStatusB\x03\xe0\x41\x03\x1a\xfd\x02\n\x15PostScanActionsResult\x12{\n\x16\x62igquery_export_result\x18\x01 \x01(\x0b\x32V.google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResult.BigQueryExportResultB\x03\xe0\x41\x03\x1a\xe6\x01\n\x14\x42igQueryExportResult\x12p\n\x05state\x18\x01 \x01(\x0e\x32\\.google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResult.BigQueryExportResult.StateB\x03\xe0\x41\x03\x12\x14\n\x07message\x18\x02 \x01(\tB\x03\xe0\x41\x03\"F\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\r\n\tSUCCEEDED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x12\x0b\n\x07SKIPPED\x10\x03\x42\x08\n\x06_score\"\x98\x02\n\x15\x44\x61taQualityRuleResult\x12<\n\x04rule\x18\x01 \x01(\x0b\x32).google.cloud.dataplex.v1.DataQualityRuleB\x03\xe0\x41\x03\x12\x13\n\x06passed\x18\x07 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1c\n\x0f\x65valuated_count\x18\t \x01(\x03\x42\x03\xe0\x41\x03\x12\x19\n\x0cpassed_count\x18\x08 \x01(\x03\x42\x03\xe0\x41\x03\x12\x17\n\nnull_count\x18\x05 \x01(\x03\x42\x03\xe0\x41\x03\x12\x17\n\npass_ratio\x18\x06 \x01(\x01\x42\x03\xe0\x41\x03\x12\x1f\n\x12\x66\x61iling_rows_query\x18\n \x01(\tB\x03\xe0\x41\x03\x12 \n\x13\x61ssertion_row_count\x18\x0b \x01(\x03\x42\x03\xe0\x41\x03\"\x9c\x01\n\x1a\x44\x61taQualityDimensionResult\x12\x46\n\tdimension\x18\x01 \x01(\x0b\x32..google.cloud.dataplex.v1.DataQualityDimensionB\x03\xe0\x41\x03\x12\x13\n\x06passed\x18\x03 \x01(\x08\x42\x03\xe0\x41\x03\x12\x17\n\x05score\x18\x04 \x01(\x02\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x42\x08\n\x06_score\")\n\x14\x44\x61taQualityDimension\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\"\x8d\x0e\n\x0f\x44\x61taQualityRule\x12W\n\x11range_expectation\x18\x01 \x01(\x0b\x32:.google.cloud.dataplex.v1.DataQualityRule.RangeExpectationH\x00\x12\\\n\x14non_null_expectation\x18\x02 \x01(\x0b\x32<.google.cloud.dataplex.v1.DataQualityRule.NonNullExpectationH\x00\x12S\n\x0fset_expectation\x18\x03 \x01(\x0b\x32\x38.google.cloud.dataplex.v1.DataQualityRule.SetExpectationH\x00\x12W\n\x11regex_expectation\x18\x04 \x01(\x0b\x32:.google.cloud.dataplex.v1.DataQualityRule.RegexExpectationH\x00\x12\x61\n\x16uniqueness_expectation\x18\x64 \x01(\x0b\x32?.google.cloud.dataplex.v1.DataQualityRule.UniquenessExpectationH\x00\x12j\n\x1bstatistic_range_expectation\x18\x65 \x01(\x0b\x32\x43.google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectationH\x00\x12g\n\x19row_condition_expectation\x18\xc8\x01 \x01(\x0b\x32\x41.google.cloud.dataplex.v1.DataQualityRule.RowConditionExpectationH\x00\x12k\n\x1btable_condition_expectation\x18\xc9\x01 \x01(\x0b\x32\x43.google.cloud.dataplex.v1.DataQualityRule.TableConditionExpectationH\x00\x12P\n\rsql_assertion\x18\xca\x01 \x01(\x0b\x32\x36.google.cloud.dataplex.v1.DataQualityRule.SqlAssertionH\x00\x12\x14\n\x06\x63olumn\x18\xf4\x03 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0bignore_null\x18\xf5\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x17\n\tdimension\x18\xf6\x03 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\tthreshold\x18\xf7\x03 \x01(\x01\x42\x03\xe0\x41\x01\x12\x12\n\x04name\x18\xf8\x03 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0b\x64\x65scription\x18\xf9\x03 \x01(\tB\x03\xe0\x41\x01\x12\x17\n\tsuspended\x18\xfa\x03 \x01(\x08\x42\x03\xe0\x41\x01\x1a\x84\x01\n\x10RangeExpectation\x12\x16\n\tmin_value\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tmax_value\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1f\n\x12strict_min_enabled\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12strict_max_enabled\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x1a\x14\n\x12NonNullExpectation\x1a%\n\x0eSetExpectation\x12\x13\n\x06values\x18\x01 \x03(\tB\x03\xe0\x41\x01\x1a&\n\x10RegexExpectation\x12\x12\n\x05regex\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a\x17\n\x15UniquenessExpectation\x1a\xc2\x02\n\x19StatisticRangeExpectation\x12k\n\tstatistic\x18\x01 \x01(\x0e\x32S.google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectation.ColumnStatisticB\x03\xe0\x41\x01\x12\x16\n\tmin_value\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tmax_value\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1f\n\x12strict_min_enabled\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12strict_max_enabled\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"F\n\x0f\x43olumnStatistic\x12\x17\n\x13STATISTIC_UNDEFINED\x10\x00\x12\x08\n\x04MEAN\x10\x01\x12\x07\n\x03MIN\x10\x02\x12\x07\n\x03MAX\x10\x03\x1a\x36\n\x17RowConditionExpectation\x12\x1b\n\x0esql_expression\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a\x38\n\x19TableConditionExpectation\x12\x1b\n\x0esql_expression\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a*\n\x0cSqlAssertion\x12\x1a\n\rsql_statement\x18\x01 \x01(\tB\x03\xe0\x41\x01\x42\x0b\n\trule_type\"\xb5\x01\n\x17\x44\x61taQualityColumnResult\x12\x13\n\x06\x63olumn\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x17\n\x05score\x18\x02 \x01(\x02\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12\x13\n\x06passed\x18\x03 \x01(\x08\x42\x03\xe0\x41\x03\x12M\n\ndimensions\x18\x04 \x03(\x0b\x32\x34.google.cloud.dataplex.v1.DataQualityDimensionResultB\x03\xe0\x41\x03\x42\x08\n\x06_scoreB\xc4\x01\n\x1c\x63om.google.cloud.dataplex.v1B\x10\x44\x61taQualityProtoP\x01Z8cloud.google.com/go/dataplex/apiv1/dataplexpb;dataplexpb\xea\x41U\n\x1d\x62igquery.googleapis.com/Table\x12\x34projects/{project}/datasets/{dataset}/tables/{table}b\x06proto3"
13
+ descriptor_data = "\n+google/cloud/dataplex/v1/data_quality.proto\x12\x18google.cloud.dataplex.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a/google/cloud/dataplex/v1/datascans_common.proto\x1a)google/cloud/dataplex/v1/processing.proto\"\xe9\x08\n\x0f\x44\x61taQualitySpec\x12=\n\x05rules\x18\x01 \x03(\x0b\x32).google.cloud.dataplex.v1.DataQualityRuleB\x03\xe0\x41\x02\x12\x1d\n\x10sampling_percent\x18\x04 \x01(\x02\x42\x03\xe0\x41\x01\x12\x17\n\nrow_filter\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12Y\n\x11post_scan_actions\x18\x06 \x01(\x0b\x32\x39.google.cloud.dataplex.v1.DataQualitySpec.PostScanActionsB\x03\xe0\x41\x01\x12\'\n\x1a\x63\x61talog_publishing_enabled\x18\x08 \x01(\x08\x42\x03\xe0\x41\x01\x1a\xda\x06\n\x0fPostScanActions\x12\x66\n\x0f\x62igquery_export\x18\x01 \x01(\x0b\x32H.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.BigQueryExportB\x03\xe0\x41\x01\x12n\n\x13notification_report\x18\x02 \x01(\x0b\x32L.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.NotificationReportB\x03\xe0\x41\x01\x1a,\n\x0e\x42igQueryExport\x12\x1a\n\rresults_table\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a!\n\nRecipients\x12\x13\n\x06\x65mails\x18\x01 \x03(\tB\x03\xe0\x41\x01\x1a\x35\n\x15ScoreThresholdTrigger\x12\x1c\n\x0fscore_threshold\x18\x02 \x01(\x02\x42\x03\xe0\x41\x01\x1a\x13\n\x11JobFailureTrigger\x1a\x0f\n\rJobEndTrigger\x1a\xc0\x03\n\x12NotificationReport\x12]\n\nrecipients\x18\x01 \x01(\x0b\x32\x44.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.RecipientsB\x03\xe0\x41\x02\x12u\n\x17score_threshold_trigger\x18\x02 \x01(\x0b\x32O.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.ScoreThresholdTriggerB\x03\xe0\x41\x01\x12m\n\x13job_failure_trigger\x18\x04 \x01(\x0b\x32K.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.JobFailureTriggerB\x03\xe0\x41\x01\x12\x65\n\x0fjob_end_trigger\x18\x05 \x01(\x0b\x32G.google.cloud.dataplex.v1.DataQualitySpec.PostScanActions.JobEndTriggerB\x03\xe0\x41\x01\"\x85\n\n\x11\x44\x61taQualityResult\x12\x13\n\x06passed\x18\x05 \x01(\x08\x42\x03\xe0\x41\x03\x12\x17\n\x05score\x18\t \x01(\x02\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12M\n\ndimensions\x18\x02 \x03(\x0b\x32\x34.google.cloud.dataplex.v1.DataQualityDimensionResultB\x03\xe0\x41\x03\x12G\n\x07\x63olumns\x18\n \x03(\x0b\x32\x31.google.cloud.dataplex.v1.DataQualityColumnResultB\x03\xe0\x41\x03\x12\x43\n\x05rules\x18\x03 \x03(\x0b\x32/.google.cloud.dataplex.v1.DataQualityRuleResultB\x03\xe0\x41\x03\x12\x16\n\trow_count\x18\x04 \x01(\x03\x42\x03\xe0\x41\x03\x12@\n\x0cscanned_data\x18\x07 \x01(\x0b\x32%.google.cloud.dataplex.v1.ScannedDataB\x03\xe0\x41\x03\x12h\n\x18post_scan_actions_result\x18\x08 \x01(\x0b\x32\x41.google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResultB\x03\xe0\x41\x03\x12\x61\n\x19\x63\x61talog_publishing_status\x18\x0b \x01(\x0b\x32\x39.google.cloud.dataplex.v1.DataScanCatalogPublishingStatusB\x03\xe0\x41\x03\x12|\n\"anomaly_detection_generated_assets\x18\x0c \x01(\x0b\x32K.google.cloud.dataplex.v1.DataQualityResult.AnomalyDetectionGeneratedAssetsB\x03\xe0\x41\x03\x1a\xfd\x02\n\x15PostScanActionsResult\x12{\n\x16\x62igquery_export_result\x18\x01 \x01(\x0b\x32V.google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResult.BigQueryExportResultB\x03\xe0\x41\x03\x1a\xe6\x01\n\x14\x42igQueryExportResult\x12p\n\x05state\x18\x01 \x01(\x0e\x32\\.google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResult.BigQueryExportResult.StateB\x03\xe0\x41\x03\x12\x14\n\x07message\x18\x02 \x01(\tB\x03\xe0\x41\x03\"F\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\r\n\tSUCCEEDED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\x12\x0b\n\x07SKIPPED\x10\x03\x1a\xb5\x01\n\x1f\x41nomalyDetectionGeneratedAssets\x12\x19\n\x0cresult_table\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12$\n\x17\x64\x61ta_intermediate_table\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12)\n\x1c\x66reshness_intermediate_table\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12&\n\x19volume_intermediate_table\x18\x04 \x01(\tB\x03\xe0\x41\x03\x42\x08\n\x06_score\"\x98\x02\n\x15\x44\x61taQualityRuleResult\x12<\n\x04rule\x18\x01 \x01(\x0b\x32).google.cloud.dataplex.v1.DataQualityRuleB\x03\xe0\x41\x03\x12\x13\n\x06passed\x18\x07 \x01(\x08\x42\x03\xe0\x41\x03\x12\x1c\n\x0f\x65valuated_count\x18\t \x01(\x03\x42\x03\xe0\x41\x03\x12\x19\n\x0cpassed_count\x18\x08 \x01(\x03\x42\x03\xe0\x41\x03\x12\x17\n\nnull_count\x18\x05 \x01(\x03\x42\x03\xe0\x41\x03\x12\x17\n\npass_ratio\x18\x06 \x01(\x01\x42\x03\xe0\x41\x03\x12\x1f\n\x12\x66\x61iling_rows_query\x18\n \x01(\tB\x03\xe0\x41\x03\x12 \n\x13\x61ssertion_row_count\x18\x0b \x01(\x03\x42\x03\xe0\x41\x03\"\x9c\x01\n\x1a\x44\x61taQualityDimensionResult\x12\x46\n\tdimension\x18\x01 \x01(\x0b\x32..google.cloud.dataplex.v1.DataQualityDimensionB\x03\xe0\x41\x03\x12\x13\n\x06passed\x18\x03 \x01(\x08\x42\x03\xe0\x41\x03\x12\x17\n\x05score\x18\x04 \x01(\x02\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x42\x08\n\x06_score\")\n\x14\x44\x61taQualityDimension\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\"\x8d\x0e\n\x0f\x44\x61taQualityRule\x12W\n\x11range_expectation\x18\x01 \x01(\x0b\x32:.google.cloud.dataplex.v1.DataQualityRule.RangeExpectationH\x00\x12\\\n\x14non_null_expectation\x18\x02 \x01(\x0b\x32<.google.cloud.dataplex.v1.DataQualityRule.NonNullExpectationH\x00\x12S\n\x0fset_expectation\x18\x03 \x01(\x0b\x32\x38.google.cloud.dataplex.v1.DataQualityRule.SetExpectationH\x00\x12W\n\x11regex_expectation\x18\x04 \x01(\x0b\x32:.google.cloud.dataplex.v1.DataQualityRule.RegexExpectationH\x00\x12\x61\n\x16uniqueness_expectation\x18\x64 \x01(\x0b\x32?.google.cloud.dataplex.v1.DataQualityRule.UniquenessExpectationH\x00\x12j\n\x1bstatistic_range_expectation\x18\x65 \x01(\x0b\x32\x43.google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectationH\x00\x12g\n\x19row_condition_expectation\x18\xc8\x01 \x01(\x0b\x32\x41.google.cloud.dataplex.v1.DataQualityRule.RowConditionExpectationH\x00\x12k\n\x1btable_condition_expectation\x18\xc9\x01 \x01(\x0b\x32\x43.google.cloud.dataplex.v1.DataQualityRule.TableConditionExpectationH\x00\x12P\n\rsql_assertion\x18\xca\x01 \x01(\x0b\x32\x36.google.cloud.dataplex.v1.DataQualityRule.SqlAssertionH\x00\x12\x14\n\x06\x63olumn\x18\xf4\x03 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0bignore_null\x18\xf5\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x17\n\tdimension\x18\xf6\x03 \x01(\tB\x03\xe0\x41\x02\x12\x17\n\tthreshold\x18\xf7\x03 \x01(\x01\x42\x03\xe0\x41\x01\x12\x12\n\x04name\x18\xf8\x03 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0b\x64\x65scription\x18\xf9\x03 \x01(\tB\x03\xe0\x41\x01\x12\x17\n\tsuspended\x18\xfa\x03 \x01(\x08\x42\x03\xe0\x41\x01\x1a\x84\x01\n\x10RangeExpectation\x12\x16\n\tmin_value\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tmax_value\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1f\n\x12strict_min_enabled\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12strict_max_enabled\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x1a\x14\n\x12NonNullExpectation\x1a%\n\x0eSetExpectation\x12\x13\n\x06values\x18\x01 \x03(\tB\x03\xe0\x41\x01\x1a&\n\x10RegexExpectation\x12\x12\n\x05regex\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a\x17\n\x15UniquenessExpectation\x1a\xc2\x02\n\x19StatisticRangeExpectation\x12k\n\tstatistic\x18\x01 \x01(\x0e\x32S.google.cloud.dataplex.v1.DataQualityRule.StatisticRangeExpectation.ColumnStatisticB\x03\xe0\x41\x01\x12\x16\n\tmin_value\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tmax_value\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1f\n\x12strict_min_enabled\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12strict_max_enabled\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\"F\n\x0f\x43olumnStatistic\x12\x17\n\x13STATISTIC_UNDEFINED\x10\x00\x12\x08\n\x04MEAN\x10\x01\x12\x07\n\x03MIN\x10\x02\x12\x07\n\x03MAX\x10\x03\x1a\x36\n\x17RowConditionExpectation\x12\x1b\n\x0esql_expression\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a\x38\n\x19TableConditionExpectation\x12\x1b\n\x0esql_expression\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a*\n\x0cSqlAssertion\x12\x1a\n\rsql_statement\x18\x01 \x01(\tB\x03\xe0\x41\x01\x42\x0b\n\trule_type\"\xb5\x01\n\x17\x44\x61taQualityColumnResult\x12\x13\n\x06\x63olumn\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x17\n\x05score\x18\x02 \x01(\x02\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x12\x13\n\x06passed\x18\x03 \x01(\x08\x42\x03\xe0\x41\x03\x12M\n\ndimensions\x18\x04 \x03(\x0b\x32\x34.google.cloud.dataplex.v1.DataQualityDimensionResultB\x03\xe0\x41\x03\x42\x08\n\x06_scoreB\xc4\x01\n\x1c\x63om.google.cloud.dataplex.v1B\x10\x44\x61taQualityProtoP\x01Z8cloud.google.com/go/dataplex/apiv1/dataplexpb;dataplexpb\xea\x41U\n\x1d\x62igquery.googleapis.com/Table\x12\x34projects/{project}/datasets/{dataset}/tables/{table}b\x06proto3"
14
14
 
15
15
  pool = Google::Protobuf::DescriptorPool.generated_pool
16
16
 
@@ -54,6 +54,7 @@ module Google
54
54
  DataQualityResult::PostScanActionsResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResult").msgclass
55
55
  DataQualityResult::PostScanActionsResult::BigQueryExportResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResult.BigQueryExportResult").msgclass
56
56
  DataQualityResult::PostScanActionsResult::BigQueryExportResult::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataQualityResult.PostScanActionsResult.BigQueryExportResult.State").enummodule
57
+ DataQualityResult::AnomalyDetectionGeneratedAssets = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataQualityResult.AnomalyDetectionGeneratedAssets").msgclass
57
58
  DataQualityRuleResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataQualityRuleResult").msgclass
58
59
  DataQualityDimensionResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataQualityDimensionResult").msgclass
59
60
  DataQualityDimension = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dataplex.v1.DataQualityDimension").msgclass
@@ -1171,8 +1171,6 @@ module Google
1171
1171
  # @return [::String,nil]
1172
1172
  # @!attribute [rw] credentials
1173
1173
  # Credentials to send with calls. You may provide any of the following types:
1174
- # * (`String`) The path to a service account key file in JSON format
1175
- # * (`Hash`) A service account key as a Hash
1176
1174
  # * (`Google::Auth::Credentials`) A googleauth credentials object
1177
1175
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
1178
1176
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -1181,7 +1179,26 @@ module Google
1181
1179
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1182
1180
  # * (`nil`) indicating no credentials
1183
1181
  #
1184
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
1182
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
1183
+ # is deprecated. Providing an unvalidated credential configuration to
1184
+ # Google APIs can compromise the security of your systems and data.
1185
+ #
1186
+ # @example
1187
+ #
1188
+ # # The recommended way to provide credentials is to use the `make_creds` method
1189
+ # # on the appropriate credentials class for your environment.
1190
+ #
1191
+ # require "googleauth"
1192
+ #
1193
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
1194
+ # json_key_io: ::File.open("/path/to/keyfile.json")
1195
+ # )
1196
+ #
1197
+ # client = ::Google::Cloud::Dataplex::V1::DataScanService::Client.new do |config|
1198
+ # config.credentials = credentials
1199
+ # end
1200
+ #
1201
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
1185
1202
  # external source for authentication to Google Cloud, you must validate it before
1186
1203
  # providing it to a Google API client library. Providing an unvalidated credential
1187
1204
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -642,8 +642,6 @@ module Google
642
642
  # @return [::String,nil]
643
643
  # @!attribute [rw] credentials
644
644
  # Credentials to send with calls. You may provide any of the following types:
645
- # * (`String`) The path to a service account key file in JSON format
646
- # * (`Hash`) A service account key as a Hash
647
645
  # * (`Google::Auth::Credentials`) A googleauth credentials object
648
646
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
649
647
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -652,7 +650,26 @@ module Google
652
650
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
653
651
  # * (`nil`) indicating no credentials
654
652
  #
655
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
653
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
654
+ # is deprecated. Providing an unvalidated credential configuration to
655
+ # Google APIs can compromise the security of your systems and data.
656
+ #
657
+ # @example
658
+ #
659
+ # # The recommended way to provide credentials is to use the `make_creds` method
660
+ # # on the appropriate credentials class for your environment.
661
+ #
662
+ # require "googleauth"
663
+ #
664
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
665
+ # json_key_io: ::File.open("/path/to/keyfile.json")
666
+ # )
667
+ #
668
+ # client = ::Google::Longrunning::Operations::Client.new do |config|
669
+ # config.credentials = credentials
670
+ # end
671
+ #
672
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
656
673
  # external source for authentication to Google Cloud, you must validate it before
657
674
  # providing it to a Google API client library. Providing an unvalidated credential
658
675
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -1791,8 +1791,6 @@ module Google
1791
1791
  # @return [::String,nil]
1792
1792
  # @!attribute [rw] credentials
1793
1793
  # Credentials to send with calls. You may provide any of the following types:
1794
- # * (`String`) The path to a service account key file in JSON format
1795
- # * (`Hash`) A service account key as a Hash
1796
1794
  # * (`Google::Auth::Credentials`) A googleauth credentials object
1797
1795
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
1798
1796
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -1801,7 +1799,26 @@ module Google
1801
1799
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1802
1800
  # * (`nil`) indicating no credentials
1803
1801
  #
1804
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
1802
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
1803
+ # is deprecated. Providing an unvalidated credential configuration to
1804
+ # Google APIs can compromise the security of your systems and data.
1805
+ #
1806
+ # @example
1807
+ #
1808
+ # # The recommended way to provide credentials is to use the `make_creds` method
1809
+ # # on the appropriate credentials class for your environment.
1810
+ #
1811
+ # require "googleauth"
1812
+ #
1813
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
1814
+ # json_key_io: ::File.open("/path/to/keyfile.json")
1815
+ # )
1816
+ #
1817
+ # client = ::Google::Cloud::Dataplex::V1::DataTaxonomyService::Client.new do |config|
1818
+ # config.credentials = credentials
1819
+ # end
1820
+ #
1821
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
1805
1822
  # external source for authentication to Google Cloud, you must validate it before
1806
1823
  # providing it to a Google API client library. Providing an unvalidated credential
1807
1824
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -642,8 +642,6 @@ module Google
642
642
  # @return [::String,nil]
643
643
  # @!attribute [rw] credentials
644
644
  # Credentials to send with calls. You may provide any of the following types:
645
- # * (`String`) The path to a service account key file in JSON format
646
- # * (`Hash`) A service account key as a Hash
647
645
  # * (`Google::Auth::Credentials`) A googleauth credentials object
648
646
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
649
647
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -652,7 +650,26 @@ module Google
652
650
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
653
651
  # * (`nil`) indicating no credentials
654
652
  #
655
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
653
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
654
+ # is deprecated. Providing an unvalidated credential configuration to
655
+ # Google APIs can compromise the security of your systems and data.
656
+ #
657
+ # @example
658
+ #
659
+ # # The recommended way to provide credentials is to use the `make_creds` method
660
+ # # on the appropriate credentials class for your environment.
661
+ #
662
+ # require "googleauth"
663
+ #
664
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
665
+ # json_key_io: ::File.open("/path/to/keyfile.json")
666
+ # )
667
+ #
668
+ # client = ::Google::Longrunning::Operations::Client.new do |config|
669
+ # config.credentials = credentials
670
+ # end
671
+ #
672
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
656
673
  # external source for authentication to Google Cloud, you must validate it before
657
674
  # providing it to a Google API client library. Providing an unvalidated credential
658
675
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -3635,8 +3635,6 @@ module Google
3635
3635
  # @return [::String,nil]
3636
3636
  # @!attribute [rw] credentials
3637
3637
  # Credentials to send with calls. You may provide any of the following types:
3638
- # * (`String`) The path to a service account key file in JSON format
3639
- # * (`Hash`) A service account key as a Hash
3640
3638
  # * (`Google::Auth::Credentials`) A googleauth credentials object
3641
3639
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
3642
3640
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -3645,7 +3643,26 @@ module Google
3645
3643
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
3646
3644
  # * (`nil`) indicating no credentials
3647
3645
  #
3648
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
3646
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
3647
+ # is deprecated. Providing an unvalidated credential configuration to
3648
+ # Google APIs can compromise the security of your systems and data.
3649
+ #
3650
+ # @example
3651
+ #
3652
+ # # The recommended way to provide credentials is to use the `make_creds` method
3653
+ # # on the appropriate credentials class for your environment.
3654
+ #
3655
+ # require "googleauth"
3656
+ #
3657
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
3658
+ # json_key_io: ::File.open("/path/to/keyfile.json")
3659
+ # )
3660
+ #
3661
+ # client = ::Google::Cloud::Dataplex::V1::DataplexService::Client.new do |config|
3662
+ # config.credentials = credentials
3663
+ # end
3664
+ #
3665
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
3649
3666
  # external source for authentication to Google Cloud, you must validate it before
3650
3667
  # providing it to a Google API client library. Providing an unvalidated credential
3651
3668
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -642,8 +642,6 @@ module Google
642
642
  # @return [::String,nil]
643
643
  # @!attribute [rw] credentials
644
644
  # Credentials to send with calls. You may provide any of the following types:
645
- # * (`String`) The path to a service account key file in JSON format
646
- # * (`Hash`) A service account key as a Hash
647
645
  # * (`Google::Auth::Credentials`) A googleauth credentials object
648
646
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
649
647
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -652,7 +650,26 @@ module Google
652
650
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
653
651
  # * (`nil`) indicating no credentials
654
652
  #
655
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
653
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
654
+ # is deprecated. Providing an unvalidated credential configuration to
655
+ # Google APIs can compromise the security of your systems and data.
656
+ #
657
+ # @example
658
+ #
659
+ # # The recommended way to provide credentials is to use the `make_creds` method
660
+ # # on the appropriate credentials class for your environment.
661
+ #
662
+ # require "googleauth"
663
+ #
664
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
665
+ # json_key_io: ::File.open("/path/to/keyfile.json")
666
+ # )
667
+ #
668
+ # client = ::Google::Longrunning::Operations::Client.new do |config|
669
+ # config.credentials = credentials
670
+ # end
671
+ #
672
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
656
673
  # external source for authentication to Google Cloud, you must validate it before
657
674
  # providing it to a Google API client library. Providing an unvalidated credential
658
675
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -10,6 +10,7 @@ require 'google/api/field_behavior_pb'
10
10
  require 'google/api/field_info_pb'
11
11
  require 'google/api/resource_pb'
12
12
  require 'google/cloud/dataplex/v1/data_discovery_pb'
13
+ require 'google/cloud/dataplex/v1/data_documentation_pb'
13
14
  require 'google/cloud/dataplex/v1/data_profile_pb'
14
15
  require 'google/cloud/dataplex/v1/data_quality_pb'
15
16
  require 'google/cloud/dataplex/v1/processing_pb'
@@ -21,7 +22,7 @@ require 'google/protobuf/field_mask_pb'
21
22
  require 'google/protobuf/timestamp_pb'
22
23
 
23
24
 
24
- descriptor_data = "\n(google/cloud/dataplex/v1/datascans.proto\x12\x18google.cloud.dataplex.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/api/field_info.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/dataplex/v1/data_discovery.proto\x1a+google/cloud/dataplex/v1/data_profile.proto\x1a+google/cloud/dataplex/v1/data_quality.proto\x1a)google/cloud/dataplex/v1/processing.proto\x1a(google/cloud/dataplex/v1/resources.proto\x1a&google/cloud/dataplex/v1/service.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xc5\x01\n\x15\x43reateDataScanRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12:\n\tdata_scan\x18\x02 \x01(\x0b\x32\".google.cloud.dataplex.v1.DataScanB\x03\xe0\x41\x02\x12\x19\n\x0c\x64\x61ta_scan_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rvalidate_only\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\"\xa5\x01\n\x15UpdateDataScanRequest\x12:\n\tdata_scan\x18\x01 \x01(\x0b\x32\".google.cloud.dataplex.v1.DataScanB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"c\n\x15\x44\x65leteDataScanRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\x12\x12\n\x05\x66orce\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"\xdf\x01\n\x12GetDataScanRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\x12L\n\x04view\x18\x02 \x01(\x0e\x32\x39.google.cloud.dataplex.v1.GetDataScanRequest.DataScanViewB\x03\xe0\x41\x01\"C\n\x0c\x44\x61taScanView\x12\x1e\n\x1a\x44\x41TA_SCAN_VIEW_UNSPECIFIED\x10\x00\x12\t\n\x05\x42\x41SIC\x10\x01\x12\x08\n\x04\x46ULL\x10\n\"\xae\x01\n\x14ListDataScansRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\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\x15ListDataScansResponse\x12\x36\n\ndata_scans\x18\x01 \x03(\x0b\x32\".google.cloud.dataplex.v1.DataScan\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"L\n\x12RunDataScanRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\"I\n\x13RunDataScanResponse\x12\x32\n\x03job\x18\x01 \x01(\x0b\x32%.google.cloud.dataplex.v1.DataScanJob\"\xf2\x01\n\x15GetDataScanJobRequest\x12\x39\n\x04name\x18\x01 \x01(\tB+\xe0\x41\x02\xfa\x41%\n#dataplex.googleapis.com/DataScanJob\x12R\n\x04view\x18\x02 \x01(\x0e\x32?.google.cloud.dataplex.v1.GetDataScanJobRequest.DataScanJobViewB\x03\xe0\x41\x01\"J\n\x0f\x44\x61taScanJobView\x12\"\n\x1e\x44\x41TA_SCAN_JOB_VIEW_UNSPECIFIED\x10\x00\x12\t\n\x05\x42\x41SIC\x10\x01\x12\x08\n\x04\x46ULL\x10\n\"\x99\x01\n\x17ListDataScanJobsRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\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\"r\n\x18ListDataScanJobsResponse\x12=\n\x0e\x64\x61ta_scan_jobs\x18\x01 \x03(\x0b\x32%.google.cloud.dataplex.v1.DataScanJob\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"4\n\x1fGenerateDataQualityRulesRequest\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\"[\n GenerateDataQualityRulesResponse\x12\x37\n\x04rule\x18\x01 \x03(\x0b\x32).google.cloud.dataplex.v1.DataQualityRule\"\xa9\x0c\n\x08\x44\x61taScan\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x08\x12\x18\n\x03uid\x18\x02 \x01(\tB\x0b\xe0\x41\x03\xe2\x8c\xcf\xd7\x08\x02\x08\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x43\n\x06labels\x18\x05 \x03(\x0b\x32..google.cloud.dataplex.v1.DataScan.LabelsEntryB\x03\xe0\x41\x01\x12\x33\n\x05state\x18\x06 \x01(\x0e\x32\x1f.google.cloud.dataplex.v1.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x37\n\x04\x64\x61ta\x18\t \x01(\x0b\x32$.google.cloud.dataplex.v1.DataSourceB\x03\xe0\x41\x02\x12M\n\x0e\x65xecution_spec\x18\n \x01(\x0b\x32\x30.google.cloud.dataplex.v1.DataScan.ExecutionSpecB\x03\xe0\x41\x01\x12Q\n\x10\x65xecution_status\x18\x0b \x01(\x0b\x32\x32.google.cloud.dataplex.v1.DataScan.ExecutionStatusB\x03\xe0\x41\x03\x12\x39\n\x04type\x18\x0c \x01(\x0e\x32&.google.cloud.dataplex.v1.DataScanTypeB\x03\xe0\x41\x03\x12\x46\n\x11\x64\x61ta_quality_spec\x18\x64 \x01(\x0b\x32).google.cloud.dataplex.v1.DataQualitySpecH\x00\x12\x46\n\x11\x64\x61ta_profile_spec\x18\x65 \x01(\x0b\x32).google.cloud.dataplex.v1.DataProfileSpecH\x00\x12J\n\x13\x64\x61ta_discovery_spec\x18\x66 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataDiscoverySpecH\x00\x12P\n\x13\x64\x61ta_quality_result\x18\xc8\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataQualityResultB\x03\xe0\x41\x03H\x01\x12P\n\x13\x64\x61ta_profile_result\x18\xc9\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataProfileResultB\x03\xe0\x41\x03H\x01\x12T\n\x15\x64\x61ta_discovery_result\x18\xca\x01 \x01(\x0b\x32-.google.cloud.dataplex.v1.DataDiscoveryResultB\x03\xe0\x41\x03H\x01\x1am\n\rExecutionSpec\x12\x37\n\x07trigger\x18\x01 \x01(\x0b\x32!.google.cloud.dataplex.v1.TriggerB\x03\xe0\x41\x01\x12\x14\n\x05\x66ield\x18\x64 \x01(\tB\x03\xe0\x41\x05H\x00\x42\r\n\x0bincremental\x1a\xd0\x01\n\x0f\x45xecutionStatus\x12>\n\x15latest_job_start_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12<\n\x13latest_job_end_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12?\n\x16latest_job_create_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\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:c\xea\x41`\n dataplex.googleapis.com/DataScan\x12<projects/{project}/locations/{location}/dataScans/{dataScan}B\x06\n\x04specB\x08\n\x06result\"\xca\x08\n\x0b\x44\x61taScanJob\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x08\x12\x18\n\x03uid\x18\x02 \x01(\tB\x0b\xe0\x41\x03\xe2\x8c\xcf\xd7\x08\x02\x08\x01\x12\x34\n\x0b\x63reate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x33\n\nstart_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12?\n\x05state\x18\x05 \x01(\x0e\x32+.google.cloud.dataplex.v1.DataScanJob.StateB\x03\xe0\x41\x03\x12\x14\n\x07message\x18\x06 \x01(\tB\x03\xe0\x41\x03\x12\x39\n\x04type\x18\x07 \x01(\x0e\x32&.google.cloud.dataplex.v1.DataScanTypeB\x03\xe0\x41\x03\x12K\n\x11\x64\x61ta_quality_spec\x18\x64 \x01(\x0b\x32).google.cloud.dataplex.v1.DataQualitySpecB\x03\xe0\x41\x03H\x00\x12K\n\x11\x64\x61ta_profile_spec\x18\x65 \x01(\x0b\x32).google.cloud.dataplex.v1.DataProfileSpecB\x03\xe0\x41\x03H\x00\x12O\n\x13\x64\x61ta_discovery_spec\x18\x66 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataDiscoverySpecB\x03\xe0\x41\x03H\x00\x12P\n\x13\x64\x61ta_quality_result\x18\xc8\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataQualityResultB\x03\xe0\x41\x03H\x01\x12P\n\x13\x64\x61ta_profile_result\x18\xc9\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataProfileResultB\x03\xe0\x41\x03H\x01\x12T\n\x15\x64\x61ta_discovery_result\x18\xca\x01 \x01(\x0b\x32-.google.cloud.dataplex.v1.DataDiscoveryResultB\x03\xe0\x41\x03H\x01\"q\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0b\n\x07RUNNING\x10\x01\x12\r\n\tCANCELING\x10\x02\x12\r\n\tCANCELLED\x10\x03\x12\r\n\tSUCCEEDED\x10\x04\x12\n\n\x06\x46\x41ILED\x10\x05\x12\x0b\n\x07PENDING\x10\x07:q\xea\x41n\n#dataplex.googleapis.com/DataScanJob\x12Gprojects/{project}/locations/{location}/dataScans/{dataScan}/jobs/{job}B\x06\n\x04specB\x08\n\x06result*f\n\x0c\x44\x61taScanType\x12\x1e\n\x1a\x44\x41TA_SCAN_TYPE_UNSPECIFIED\x10\x00\x12\x10\n\x0c\x44\x41TA_QUALITY\x10\x01\x12\x10\n\x0c\x44\x41TA_PROFILE\x10\x02\x12\x12\n\x0e\x44\x41TA_DISCOVERY\x10\x03\x32\xb6\x0f\n\x0f\x44\x61taScanService\x12\xe3\x01\n\x0e\x43reateDataScan\x12/.google.cloud.dataplex.v1.CreateDataScanRequest\x1a\x1d.google.longrunning.Operation\"\x80\x01\xca\x41\x1d\n\x08\x44\x61taScan\x12\x11OperationMetadata\xda\x41\x1dparent,data_scan,data_scan_id\x82\xd3\xe4\x93\x02:\"-/v1/{parent=projects/*/locations/*}/dataScans:\tdata_scan\x12\xe5\x01\n\x0eUpdateDataScan\x12/.google.cloud.dataplex.v1.UpdateDataScanRequest\x1a\x1d.google.longrunning.Operation\"\x82\x01\xca\x41\x1d\n\x08\x44\x61taScan\x12\x11OperationMetadata\xda\x41\x15\x64\x61ta_scan,update_mask\x82\xd3\xe4\x93\x02\x44\x32\x37/v1/{data_scan.name=projects/*/locations/*/dataScans/*}:\tdata_scan\x12\xcb\x01\n\x0e\x44\x65leteDataScan\x12/.google.cloud.dataplex.v1.DeleteDataScanRequest\x1a\x1d.google.longrunning.Operation\"i\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02/*-/v1/{name=projects/*/locations/*/dataScans/*}\x12\x9d\x01\n\x0bGetDataScan\x12,.google.cloud.dataplex.v1.GetDataScanRequest\x1a\".google.cloud.dataplex.v1.DataScan\"<\xda\x41\x04name\x82\xd3\xe4\x93\x02/\x12-/v1/{name=projects/*/locations/*/dataScans/*}\x12\xb0\x01\n\rListDataScans\x12..google.cloud.dataplex.v1.ListDataScansRequest\x1a/.google.cloud.dataplex.v1.ListDataScansResponse\">\xda\x41\x06parent\x82\xd3\xe4\x93\x02/\x12-/v1/{parent=projects/*/locations/*}/dataScans\x12\xaf\x01\n\x0bRunDataScan\x12,.google.cloud.dataplex.v1.RunDataScanRequest\x1a-.google.cloud.dataplex.v1.RunDataScanResponse\"C\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36\"1/v1/{name=projects/*/locations/*/dataScans/*}:run:\x01*\x12\xad\x01\n\x0eGetDataScanJob\x12/.google.cloud.dataplex.v1.GetDataScanJobRequest\x1a%.google.cloud.dataplex.v1.DataScanJob\"C\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{name=projects/*/locations/*/dataScans/*/jobs/*}\x12\xc0\x01\n\x10ListDataScanJobs\x12\x31.google.cloud.dataplex.v1.ListDataScanJobsRequest\x1a\x32.google.cloud.dataplex.v1.ListDataScanJobsResponse\"E\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/locations/*/dataScans/*}/jobs\x12\xc1\x02\n\x18GenerateDataQualityRules\x12\x39.google.cloud.dataplex.v1.GenerateDataQualityRulesRequest\x1a:.google.cloud.dataplex.v1.GenerateDataQualityRulesResponse\"\xad\x01\xda\x41\x04name\x82\xd3\xe4\x93\x02\x9f\x01\"F/v1/{name=projects/*/locations/*/dataScans/*}:generateDataQualityRules:\x01*ZR\"M/v1/{name=projects/*/locations/*/dataScans/*/jobs/*}:generateDataQualityRules:\x01*\x1aK\xca\x41\x17\x64\x61taplex.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformBj\n\x1c\x63om.google.cloud.dataplex.v1B\x0e\x44\x61taScansProtoP\x01Z8cloud.google.com/go/dataplex/apiv1/dataplexpb;dataplexpbb\x06proto3"
25
+ descriptor_data = "\n(google/cloud/dataplex/v1/datascans.proto\x12\x18google.cloud.dataplex.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/api/field_info.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/dataplex/v1/data_discovery.proto\x1a\x31google/cloud/dataplex/v1/data_documentation.proto\x1a+google/cloud/dataplex/v1/data_profile.proto\x1a+google/cloud/dataplex/v1/data_quality.proto\x1a)google/cloud/dataplex/v1/processing.proto\x1a(google/cloud/dataplex/v1/resources.proto\x1a&google/cloud/dataplex/v1/service.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xc5\x01\n\x15\x43reateDataScanRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12:\n\tdata_scan\x18\x02 \x01(\x0b\x32\".google.cloud.dataplex.v1.DataScanB\x03\xe0\x41\x02\x12\x19\n\x0c\x64\x61ta_scan_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rvalidate_only\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\"\xa5\x01\n\x15UpdateDataScanRequest\x12:\n\tdata_scan\x18\x01 \x01(\x0b\x32\".google.cloud.dataplex.v1.DataScanB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x1a\n\rvalidate_only\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"c\n\x15\x44\x65leteDataScanRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\x12\x12\n\x05\x66orce\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"\xdf\x01\n\x12GetDataScanRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\x12L\n\x04view\x18\x02 \x01(\x0e\x32\x39.google.cloud.dataplex.v1.GetDataScanRequest.DataScanViewB\x03\xe0\x41\x01\"C\n\x0c\x44\x61taScanView\x12\x1e\n\x1a\x44\x41TA_SCAN_VIEW_UNSPECIFIED\x10\x00\x12\t\n\x05\x42\x41SIC\x10\x01\x12\x08\n\x04\x46ULL\x10\n\"\xae\x01\n\x14ListDataScansRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\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\x15ListDataScansResponse\x12\x36\n\ndata_scans\x18\x01 \x03(\x0b\x32\".google.cloud.dataplex.v1.DataScan\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"L\n\x12RunDataScanRequest\x12\x36\n\x04name\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\"I\n\x13RunDataScanResponse\x12\x32\n\x03job\x18\x01 \x01(\x0b\x32%.google.cloud.dataplex.v1.DataScanJob\"\xf2\x01\n\x15GetDataScanJobRequest\x12\x39\n\x04name\x18\x01 \x01(\tB+\xe0\x41\x02\xfa\x41%\n#dataplex.googleapis.com/DataScanJob\x12R\n\x04view\x18\x02 \x01(\x0e\x32?.google.cloud.dataplex.v1.GetDataScanJobRequest.DataScanJobViewB\x03\xe0\x41\x01\"J\n\x0f\x44\x61taScanJobView\x12\"\n\x1e\x44\x41TA_SCAN_JOB_VIEW_UNSPECIFIED\x10\x00\x12\t\n\x05\x42\x41SIC\x10\x01\x12\x08\n\x04\x46ULL\x10\n\"\x99\x01\n\x17ListDataScanJobsRequest\x12\x38\n\x06parent\x18\x01 \x01(\tB(\xe0\x41\x02\xfa\x41\"\n dataplex.googleapis.com/DataScan\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\"r\n\x18ListDataScanJobsResponse\x12=\n\x0e\x64\x61ta_scan_jobs\x18\x01 \x03(\x0b\x32%.google.cloud.dataplex.v1.DataScanJob\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"4\n\x1fGenerateDataQualityRulesRequest\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\"[\n GenerateDataQualityRulesResponse\x12\x37\n\x04rule\x18\x01 \x03(\x0b\x32).google.cloud.dataplex.v1.DataQualityRule\"\xdb\r\n\x08\x44\x61taScan\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x08\x12\x18\n\x03uid\x18\x02 \x01(\tB\x0b\xe0\x41\x03\xe2\x8c\xcf\xd7\x08\x02\x08\x01\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x43\n\x06labels\x18\x05 \x03(\x0b\x32..google.cloud.dataplex.v1.DataScan.LabelsEntryB\x03\xe0\x41\x01\x12\x33\n\x05state\x18\x06 \x01(\x0e\x32\x1f.google.cloud.dataplex.v1.StateB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x37\n\x04\x64\x61ta\x18\t \x01(\x0b\x32$.google.cloud.dataplex.v1.DataSourceB\x03\xe0\x41\x02\x12M\n\x0e\x65xecution_spec\x18\n \x01(\x0b\x32\x30.google.cloud.dataplex.v1.DataScan.ExecutionSpecB\x03\xe0\x41\x01\x12Q\n\x10\x65xecution_status\x18\x0b \x01(\x0b\x32\x32.google.cloud.dataplex.v1.DataScan.ExecutionStatusB\x03\xe0\x41\x03\x12\x39\n\x04type\x18\x0c \x01(\x0e\x32&.google.cloud.dataplex.v1.DataScanTypeB\x03\xe0\x41\x03\x12\x46\n\x11\x64\x61ta_quality_spec\x18\x64 \x01(\x0b\x32).google.cloud.dataplex.v1.DataQualitySpecH\x00\x12\x46\n\x11\x64\x61ta_profile_spec\x18\x65 \x01(\x0b\x32).google.cloud.dataplex.v1.DataProfileSpecH\x00\x12J\n\x13\x64\x61ta_discovery_spec\x18\x66 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataDiscoverySpecH\x00\x12R\n\x17\x64\x61ta_documentation_spec\x18g \x01(\x0b\x32/.google.cloud.dataplex.v1.DataDocumentationSpecH\x00\x12P\n\x13\x64\x61ta_quality_result\x18\xc8\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataQualityResultB\x03\xe0\x41\x03H\x01\x12P\n\x13\x64\x61ta_profile_result\x18\xc9\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataProfileResultB\x03\xe0\x41\x03H\x01\x12T\n\x15\x64\x61ta_discovery_result\x18\xca\x01 \x01(\x0b\x32-.google.cloud.dataplex.v1.DataDiscoveryResultB\x03\xe0\x41\x03H\x01\x12\\\n\x19\x64\x61ta_documentation_result\x18\xcb\x01 \x01(\x0b\x32\x31.google.cloud.dataplex.v1.DataDocumentationResultB\x03\xe0\x41\x03H\x01\x1am\n\rExecutionSpec\x12\x37\n\x07trigger\x18\x01 \x01(\x0b\x32!.google.cloud.dataplex.v1.TriggerB\x03\xe0\x41\x01\x12\x14\n\x05\x66ield\x18\x64 \x01(\tB\x03\xe0\x41\x05H\x00\x42\r\n\x0bincremental\x1a\xd0\x01\n\x0f\x45xecutionStatus\x12>\n\x15latest_job_start_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12<\n\x13latest_job_end_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12?\n\x16latest_job_create_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\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:c\xea\x41`\n dataplex.googleapis.com/DataScan\x12<projects/{project}/locations/{location}/dataScans/{dataScan}B\x06\n\x04specB\x08\n\x06result\"\x81\n\n\x0b\x44\x61taScanJob\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x08\x12\x18\n\x03uid\x18\x02 \x01(\tB\x0b\xe0\x41\x03\xe2\x8c\xcf\xd7\x08\x02\x08\x01\x12\x34\n\x0b\x63reate_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x33\n\nstart_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x31\n\x08\x65nd_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12?\n\x05state\x18\x05 \x01(\x0e\x32+.google.cloud.dataplex.v1.DataScanJob.StateB\x03\xe0\x41\x03\x12\x14\n\x07message\x18\x06 \x01(\tB\x03\xe0\x41\x03\x12\x39\n\x04type\x18\x07 \x01(\x0e\x32&.google.cloud.dataplex.v1.DataScanTypeB\x03\xe0\x41\x03\x12K\n\x11\x64\x61ta_quality_spec\x18\x64 \x01(\x0b\x32).google.cloud.dataplex.v1.DataQualitySpecB\x03\xe0\x41\x03H\x00\x12K\n\x11\x64\x61ta_profile_spec\x18\x65 \x01(\x0b\x32).google.cloud.dataplex.v1.DataProfileSpecB\x03\xe0\x41\x03H\x00\x12O\n\x13\x64\x61ta_discovery_spec\x18\x66 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataDiscoverySpecB\x03\xe0\x41\x03H\x00\x12W\n\x17\x64\x61ta_documentation_spec\x18g \x01(\x0b\x32/.google.cloud.dataplex.v1.DataDocumentationSpecB\x03\xe0\x41\x03H\x00\x12P\n\x13\x64\x61ta_quality_result\x18\xc8\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataQualityResultB\x03\xe0\x41\x03H\x01\x12P\n\x13\x64\x61ta_profile_result\x18\xc9\x01 \x01(\x0b\x32+.google.cloud.dataplex.v1.DataProfileResultB\x03\xe0\x41\x03H\x01\x12T\n\x15\x64\x61ta_discovery_result\x18\xca\x01 \x01(\x0b\x32-.google.cloud.dataplex.v1.DataDiscoveryResultB\x03\xe0\x41\x03H\x01\x12\\\n\x19\x64\x61ta_documentation_result\x18\xcb\x01 \x01(\x0b\x32\x31.google.cloud.dataplex.v1.DataDocumentationResultB\x03\xe0\x41\x03H\x01\"q\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0b\n\x07RUNNING\x10\x01\x12\r\n\tCANCELING\x10\x02\x12\r\n\tCANCELLED\x10\x03\x12\r\n\tSUCCEEDED\x10\x04\x12\n\n\x06\x46\x41ILED\x10\x05\x12\x0b\n\x07PENDING\x10\x07:q\xea\x41n\n#dataplex.googleapis.com/DataScanJob\x12Gprojects/{project}/locations/{location}/dataScans/{dataScan}/jobs/{job}B\x06\n\x04specB\x08\n\x06result*~\n\x0c\x44\x61taScanType\x12\x1e\n\x1a\x44\x41TA_SCAN_TYPE_UNSPECIFIED\x10\x00\x12\x10\n\x0c\x44\x41TA_QUALITY\x10\x01\x12\x10\n\x0c\x44\x41TA_PROFILE\x10\x02\x12\x12\n\x0e\x44\x41TA_DISCOVERY\x10\x03\x12\x16\n\x12\x44\x41TA_DOCUMENTATION\x10\x04\x32\xb6\x0f\n\x0f\x44\x61taScanService\x12\xe3\x01\n\x0e\x43reateDataScan\x12/.google.cloud.dataplex.v1.CreateDataScanRequest\x1a\x1d.google.longrunning.Operation\"\x80\x01\xca\x41\x1d\n\x08\x44\x61taScan\x12\x11OperationMetadata\xda\x41\x1dparent,data_scan,data_scan_id\x82\xd3\xe4\x93\x02:\"-/v1/{parent=projects/*/locations/*}/dataScans:\tdata_scan\x12\xe5\x01\n\x0eUpdateDataScan\x12/.google.cloud.dataplex.v1.UpdateDataScanRequest\x1a\x1d.google.longrunning.Operation\"\x82\x01\xca\x41\x1d\n\x08\x44\x61taScan\x12\x11OperationMetadata\xda\x41\x15\x64\x61ta_scan,update_mask\x82\xd3\xe4\x93\x02\x44\x32\x37/v1/{data_scan.name=projects/*/locations/*/dataScans/*}:\tdata_scan\x12\xcb\x01\n\x0e\x44\x65leteDataScan\x12/.google.cloud.dataplex.v1.DeleteDataScanRequest\x1a\x1d.google.longrunning.Operation\"i\xca\x41*\n\x15google.protobuf.Empty\x12\x11OperationMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02/*-/v1/{name=projects/*/locations/*/dataScans/*}\x12\x9d\x01\n\x0bGetDataScan\x12,.google.cloud.dataplex.v1.GetDataScanRequest\x1a\".google.cloud.dataplex.v1.DataScan\"<\xda\x41\x04name\x82\xd3\xe4\x93\x02/\x12-/v1/{name=projects/*/locations/*/dataScans/*}\x12\xb0\x01\n\rListDataScans\x12..google.cloud.dataplex.v1.ListDataScansRequest\x1a/.google.cloud.dataplex.v1.ListDataScansResponse\">\xda\x41\x06parent\x82\xd3\xe4\x93\x02/\x12-/v1/{parent=projects/*/locations/*}/dataScans\x12\xaf\x01\n\x0bRunDataScan\x12,.google.cloud.dataplex.v1.RunDataScanRequest\x1a-.google.cloud.dataplex.v1.RunDataScanResponse\"C\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36\"1/v1/{name=projects/*/locations/*/dataScans/*}:run:\x01*\x12\xad\x01\n\x0eGetDataScanJob\x12/.google.cloud.dataplex.v1.GetDataScanJobRequest\x1a%.google.cloud.dataplex.v1.DataScanJob\"C\xda\x41\x04name\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{name=projects/*/locations/*/dataScans/*/jobs/*}\x12\xc0\x01\n\x10ListDataScanJobs\x12\x31.google.cloud.dataplex.v1.ListDataScanJobsRequest\x1a\x32.google.cloud.dataplex.v1.ListDataScanJobsResponse\"E\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x36\x12\x34/v1/{parent=projects/*/locations/*/dataScans/*}/jobs\x12\xc1\x02\n\x18GenerateDataQualityRules\x12\x39.google.cloud.dataplex.v1.GenerateDataQualityRulesRequest\x1a:.google.cloud.dataplex.v1.GenerateDataQualityRulesResponse\"\xad\x01\xda\x41\x04name\x82\xd3\xe4\x93\x02\x9f\x01\"F/v1/{name=projects/*/locations/*/dataScans/*}:generateDataQualityRules:\x01*ZR\"M/v1/{name=projects/*/locations/*/dataScans/*/jobs/*}:generateDataQualityRules:\x01*\x1aK\xca\x41\x17\x64\x61taplex.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformBj\n\x1c\x63om.google.cloud.dataplex.v1B\x0e\x44\x61taScansProtoP\x01Z8cloud.google.com/go/dataplex/apiv1/dataplexpb;dataplexpbb\x06proto3"
25
26
 
26
27
  pool = Google::Protobuf::DescriptorPool.generated_pool
27
28
 
@@ -42,6 +43,7 @@ rescue TypeError
42
43
  ["google.cloud.dataplex.v1.DataSource", "google/cloud/dataplex/v1/processing.proto"],
43
44
  ["google.cloud.dataplex.v1.DataProfileSpec", "google/cloud/dataplex/v1/data_profile.proto"],
44
45
  ["google.cloud.dataplex.v1.DataDiscoverySpec", "google/cloud/dataplex/v1/data_discovery.proto"],
46
+ ["google.cloud.dataplex.v1.DataDocumentationSpec", "google/cloud/dataplex/v1/data_documentation.proto"],
45
47
  ]
46
48
  imports.each do |type_name, expected_filename|
47
49
  import_file = pool.lookup(type_name).file_descriptor
@@ -1143,8 +1143,6 @@ module Google
1143
1143
  # @return [::String,nil]
1144
1144
  # @!attribute [rw] credentials
1145
1145
  # Credentials to send with calls. You may provide any of the following types:
1146
- # * (`String`) The path to a service account key file in JSON format
1147
- # * (`Hash`) A service account key as a Hash
1148
1146
  # * (`Google::Auth::Credentials`) A googleauth credentials object
1149
1147
  # (see the [googleauth docs](https://rubydoc.info/gems/googleauth/Google/Auth/Credentials))
1150
1148
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
@@ -1153,7 +1151,26 @@ module Google
1153
1151
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1154
1152
  # * (`nil`) indicating no credentials
1155
1153
  #
1156
- # Warning: If you accept a credential configuration (JSON file or Hash) from an
1154
+ # @note Warning: Passing a `String` to a keyfile path or a `Hash` of credentials
1155
+ # is deprecated. Providing an unvalidated credential configuration to
1156
+ # Google APIs can compromise the security of your systems and data.
1157
+ #
1158
+ # @example
1159
+ #
1160
+ # # The recommended way to provide credentials is to use the `make_creds` method
1161
+ # # on the appropriate credentials class for your environment.
1162
+ #
1163
+ # require "googleauth"
1164
+ #
1165
+ # credentials = ::Google::Auth::ServiceAccountCredentials.make_creds(
1166
+ # json_key_io: ::File.open("/path/to/keyfile.json")
1167
+ # )
1168
+ #
1169
+ # client = ::Google::Cloud::Dataplex::V1::MetadataService::Client.new do |config|
1170
+ # config.credentials = credentials
1171
+ # end
1172
+ #
1173
+ # @note Warning: If you accept a credential configuration (JSON file or Hash) from an
1157
1174
  # external source for authentication to Google Cloud, you must validate it before
1158
1175
  # providing it to a Google API client library. Providing an unvalidated credential
1159
1176
  # configuration to Google APIs can compromise the security of your systems and data.
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Dataplex
23
23
  module V1
24
- VERSION = "2.7.0"
24
+ VERSION = "2.8.1"
25
25
  end
26
26
  end
27
27
  end
@@ -51,6 +51,9 @@ module Google
51
51
  # @return [::String]
52
52
  # The service computes this checksum. The client may send it on update and
53
53
  # delete requests to ensure it has an up-to-date value before proceeding.
54
+ # @!attribute [rw] data_classification
55
+ # @return [::Google::Cloud::Dataplex::V1::AspectType::DataClassification]
56
+ # Optional. Immutable. Stores data classification of the aspect.
54
57
  # @!attribute [rw] authorization
55
58
  # @return [::Google::Cloud::Dataplex::V1::AspectType::Authorization]
56
59
  # Immutable. Defines the Authorization for this type.
@@ -217,6 +220,15 @@ module Google
217
220
  include ::Google::Protobuf::MessageExts
218
221
  extend ::Google::Protobuf::MessageExts::ClassMethods
219
222
  end
223
+
224
+ # Classifies the data stored by the aspect.
225
+ module DataClassification
226
+ # Denotes that the aspect contains only metadata.
227
+ DATA_CLASSIFICATION_UNSPECIFIED = 0
228
+
229
+ # Metadata and data classification.
230
+ METADATA_AND_DATA = 1
231
+ end
220
232
  end
221
233
 
222
234
  # An Entry Group represents a logical grouping of one or more Entries.
@@ -1455,14 +1467,13 @@ module Google
1455
1467
  # A boundary on the scope of impact that the metadata import job can have.
1456
1468
  # @!attribute [rw] entry_groups
1457
1469
  # @return [::Array<::String>]
1458
- # Required. The entry group that is in scope for the import job,
1459
- # specified as a relative resource name in the format
1470
+ # Required. The entry groups that are in scope for the import job,
1471
+ # specified as relative resource names in the format
1460
1472
  # `projects/{project_number_or_id}/locations/{location_id}/entryGroups/{entry_group_id}`.
1461
- # Only entries and aspects that belong to the specified entry group are
1473
+ # Only entries and aspects that belong to the specified entry groups are
1462
1474
  # affected by the job.
1463
1475
  #
1464
- # Must contain exactly one element. The entry group and the job
1465
- # must be in the same location.
1476
+ # The entry groups and the job must be in the same location.
1466
1477
  # @!attribute [rw] entry_types
1467
1478
  # @return [::Array<::String>]
1468
1479
  # Required. The entry types that are in scope for the import job,
@@ -1852,8 +1863,6 @@ module Google
1852
1863
  # aspects exceeds 100, the first 100 will be returned.
1853
1864
  CUSTOM = 3
1854
1865
 
1855
- # Returns all aspects. If the number of aspects exceeds 100, the first
1856
- # 100 will be returned.
1857
1866
  ALL = 4
1858
1867
  end
1859
1868
 
@@ -49,6 +49,9 @@ module Google
49
49
  # @!attribute [r] failure_details
50
50
  # @return [::Google::Cloud::Dataplex::V1::EncryptionConfig::FailureDetails]
51
51
  # Output only. Details of the failure if anything related to Cmek db fails.
52
+ # @!attribute [rw] enable_metastore_encryption
53
+ # @return [::Boolean]
54
+ # Optional. Represent the state of CMEK opt-in for metastore.
52
55
  class EncryptionConfig
53
56
  include ::Google::Protobuf::MessageExts
54
57
  extend ::Google::Protobuf::MessageExts::ClassMethods