google-cloud-asset-v1 0.22.0 → 0.23.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.
@@ -34,7 +34,7 @@ module Google
34
34
  ##
35
35
  # Asset service definition.
36
36
  #
37
- # To load this service and instantiate a client:
37
+ # @example Load this service and instantiate a gRPC client
38
38
  #
39
39
  # require "google/cloud/asset/v1/asset_service"
40
40
  # client = ::Google::Cloud::Asset::V1::AssetService::Client.new
@@ -360,6 +360,141 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
360
360
  optional :attached_resource, :string, 1
361
361
  optional :policy, :message, 2, "google.iam.v1.Policy"
362
362
  end
363
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicy" do
364
+ optional :attached_resource, :string, 1
365
+ optional :applied_resource, :string, 5
366
+ repeated :rules, :message, 2, "google.cloud.asset.v1.AnalyzerOrgPolicy.Rule"
367
+ optional :inherit_from_parent, :bool, 3
368
+ optional :reset, :bool, 4
369
+ end
370
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicy.Rule" do
371
+ optional :condition, :message, 7, "google.type.Expr"
372
+ oneof :kind do
373
+ optional :values, :message, 3, "google.cloud.asset.v1.AnalyzerOrgPolicy.Rule.StringValues"
374
+ optional :allow_all, :bool, 4
375
+ optional :deny_all, :bool, 5
376
+ optional :enforce, :bool, 6
377
+ end
378
+ end
379
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicy.Rule.StringValues" do
380
+ repeated :allowed_values, :string, 1
381
+ repeated :denied_values, :string, 2
382
+ end
383
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint" do
384
+ oneof :constraint_definition do
385
+ optional :google_defined_constraint, :message, 1, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint"
386
+ optional :custom_constraint, :message, 2, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint"
387
+ end
388
+ end
389
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint" do
390
+ optional :name, :string, 1
391
+ optional :display_name, :string, 2
392
+ optional :description, :string, 3
393
+ optional :constraint_default, :enum, 4, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.ConstraintDefault"
394
+ oneof :constraint_type do
395
+ optional :list_constraint, :message, 5, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.ListConstraint"
396
+ optional :boolean_constraint, :message, 6, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.BooleanConstraint"
397
+ end
398
+ end
399
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.ListConstraint" do
400
+ optional :supports_in, :bool, 1
401
+ optional :supports_under, :bool, 2
402
+ end
403
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.BooleanConstraint" do
404
+ end
405
+ add_enum "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.ConstraintDefault" do
406
+ value :CONSTRAINT_DEFAULT_UNSPECIFIED, 0
407
+ value :ALLOW, 1
408
+ value :DENY, 2
409
+ end
410
+ add_message "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint" do
411
+ optional :name, :string, 1
412
+ repeated :resource_types, :string, 2
413
+ repeated :method_types, :enum, 3, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint.MethodType"
414
+ optional :condition, :string, 4
415
+ optional :action_type, :enum, 5, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint.ActionType"
416
+ optional :display_name, :string, 6
417
+ optional :description, :string, 7
418
+ end
419
+ add_enum "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint.MethodType" do
420
+ value :METHOD_TYPE_UNSPECIFIED, 0
421
+ value :CREATE, 1
422
+ value :UPDATE, 2
423
+ value :DELETE, 3
424
+ end
425
+ add_enum "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint.ActionType" do
426
+ value :ACTION_TYPE_UNSPECIFIED, 0
427
+ value :ALLOW, 1
428
+ value :DENY, 2
429
+ end
430
+ add_message "google.cloud.asset.v1.AnalyzeOrgPoliciesRequest" do
431
+ optional :scope, :string, 1
432
+ optional :constraint, :string, 2
433
+ optional :filter, :string, 3
434
+ proto3_optional :page_size, :int32, 4
435
+ optional :page_token, :string, 5
436
+ end
437
+ add_message "google.cloud.asset.v1.AnalyzeOrgPoliciesResponse" do
438
+ repeated :org_policy_results, :message, 1, "google.cloud.asset.v1.AnalyzeOrgPoliciesResponse.OrgPolicyResult"
439
+ optional :constraint, :message, 2, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint"
440
+ optional :next_page_token, :string, 3
441
+ end
442
+ add_message "google.cloud.asset.v1.AnalyzeOrgPoliciesResponse.OrgPolicyResult" do
443
+ optional :consolidated_policy, :message, 1, "google.cloud.asset.v1.AnalyzerOrgPolicy"
444
+ repeated :policy_bundle, :message, 2, "google.cloud.asset.v1.AnalyzerOrgPolicy"
445
+ end
446
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersRequest" do
447
+ optional :scope, :string, 1
448
+ optional :constraint, :string, 2
449
+ optional :filter, :string, 3
450
+ proto3_optional :page_size, :int32, 4
451
+ optional :page_token, :string, 5
452
+ end
453
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse" do
454
+ repeated :governed_containers, :message, 1, "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer"
455
+ optional :constraint, :message, 2, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint"
456
+ optional :next_page_token, :string, 3
457
+ end
458
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer" do
459
+ optional :full_resource_name, :string, 1
460
+ optional :parent, :string, 2
461
+ optional :consolidated_policy, :message, 3, "google.cloud.asset.v1.AnalyzerOrgPolicy"
462
+ repeated :policy_bundle, :message, 4, "google.cloud.asset.v1.AnalyzerOrgPolicy"
463
+ end
464
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsRequest" do
465
+ optional :scope, :string, 1
466
+ optional :constraint, :string, 2
467
+ optional :filter, :string, 3
468
+ proto3_optional :page_size, :int32, 4
469
+ optional :page_token, :string, 5
470
+ end
471
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse" do
472
+ repeated :governed_assets, :message, 1, "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset"
473
+ optional :constraint, :message, 2, "google.cloud.asset.v1.AnalyzerOrgPolicyConstraint"
474
+ optional :next_page_token, :string, 3
475
+ end
476
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource" do
477
+ optional :full_resource_name, :string, 1
478
+ optional :parent, :string, 2
479
+ optional :project, :string, 5
480
+ repeated :folders, :string, 6
481
+ optional :organization, :string, 7
482
+ end
483
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedIamPolicy" do
484
+ optional :attached_resource, :string, 1
485
+ optional :policy, :message, 2, "google.iam.v1.Policy"
486
+ optional :project, :string, 5
487
+ repeated :folders, :string, 6
488
+ optional :organization, :string, 7
489
+ end
490
+ add_message "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset" do
491
+ optional :consolidated_policy, :message, 3, "google.cloud.asset.v1.AnalyzerOrgPolicy"
492
+ repeated :policy_bundle, :message, 4, "google.cloud.asset.v1.AnalyzerOrgPolicy"
493
+ oneof :governed_asset do
494
+ optional :governed_resource, :message, 1, "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource"
495
+ optional :governed_iam_policy, :message, 2, "google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedIamPolicy"
496
+ end
497
+ end
363
498
  add_enum "google.cloud.asset.v1.ContentType" do
364
499
  value :CONTENT_TYPE_UNSPECIFIED, 0
365
500
  value :RESOURCE, 1
@@ -443,6 +578,28 @@ module Google
443
578
  BatchGetEffectiveIamPoliciesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse").msgclass
444
579
  BatchGetEffectiveIamPoliciesResponse::EffectiveIamPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy").msgclass
445
580
  BatchGetEffectiveIamPoliciesResponse::EffectiveIamPolicy::PolicyInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.BatchGetEffectiveIamPoliciesResponse.EffectiveIamPolicy.PolicyInfo").msgclass
581
+ AnalyzerOrgPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicy").msgclass
582
+ AnalyzerOrgPolicy::Rule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicy.Rule").msgclass
583
+ AnalyzerOrgPolicy::Rule::StringValues = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicy.Rule.StringValues").msgclass
584
+ AnalyzerOrgPolicyConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint").msgclass
585
+ AnalyzerOrgPolicyConstraint::Constraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint").msgclass
586
+ AnalyzerOrgPolicyConstraint::Constraint::ListConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.ListConstraint").msgclass
587
+ AnalyzerOrgPolicyConstraint::Constraint::BooleanConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.BooleanConstraint").msgclass
588
+ AnalyzerOrgPolicyConstraint::Constraint::ConstraintDefault = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.Constraint.ConstraintDefault").enummodule
589
+ AnalyzerOrgPolicyConstraint::CustomConstraint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint").msgclass
590
+ AnalyzerOrgPolicyConstraint::CustomConstraint::MethodType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint.MethodType").enummodule
591
+ AnalyzerOrgPolicyConstraint::CustomConstraint::ActionType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzerOrgPolicyConstraint.CustomConstraint.ActionType").enummodule
592
+ AnalyzeOrgPoliciesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPoliciesRequest").msgclass
593
+ AnalyzeOrgPoliciesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPoliciesResponse").msgclass
594
+ AnalyzeOrgPoliciesResponse::OrgPolicyResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPoliciesResponse.OrgPolicyResult").msgclass
595
+ AnalyzeOrgPolicyGovernedContainersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersRequest").msgclass
596
+ AnalyzeOrgPolicyGovernedContainersResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse").msgclass
597
+ AnalyzeOrgPolicyGovernedContainersResponse::GovernedContainer = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedContainersResponse.GovernedContainer").msgclass
598
+ AnalyzeOrgPolicyGovernedAssetsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsRequest").msgclass
599
+ AnalyzeOrgPolicyGovernedAssetsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse").msgclass
600
+ AnalyzeOrgPolicyGovernedAssetsResponse::GovernedResource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedResource").msgclass
601
+ AnalyzeOrgPolicyGovernedAssetsResponse::GovernedIamPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedIamPolicy").msgclass
602
+ AnalyzeOrgPolicyGovernedAssetsResponse::GovernedAsset = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.AnalyzeOrgPolicyGovernedAssetsResponse.GovernedAsset").msgclass
446
603
  ContentType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.asset.v1.ContentType").enummodule
447
604
  end
448
605
  end
@@ -36,13 +36,14 @@ module Google
36
36
  # Exports assets with time and resource types to a given Cloud Storage
37
37
  # location/BigQuery table. For Cloud Storage location destinations, the
38
38
  # output format is newline-delimited JSON. Each line represents a
39
- # [google.cloud.asset.v1.Asset][google.cloud.asset.v1.Asset] in the JSON format; for BigQuery table
40
- # destinations, the output table stores the fields in asset Protobuf as
41
- # columns. This API implements the [google.longrunning.Operation][google.longrunning.Operation] API,
42
- # which allows you to keep track of the export. We recommend intervals of at
43
- # least 2 seconds with exponential retry to poll the export operation result.
44
- # For regular-size resource parent, the export operation usually finishes
45
- # within 5 minutes.
39
+ # [google.cloud.asset.v1.Asset][google.cloud.asset.v1.Asset] in the JSON
40
+ # format; for BigQuery table destinations, the output table stores the fields
41
+ # in asset Protobuf as columns. This API implements the
42
+ # [google.longrunning.Operation][google.longrunning.Operation] API, which
43
+ # allows you to keep track of the export. We recommend intervals of at least
44
+ # 2 seconds with exponential retry to poll the export operation result. For
45
+ # regular-size resource parent, the export operation usually finishes within
46
+ # 5 minutes.
46
47
  rpc :ExportAssets, ::Google::Cloud::Asset::V1::ExportAssetsRequest, ::Google::Longrunning::Operation
47
48
  # Lists assets with time and resource types and returns paged results in
48
49
  # response.
@@ -66,8 +67,8 @@ module Google
66
67
  rpc :UpdateFeed, ::Google::Cloud::Asset::V1::UpdateFeedRequest, ::Google::Cloud::Asset::V1::Feed
67
68
  # Deletes an asset feed.
68
69
  rpc :DeleteFeed, ::Google::Cloud::Asset::V1::DeleteFeedRequest, ::Google::Protobuf::Empty
69
- # Searches all Cloud resources within the specified scope, such as a project,
70
- # folder, or organization. The caller must be granted the
70
+ # Searches all Google Cloud resources within the specified scope, such as a
71
+ # project, folder, or organization. The caller must be granted the
71
72
  # `cloudasset.assets.searchAllResources` permission on the desired scope,
72
73
  # otherwise the request will be rejected.
73
74
  rpc :SearchAllResources, ::Google::Cloud::Asset::V1::SearchAllResourcesRequest, ::Google::Cloud::Asset::V1::SearchAllResourcesResponse
@@ -83,11 +84,12 @@ module Google
83
84
  # accesses on which resources, and writes the analysis results to a Google
84
85
  # Cloud Storage or a BigQuery destination. For Cloud Storage destination, the
85
86
  # output format is the JSON format that represents a
86
- # [AnalyzeIamPolicyResponse][google.cloud.asset.v1.AnalyzeIamPolicyResponse]. This method implements the
87
- # [google.longrunning.Operation][google.longrunning.Operation], which allows you to track the operation
88
- # status. We recommend intervals of at least 2 seconds with exponential
89
- # backoff retry to poll the operation result. The metadata contains the
90
- # metadata for the long-running operation.
87
+ # [AnalyzeIamPolicyResponse][google.cloud.asset.v1.AnalyzeIamPolicyResponse].
88
+ # This method implements the
89
+ # [google.longrunning.Operation][google.longrunning.Operation], which allows
90
+ # you to track the operation status. We recommend intervals of at least 2
91
+ # seconds with exponential backoff retry to poll the operation result. The
92
+ # metadata contains the metadata for the long-running operation.
91
93
  rpc :AnalyzeIamPolicyLongrunning, ::Google::Cloud::Asset::V1::AnalyzeIamPolicyLongrunningRequest, ::Google::Longrunning::Operation
92
94
  # Analyze moving a resource to a specified destination without kicking off
93
95
  # the actual move. The analysis is best effort depending on the user's
@@ -122,6 +124,31 @@ module Google
122
124
  rpc :DeleteSavedQuery, ::Google::Cloud::Asset::V1::DeleteSavedQueryRequest, ::Google::Protobuf::Empty
123
125
  # Gets effective IAM policies for a batch of resources.
124
126
  rpc :BatchGetEffectiveIamPolicies, ::Google::Cloud::Asset::V1::BatchGetEffectiveIamPoliciesRequest, ::Google::Cloud::Asset::V1::BatchGetEffectiveIamPoliciesResponse
127
+ # Analyzes organization policies under a scope.
128
+ rpc :AnalyzeOrgPolicies, ::Google::Cloud::Asset::V1::AnalyzeOrgPoliciesRequest, ::Google::Cloud::Asset::V1::AnalyzeOrgPoliciesResponse
129
+ # Analyzes organization policies governed containers (projects, folders or
130
+ # organization) under a scope.
131
+ rpc :AnalyzeOrgPolicyGovernedContainers, ::Google::Cloud::Asset::V1::AnalyzeOrgPolicyGovernedContainersRequest, ::Google::Cloud::Asset::V1::AnalyzeOrgPolicyGovernedContainersResponse
132
+ # Analyzes organization policies governed assets (Google Cloud resources or
133
+ # policies) under a scope. This RPC supports custom constraints and the
134
+ # following 10 canned constraints:
135
+ #
136
+ # * storage.uniformBucketLevelAccess
137
+ # * iam.disableServiceAccountKeyCreation
138
+ # * iam.allowedPolicyMemberDomains
139
+ # * compute.vmExternalIpAccess
140
+ # * appengine.enforceServiceAccountActAsCheck
141
+ # * gcp.resourceLocations
142
+ # * compute.trustedImageProjects
143
+ # * compute.skipDefaultNetworkCreation
144
+ # * compute.requireOsLogin
145
+ # * compute.disableNestedVirtualization
146
+ #
147
+ # This RPC only returns either resources of types supported by [searchable
148
+ # asset
149
+ # types](https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types),
150
+ # or IAM policies.
151
+ rpc :AnalyzeOrgPolicyGovernedAssets, ::Google::Cloud::Asset::V1::AnalyzeOrgPolicyGovernedAssetsRequest, ::Google::Cloud::Asset::V1::AnalyzeOrgPolicyGovernedAssetsResponse
125
152
  end
126
153
 
127
154
  Stub = Service.rpc_stub_class
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Asset
23
23
  module V1
24
- VERSION = "0.22.0"
24
+ VERSION = "0.23.0"
25
25
  end
26
26
  end
27
27
  end
@@ -23,9 +23,9 @@ module Google
23
23
  module Cloud
24
24
  module Asset
25
25
  ##
26
- # To load this package, including all its services, and instantiate a client:
26
+ # API client module.
27
27
  #
28
- # @example
28
+ # @example Load this package, including all its services, and instantiate a gRPC client
29
29
  #
30
30
  # require "google/cloud/asset/v1"
31
31
  # client = ::Google::Cloud::Asset::V1::AssetService::Client.new
@@ -0,0 +1,318 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Api
22
+ # Required information for every language.
23
+ # @!attribute [rw] reference_docs_uri
24
+ # @return [::String]
25
+ # Link to automatically generated reference documentation. Example:
26
+ # https://cloud.google.com/nodejs/docs/reference/asset/latest
27
+ # @!attribute [rw] destinations
28
+ # @return [::Array<::Google::Api::ClientLibraryDestination>]
29
+ # The destination where API teams want this client library to be published.
30
+ class CommonLanguageSettings
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+
35
+ # Details about how and where to publish client libraries.
36
+ # @!attribute [rw] version
37
+ # @return [::String]
38
+ # Version of the API to apply these settings to.
39
+ # @!attribute [rw] launch_stage
40
+ # @return [::Google::Api::LaunchStage]
41
+ # Launch stage of this version of the API.
42
+ # @!attribute [rw] rest_numeric_enums
43
+ # @return [::Boolean]
44
+ # When using transport=rest, the client request will encode enums as
45
+ # numbers rather than strings.
46
+ # @!attribute [rw] java_settings
47
+ # @return [::Google::Api::JavaSettings]
48
+ # Settings for legacy Java features, supported in the Service YAML.
49
+ # @!attribute [rw] cpp_settings
50
+ # @return [::Google::Api::CppSettings]
51
+ # Settings for C++ client libraries.
52
+ # @!attribute [rw] php_settings
53
+ # @return [::Google::Api::PhpSettings]
54
+ # Settings for PHP client libraries.
55
+ # @!attribute [rw] python_settings
56
+ # @return [::Google::Api::PythonSettings]
57
+ # Settings for Python client libraries.
58
+ # @!attribute [rw] node_settings
59
+ # @return [::Google::Api::NodeSettings]
60
+ # Settings for Node client libraries.
61
+ # @!attribute [rw] dotnet_settings
62
+ # @return [::Google::Api::DotnetSettings]
63
+ # Settings for .NET client libraries.
64
+ # @!attribute [rw] ruby_settings
65
+ # @return [::Google::Api::RubySettings]
66
+ # Settings for Ruby client libraries.
67
+ # @!attribute [rw] go_settings
68
+ # @return [::Google::Api::GoSettings]
69
+ # Settings for Go client libraries.
70
+ class ClientLibrarySettings
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # This message configures the settings for publishing [Google Cloud Client
76
+ # libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
77
+ # generated from the service config.
78
+ # @!attribute [rw] method_settings
79
+ # @return [::Array<::Google::Api::MethodSettings>]
80
+ # A list of API method settings, e.g. the behavior for methods that use the
81
+ # long-running operation pattern.
82
+ # @!attribute [rw] new_issue_uri
83
+ # @return [::String]
84
+ # Link to a place that API users can report issues. Example:
85
+ # https://issuetracker.google.com/issues/new?component=190865&template=1161103
86
+ # @!attribute [rw] documentation_uri
87
+ # @return [::String]
88
+ # Link to product home page. Example:
89
+ # https://cloud.google.com/asset-inventory/docs/overview
90
+ # @!attribute [rw] api_short_name
91
+ # @return [::String]
92
+ # Used as a tracking tag when collecting data about the APIs developer
93
+ # relations artifacts like docs, packages delivered to package managers,
94
+ # etc. Example: "speech".
95
+ # @!attribute [rw] github_label
96
+ # @return [::String]
97
+ # GitHub label to apply to issues and pull requests opened for this API.
98
+ # @!attribute [rw] codeowner_github_teams
99
+ # @return [::Array<::String>]
100
+ # GitHub teams to be added to CODEOWNERS in the directory in GitHub
101
+ # containing source code for the client libraries for this API.
102
+ # @!attribute [rw] doc_tag_prefix
103
+ # @return [::String]
104
+ # A prefix used in sample code when demarking regions to be included in
105
+ # documentation.
106
+ # @!attribute [rw] organization
107
+ # @return [::Google::Api::ClientLibraryOrganization]
108
+ # For whom the client library is being published.
109
+ # @!attribute [rw] library_settings
110
+ # @return [::Array<::Google::Api::ClientLibrarySettings>]
111
+ # Client library settings. If the same version string appears multiple
112
+ # times in this list, then the last one wins. Settings from earlier
113
+ # settings with the same version string are discarded.
114
+ class Publishing
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+ end
118
+
119
+ # Settings for Java client libraries.
120
+ # @!attribute [rw] library_package
121
+ # @return [::String]
122
+ # The package name to use in Java. Clobbers the java_package option
123
+ # set in the protobuf. This should be used **only** by APIs
124
+ # who have already set the language_settings.java.package_name" field
125
+ # in gapic.yaml. API teams should use the protobuf java_package option
126
+ # where possible.
127
+ #
128
+ # Example of a YAML configuration::
129
+ #
130
+ # publishing:
131
+ # java_settings:
132
+ # library_package: com.google.cloud.pubsub.v1
133
+ # @!attribute [rw] service_class_names
134
+ # @return [::Google::Protobuf::Map{::String => ::String}]
135
+ # Configure the Java class name to use instead of the service's for its
136
+ # corresponding generated GAPIC client. Keys are fully-qualified
137
+ # service names as they appear in the protobuf (including the full
138
+ # the language_settings.java.interface_names" field in gapic.yaml. API
139
+ # teams should otherwise use the service name as it appears in the
140
+ # protobuf.
141
+ #
142
+ # Example of a YAML configuration::
143
+ #
144
+ # publishing:
145
+ # java_settings:
146
+ # service_class_names:
147
+ # - google.pubsub.v1.Publisher: TopicAdmin
148
+ # - google.pubsub.v1.Subscriber: SubscriptionAdmin
149
+ # @!attribute [rw] common
150
+ # @return [::Google::Api::CommonLanguageSettings]
151
+ # Some settings.
152
+ class JavaSettings
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+
156
+ # @!attribute [rw] key
157
+ # @return [::String]
158
+ # @!attribute [rw] value
159
+ # @return [::String]
160
+ class ServiceClassNamesEntry
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+ end
165
+
166
+ # Settings for C++ client libraries.
167
+ # @!attribute [rw] common
168
+ # @return [::Google::Api::CommonLanguageSettings]
169
+ # Some settings.
170
+ class CppSettings
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
175
+ # Settings for Php client libraries.
176
+ # @!attribute [rw] common
177
+ # @return [::Google::Api::CommonLanguageSettings]
178
+ # Some settings.
179
+ class PhpSettings
180
+ include ::Google::Protobuf::MessageExts
181
+ extend ::Google::Protobuf::MessageExts::ClassMethods
182
+ end
183
+
184
+ # Settings for Python client libraries.
185
+ # @!attribute [rw] common
186
+ # @return [::Google::Api::CommonLanguageSettings]
187
+ # Some settings.
188
+ class PythonSettings
189
+ include ::Google::Protobuf::MessageExts
190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+
193
+ # Settings for Node client libraries.
194
+ # @!attribute [rw] common
195
+ # @return [::Google::Api::CommonLanguageSettings]
196
+ # Some settings.
197
+ class NodeSettings
198
+ include ::Google::Protobuf::MessageExts
199
+ extend ::Google::Protobuf::MessageExts::ClassMethods
200
+ end
201
+
202
+ # Settings for Dotnet client libraries.
203
+ # @!attribute [rw] common
204
+ # @return [::Google::Api::CommonLanguageSettings]
205
+ # Some settings.
206
+ class DotnetSettings
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Settings for Ruby client libraries.
212
+ # @!attribute [rw] common
213
+ # @return [::Google::Api::CommonLanguageSettings]
214
+ # Some settings.
215
+ class RubySettings
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
220
+ # Settings for Go client libraries.
221
+ # @!attribute [rw] common
222
+ # @return [::Google::Api::CommonLanguageSettings]
223
+ # Some settings.
224
+ class GoSettings
225
+ include ::Google::Protobuf::MessageExts
226
+ extend ::Google::Protobuf::MessageExts::ClassMethods
227
+ end
228
+
229
+ # Describes the generator configuration for a method.
230
+ # @!attribute [rw] selector
231
+ # @return [::String]
232
+ # The fully qualified name of the method, for which the options below apply.
233
+ # This is used to find the method to apply the options.
234
+ # @!attribute [rw] long_running
235
+ # @return [::Google::Api::MethodSettings::LongRunning]
236
+ # Describes settings to use for long-running operations when generating
237
+ # API methods for RPCs. Complements RPCs that use the annotations in
238
+ # google/longrunning/operations.proto.
239
+ #
240
+ # Example of a YAML configuration::
241
+ #
242
+ # publishing:
243
+ # method_behavior:
244
+ # - selector: CreateAdDomain
245
+ # long_running:
246
+ # initial_poll_delay:
247
+ # seconds: 60 # 1 minute
248
+ # poll_delay_multiplier: 1.5
249
+ # max_poll_delay:
250
+ # seconds: 360 # 6 minutes
251
+ # total_poll_timeout:
252
+ # seconds: 54000 # 90 minutes
253
+ class MethodSettings
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+
257
+ # Describes settings to use when generating API methods that use the
258
+ # long-running operation pattern.
259
+ # All default values below are from those used in the client library
260
+ # generators (e.g.
261
+ # [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
262
+ # @!attribute [rw] initial_poll_delay
263
+ # @return [::Google::Protobuf::Duration]
264
+ # Initial delay after which the first poll request will be made.
265
+ # Default value: 5 seconds.
266
+ # @!attribute [rw] poll_delay_multiplier
267
+ # @return [::Float]
268
+ # Multiplier to gradually increase delay between subsequent polls until it
269
+ # reaches max_poll_delay.
270
+ # Default value: 1.5.
271
+ # @!attribute [rw] max_poll_delay
272
+ # @return [::Google::Protobuf::Duration]
273
+ # Maximum time between two subsequent poll requests.
274
+ # Default value: 45 seconds.
275
+ # @!attribute [rw] total_poll_timeout
276
+ # @return [::Google::Protobuf::Duration]
277
+ # Total polling timeout.
278
+ # Default value: 5 minutes.
279
+ class LongRunning
280
+ include ::Google::Protobuf::MessageExts
281
+ extend ::Google::Protobuf::MessageExts::ClassMethods
282
+ end
283
+ end
284
+
285
+ # The organization for which the client libraries are being published.
286
+ # Affects the url where generated docs are published, etc.
287
+ module ClientLibraryOrganization
288
+ # Not useful.
289
+ CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
290
+
291
+ # Google Cloud Platform Org.
292
+ CLOUD = 1
293
+
294
+ # Ads (Advertising) Org.
295
+ ADS = 2
296
+
297
+ # Photos Org.
298
+ PHOTOS = 3
299
+
300
+ # Street View Org.
301
+ STREET_VIEW = 4
302
+ end
303
+
304
+ # To where should client libraries be published?
305
+ module ClientLibraryDestination
306
+ # Client libraries will neither be generated nor published to package
307
+ # managers.
308
+ CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
309
+
310
+ # Generate the client library in a repo under github.com/googleapis,
311
+ # but don't publish it to package managers.
312
+ GITHUB = 10
313
+
314
+ # Publish the library to package managers like nuget.org and npmjs.com.
315
+ PACKAGE_MANAGER = 20
316
+ end
317
+ end
318
+ end