diff --git a/google/cloud/recommender_v1/__init__.py b/google/cloud/recommender_v1/__init__.py index 1de5743..a848b91 100644 --- a/google/cloud/recommender_v1/__init__.py +++ b/google/cloud/recommender_v1/__init__.py @@ -26,8 +26,8 @@ if sys.version_info[:2] == (2, 7): message = ( - "A future version of this library will drop support for Python 2.7." - "More details about Python 2 support for Google Cloud Client Libraries" + "A future version of this library will drop support for Python 2.7. " + "More details about Python 2 support for Google Cloud Client Libraries " "can be found at https://cloud.google.com/python/docs/python2-sunset/" ) warnings.warn(message, DeprecationWarning) diff --git a/google/cloud/recommender_v1/gapic/recommender_client_config.py b/google/cloud/recommender_v1/gapic/recommender_client_config.py index 7526288..ef6ad0e 100644 --- a/google/cloud/recommender_v1/gapic/recommender_client_config.py +++ b/google/cloud/recommender_v1/gapic/recommender_client_config.py @@ -2,45 +2,64 @@ "interfaces": { "google.cloud.recommender.v1.Recommender": { "retry_codes": { - "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], - "non_idempotent": [], + "retry_policy_1_codes": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "no_retry_codes": [], + "no_retry_1_codes": [], }, "retry_params": { - "default": { + "retry_policy_1_params": { "initial_retry_delay_millis": 100, "retry_delay_multiplier": 1.3, "max_retry_delay_millis": 60000, - "initial_rpc_timeout_millis": 20000, + "initial_rpc_timeout_millis": 60000, "rpc_timeout_multiplier": 1.0, - "max_rpc_timeout_millis": 20000, - "total_timeout_millis": 600000, - } + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 60000, + }, + "no_retry_params": { + "initial_retry_delay_millis": 0, + "retry_delay_multiplier": 0.0, + "max_retry_delay_millis": 0, + "initial_rpc_timeout_millis": 0, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 0, + "total_timeout_millis": 0, + }, + "no_retry_1_params": { + "initial_retry_delay_millis": 0, + "retry_delay_multiplier": 0.0, + "max_retry_delay_millis": 0, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 60000, + }, }, "methods": { "ListRecommendations": { "timeout_millis": 60000, - "retry_codes_name": "idempotent", - "retry_params_name": "default", + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params", }, "GetRecommendation": { "timeout_millis": 60000, - "retry_codes_name": "idempotent", - "retry_params_name": "default", + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params", }, "MarkRecommendationClaimed": { "timeout_millis": 60000, - "retry_codes_name": "non_idempotent", - "retry_params_name": "default", + "retry_codes_name": "no_retry_1_codes", + "retry_params_name": "no_retry_1_params", }, "MarkRecommendationSucceeded": { "timeout_millis": 60000, - "retry_codes_name": "non_idempotent", - "retry_params_name": "default", + "retry_codes_name": "no_retry_1_codes", + "retry_params_name": "no_retry_1_params", }, "MarkRecommendationFailed": { "timeout_millis": 60000, - "retry_codes_name": "non_idempotent", - "retry_params_name": "default", + "retry_codes_name": "no_retry_1_codes", + "retry_params_name": "no_retry_1_params", }, }, } diff --git a/google/cloud/recommender_v1/proto/recommendation_pb2.py b/google/cloud/recommender_v1/proto/recommendation_pb2.py index df3c73b..5f61a53 100644 --- a/google/cloud/recommender_v1/proto/recommendation_pb2.py +++ b/google/cloud/recommender_v1/proto/recommendation_pb2.py @@ -16,7 +16,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # source: google/cloud/recommender_v1/proto/recommendation.proto - +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from google.protobuf import reflection as _reflection @@ -39,6 +39,7 @@ package="google.cloud.recommender.v1", syntax="proto3", serialized_options=b"\n\037com.google.cloud.recommender.v1P\001ZFgoogle.golang.org/genproto/googleapis/cloud/recommender/v1;recommender\242\002\004CREC\252\002\033Google.Cloud.Recommender.V1\352Al\n&recommender.googleapis.com/Recommender\022Bprojects/{project}/locations/{location}/recommenders/{recommender}", + create_key=_descriptor._internal_create_key, serialized_pb=b'\n6google/cloud/recommender_v1/proto/recommendation.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/type/money.proto"\xb8\x04\n\x0eRecommendation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x1b\n\x13recommender_subtype\x18\x0c \x01(\t\x12\x35\n\x11last_refresh_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12;\n\x0eprimary_impact\x18\x05 \x01(\x0b\x32#.google.cloud.recommender.v1.Impact\x12>\n\x11\x61\x64\x64itional_impact\x18\x06 \x03(\x0b\x32#.google.cloud.recommender.v1.Impact\x12\x43\n\x07\x63ontent\x18\x07 \x01(\x0b\x32\x32.google.cloud.recommender.v1.RecommendationContent\x12H\n\nstate_info\x18\n \x01(\x0b\x32\x34.google.cloud.recommender.v1.RecommendationStateInfo\x12\x0c\n\x04\x65tag\x18\x0b \x01(\t:\x94\x01\xea\x41\x90\x01\n)recommender.googleapis.com/Recommendation\x12\x63projects/{project}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}"^\n\x15RecommendationContent\x12\x45\n\x10operation_groups\x18\x02 \x03(\x0b\x32+.google.cloud.recommender.v1.OperationGroup"L\n\x0eOperationGroup\x12:\n\noperations\x18\x01 \x03(\x0b\x32&.google.cloud.recommender.v1.Operation"\xd7\x04\n\tOperation\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x15\n\rresource_type\x18\x02 \x01(\t\x12\x10\n\x08resource\x18\x03 \x01(\t\x12\x0c\n\x04path\x18\x04 \x01(\t\x12\x17\n\x0fsource_resource\x18\x05 \x01(\t\x12\x13\n\x0bsource_path\x18\x06 \x01(\t\x12\'\n\x05value\x18\x07 \x01(\x0b\x32\x16.google.protobuf.ValueH\x00\x12\x42\n\rvalue_matcher\x18\n \x01(\x0b\x32).google.cloud.recommender.v1.ValueMatcherH\x00\x12M\n\x0cpath_filters\x18\x08 \x03(\x0b\x32\x37.google.cloud.recommender.v1.Operation.PathFiltersEntry\x12Z\n\x13path_value_matchers\x18\x0b \x03(\x0b\x32=.google.cloud.recommender.v1.Operation.PathValueMatchersEntry\x1aJ\n\x10PathFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\x1a\x63\n\x16PathValueMatchersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x38\n\x05value\x18\x02 \x01(\x0b\x32).google.cloud.recommender.v1.ValueMatcher:\x02\x38\x01\x42\x0c\n\npath_value":\n\x0cValueMatcher\x12\x19\n\x0fmatches_pattern\x18\x01 \x01(\tH\x00\x42\x0f\n\rmatch_variant"_\n\x0e\x43ostProjection\x12 \n\x04\x63ost\x18\x01 \x01(\x0b\x32\x12.google.type.Money\x12+\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration"\x80\x02\n\x06Impact\x12>\n\x08\x63\x61tegory\x18\x01 \x01(\x0e\x32,.google.cloud.recommender.v1.Impact.Category\x12\x46\n\x0f\x63ost_projection\x18\x64 \x01(\x0b\x32+.google.cloud.recommender.v1.CostProjectionH\x00"`\n\x08\x43\x61tegory\x12\x18\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\x00\x12\x08\n\x04\x43OST\x10\x01\x12\x0c\n\x08SECURITY\x10\x02\x12\x0f\n\x0bPERFORMANCE\x10\x03\x12\x11\n\rMANAGEABILITY\x10\x04\x42\x0c\n\nprojection"\xde\x02\n\x17RecommendationStateInfo\x12I\n\x05state\x18\x01 \x01(\x0e\x32:.google.cloud.recommender.v1.RecommendationStateInfo.State\x12_\n\x0estate_metadata\x18\x02 \x03(\x0b\x32G.google.cloud.recommender.v1.RecommendationStateInfo.StateMetadataEntry\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"a\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0b\n\x07\x43LAIMED\x10\x06\x12\r\n\tSUCCEEDED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x12\r\n\tDISMISSED\x10\x05\x42\xff\x01\n\x1f\x63om.google.cloud.recommender.v1P\x01ZFgoogle.golang.org/genproto/googleapis/cloud/recommender/v1;recommender\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1\xea\x41l\n&recommender.googleapis.com/Recommender\x12\x42projects/{project}/locations/{location}/recommenders/{recommender}b\x06proto3', dependencies=[ google_dot_api_dot_resource__pb2.DESCRIPTOR, @@ -55,6 +56,7 @@ full_name="google.cloud.recommender.v1.Impact.Category", filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name="CATEGORY_UNSPECIFIED", @@ -62,18 +64,39 @@ number=0, serialized_options=None, type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="COST", index=1, number=1, serialized_options=None, type=None + name="COST", + index=1, + number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="SECURITY", index=2, number=2, serialized_options=None, type=None + name="SECURITY", + index=2, + number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="PERFORMANCE", index=3, number=3, serialized_options=None, type=None + name="PERFORMANCE", + index=3, + number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="MANAGEABILITY", index=4, number=4, serialized_options=None, type=None + name="MANAGEABILITY", + index=4, + number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), ], containing_type=None, @@ -88,6 +111,7 @@ full_name="google.cloud.recommender.v1.RecommendationStateInfo.State", filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name="STATE_UNSPECIFIED", @@ -95,21 +119,47 @@ number=0, serialized_options=None, type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="ACTIVE", index=1, number=1, serialized_options=None, type=None + name="ACTIVE", + index=1, + number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="CLAIMED", index=2, number=6, serialized_options=None, type=None + name="CLAIMED", + index=2, + number=6, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="SUCCEEDED", index=3, number=3, serialized_options=None, type=None + name="SUCCEEDED", + index=3, + number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="FAILED", index=4, number=4, serialized_options=None, type=None + name="FAILED", + index=4, + number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="DISMISSED", index=5, number=5, serialized_options=None, type=None + name="DISMISSED", + index=5, + number=5, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), ], containing_type=None, @@ -126,6 +176,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -144,6 +195,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="description", @@ -162,6 +214,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="recommender_subtype", @@ -180,6 +233,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="last_refresh_time", @@ -198,6 +252,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="primary_impact", @@ -216,6 +271,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="additional_impact", @@ -234,6 +290,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="content", @@ -252,6 +309,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_info", @@ -270,6 +328,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -288,6 +347,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -309,6 +369,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="operation_groups", @@ -327,6 +388,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -348,6 +410,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="operations", @@ -366,6 +429,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -387,6 +451,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -405,6 +470,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -423,6 +489,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -443,6 +510,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -461,6 +529,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -479,6 +548,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -499,6 +569,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="action", @@ -517,6 +588,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="resource_type", @@ -535,6 +607,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="resource", @@ -553,6 +626,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="path", @@ -571,6 +645,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="source_resource", @@ -589,6 +664,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="source_path", @@ -607,6 +683,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -625,6 +702,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value_matcher", @@ -643,6 +721,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="path_filters", @@ -661,6 +740,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="path_value_matchers", @@ -679,6 +759,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -694,6 +775,7 @@ full_name="google.cloud.recommender.v1.Operation.path_value", index=0, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[], ) ], @@ -708,6 +790,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="matches_pattern", @@ -726,6 +809,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -741,6 +825,7 @@ full_name="google.cloud.recommender.v1.ValueMatcher.match_variant", index=0, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[], ) ], @@ -755,6 +840,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="cost", @@ -773,6 +859,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="duration", @@ -791,6 +878,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -812,6 +900,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="category", @@ -830,6 +919,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="cost_projection", @@ -848,6 +938,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -863,6 +954,7 @@ full_name="google.cloud.recommender.v1.Impact.projection", index=0, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[], ) ], @@ -877,6 +969,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -895,6 +988,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -913,6 +1007,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -933,6 +1028,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="state", @@ -951,6 +1047,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -969,6 +1066,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -1065,6 +1163,7 @@ "__module__": "google.cloud.recommender_v1.proto.recommendation_pb2", "__doc__": """A recommendation along with a suggested action. E.g., a rightsizing recommendation for an underutilized VM, IAM role recommendations, etc + Attributes: name: Name of recommendation. @@ -1112,6 +1211,7 @@ "DESCRIPTOR": _RECOMMENDATIONCONTENT, "__module__": "google.cloud.recommender_v1.proto.recommendation_pb2", "__doc__": """Contains what resources are changing and how they are changing. + Attributes: operation_groups: Operations to one or more Google Cloud resources grouped in @@ -1130,6 +1230,7 @@ "DESCRIPTOR": _OPERATIONGROUP, "__module__": "google.cloud.recommender_v1.proto.recommendation_pb2", "__doc__": """Group of operations that need to be performed atomically. + Attributes: operations: List of operations across one or more resources that belong to @@ -1172,6 +1273,7 @@ being described. - Allows extension to custom operations not natively supported by RFC6902. See https://tools.ietf.org/html/rfc6902 for details on the original RFC. + Attributes: action: Type of this operation. Contains one of ‘and’, ‘remove’, @@ -1246,6 +1348,7 @@ "DESCRIPTOR": _VALUEMATCHER, "__module__": "google.cloud.recommender_v1.proto.recommendation_pb2", "__doc__": """Contains various matching options for values for a GCP resource field. + Attributes: matches_pattern: To be used for full regex matching. The regular expression is @@ -1266,7 +1369,7 @@ "__module__": "google.cloud.recommender_v1.proto.recommendation_pb2", "__doc__": """Contains metadata about how much money a recommendation can save or incur. - + Attributes: cost: An approximate projection on amount saved or amount incurred. @@ -1288,6 +1391,7 @@ "DESCRIPTOR": _IMPACT, "__module__": "google.cloud.recommender_v1.proto.recommendation_pb2", "__doc__": """Contains the impact a recommendation can have for a given category. + Attributes: category: Category that is being targeted. @@ -1317,6 +1421,7 @@ "DESCRIPTOR": _RECOMMENDATIONSTATEINFO, "__module__": "google.cloud.recommender_v1.proto.recommendation_pb2", "__doc__": """Information for state. Contains state and metadata. + Attributes: state: The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED. diff --git a/google/cloud/recommender_v1/proto/recommendation_pb2_grpc.py b/google/cloud/recommender_v1/proto/recommendation_pb2_grpc.py index b662812..8a93939 100644 --- a/google/cloud/recommender_v1/proto/recommendation_pb2_grpc.py +++ b/google/cloud/recommender_v1/proto/recommendation_pb2_grpc.py @@ -1,17 +1,3 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! - +"""Client and server classes corresponding to protobuf-defined services.""" import grpc diff --git a/google/cloud/recommender_v1/proto/recommender_service_pb2.py b/google/cloud/recommender_v1/proto/recommender_service_pb2.py index 703793a..547f8da 100644 --- a/google/cloud/recommender_v1/proto/recommender_service_pb2.py +++ b/google/cloud/recommender_v1/proto/recommender_service_pb2.py @@ -16,7 +16,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # source: google/cloud/recommender_v1/proto/recommender_service.proto - +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from google.protobuf import reflection as _reflection @@ -41,6 +41,7 @@ package="google.cloud.recommender.v1", syntax="proto3", serialized_options=b"\n\037com.google.cloud.recommender.v1B\020RecommenderProtoP\001ZFgoogle.golang.org/genproto/googleapis/cloud/recommender/v1;recommender\242\002\004CREC\252\002\033Google.Cloud.Recommender.V1", + create_key=_descriptor._internal_create_key, serialized_pb=b'\n;google/cloud/recommender_v1/proto/recommender_service.proto\x12\x1bgoogle.cloud.recommender.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x36google/cloud/recommender_v1/proto/recommendation.proto"\x9d\x01\n\x1aListRecommendationsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recommender.googleapis.com/Recommender\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\x0e\n\x06\x66ilter\x18\x05 \x01(\t"|\n\x1bListRecommendationsResponse\x12\x44\n\x0frecommendations\x18\x01 \x03(\x0b\x32+.google.cloud.recommender.v1.Recommendation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t"[\n\x18GetRecommendationRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation"\x96\x02\n MarkRecommendationClaimedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12h\n\x0estate_metadata\x18\x02 \x03(\x0b\x32P.google.cloud.recommender.v1.MarkRecommendationClaimedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"\x9a\x02\n"MarkRecommendationSucceededRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12j\n\x0estate_metadata\x18\x02 \x03(\x0b\x32R.google.cloud.recommender.v1.MarkRecommendationSucceededRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"\x94\x02\n\x1fMarkRecommendationFailedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12g\n\x0estate_metadata\x18\x02 \x03(\x0b\x32O.google.cloud.recommender.v1.MarkRecommendationFailedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x32\x9d\n\n\x0bRecommender\x12\xed\x01\n\x13ListRecommendations\x12\x37.google.cloud.recommender.v1.ListRecommendationsRequest\x1a\x38.google.cloud.recommender.v1.ListRecommendationsResponse"c\x82\xd3\xe4\x93\x02\x44\x12\x42/v1/{parent=projects/*/locations/*/recommenders/*}/recommendations\xda\x41\x06parent\xda\x41\rparent,filter\x12\xca\x01\n\x11GetRecommendation\x12\x35.google.cloud.recommender.v1.GetRecommendationRequest\x1a+.google.cloud.recommender.v1.Recommendation"Q\x82\xd3\xe4\x93\x02\x44\x12\x42/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}\xda\x41\x04name\x12\xfd\x01\n\x19MarkRecommendationClaimed\x12=.google.cloud.recommender.v1.MarkRecommendationClaimedRequest\x1a+.google.cloud.recommender.v1.Recommendation"t\x82\xd3\xe4\x93\x02S"N/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*\xda\x41\x18name,state_metadata,etag\x12\x83\x02\n\x1bMarkRecommendationSucceeded\x12?.google.cloud.recommender.v1.MarkRecommendationSucceededRequest\x1a+.google.cloud.recommender.v1.Recommendation"v\x82\xd3\xe4\x93\x02U"P/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*\xda\x41\x18name,state_metadata,etag\x12\xfa\x01\n\x18MarkRecommendationFailed\x12<.google.cloud.recommender.v1.MarkRecommendationFailedRequest\x1a+.google.cloud.recommender.v1.Recommendation"s\x82\xd3\xe4\x93\x02R"M/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*\xda\x41\x18name,state_metadata,etag\x1aN\xca\x41\x1arecommender.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xa2\x01\n\x1f\x63om.google.cloud.recommender.v1B\x10RecommenderProtoP\x01ZFgoogle.golang.org/genproto/googleapis/cloud/recommender/v1;recommender\xa2\x02\x04\x43REC\xaa\x02\x1bGoogle.Cloud.Recommender.V1b\x06proto3', dependencies=[ google_dot_api_dot_annotations__pb2.DESCRIPTOR, @@ -58,6 +59,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="parent", @@ -76,6 +78,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A(\n&recommender.googleapis.com/Recommender", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="page_size", @@ -94,6 +97,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="page_token", @@ -112,6 +116,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="filter", @@ -130,6 +135,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -151,6 +157,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="recommendations", @@ -169,6 +176,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="next_page_token", @@ -187,6 +195,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -208,6 +217,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -226,6 +236,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -247,6 +258,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -265,6 +277,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -283,6 +296,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -303,6 +317,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -321,6 +336,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -339,6 +355,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -357,6 +374,7 @@ extension_scope=None, serialized_options=b"\340A\002", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -378,6 +396,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -396,6 +415,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -414,6 +434,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -434,6 +455,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -452,6 +474,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -470,6 +493,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -488,6 +512,7 @@ extension_scope=None, serialized_options=b"\340A\002", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -509,6 +534,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -527,6 +553,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -545,6 +572,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -565,6 +593,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -583,6 +612,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -601,6 +631,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -619,6 +650,7 @@ extension_scope=None, serialized_options=b"\340A\002", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -681,6 +713,7 @@ "DESCRIPTOR": _LISTRECOMMENDATIONSREQUEST, "__module__": "google.cloud.recommender_v1.proto.recommender_service_pb2", "__doc__": """Request for the ``ListRecommendations`` method. + Attributes: parent: Required. The container resource on which to execute the @@ -715,6 +748,7 @@ "DESCRIPTOR": _LISTRECOMMENDATIONSRESPONSE, "__module__": "google.cloud.recommender_v1.proto.recommender_service_pb2", "__doc__": """Response to the ``ListRecommendations`` method. + Attributes: recommendations: The set of recommendations for the ``parent`` resource. @@ -734,9 +768,11 @@ "DESCRIPTOR": _GETRECOMMENDATIONREQUEST, "__module__": "google.cloud.recommender_v1.proto.recommender_service_pb2", "__doc__": """Request to the ``GetRecommendation`` method. + Attributes: name: - Required. Name of the recommendation. + Required. Name of the recommendation. .. [1] a-z0-9 .. + [2] a-z0-9 .. [3] a-z0-9 """, # @@protoc_insertion_point(class_scope:google.cloud.recommender.v1.GetRecommendationRequest) }, @@ -759,13 +795,14 @@ "DESCRIPTOR": _MARKRECOMMENDATIONCLAIMEDREQUEST, "__module__": "google.cloud.recommender_v1.proto.recommender_service_pb2", "__doc__": """Request for the ``MarkRecommendationClaimed`` Method. + Attributes: name: Required. Name of the recommendation. state_metadata: State properties to include with this state. Overwrites any existing ``state_metadata``. Keys must match the regex ``/ - [1]_[a-z0-9_.-]{0,62}/``. Values must match the regex + [2]_[a-z0-9_.-]{0,62}/``. Values must match the regex ``/^[a-zA-Z0-9_./-]{0,255}/``. etag: Required. Fingerprint of the Recommendation. Provides @@ -793,6 +830,7 @@ "DESCRIPTOR": _MARKRECOMMENDATIONSUCCEEDEDREQUEST, "__module__": "google.cloud.recommender_v1.proto.recommender_service_pb2", "__doc__": """Request for the ``MarkRecommendationSucceeded`` Method. + Attributes: name: Required. Name of the recommendation. @@ -803,8 +841,7 @@ ``/^[a-zA-Z0-9_./-]{0,255}/``. etag: Required. Fingerprint of the Recommendation. Provides - optimistic locking. .. [1] a-z0-9 .. [2] a-z0-9 .. - [3] a-z0-9 + optimistic locking. """, # @@protoc_insertion_point(class_scope:google.cloud.recommender.v1.MarkRecommendationSucceededRequest) }, @@ -828,13 +865,14 @@ "DESCRIPTOR": _MARKRECOMMENDATIONFAILEDREQUEST, "__module__": "google.cloud.recommender_v1.proto.recommender_service_pb2", "__doc__": """Request for the ``MarkRecommendationFailed`` Method. + Attributes: name: Required. Name of the recommendation. state_metadata: State properties to include with this state. Overwrites any existing ``state_metadata``. Keys must match the regex ``/ - [2]_[a-z0-9_.-]{0,62}/``. Values must match the regex + [1]_[a-z0-9_.-]{0,62}/``. Values must match the regex ``/^[a-zA-Z0-9_./-]{0,255}/``. etag: Required. Fingerprint of the Recommendation. Provides @@ -868,6 +906,7 @@ file=DESCRIPTOR, index=0, serialized_options=b"\312A\032recommender.googleapis.com\322A.https://www.googleapis.com/auth/cloud-platform", + create_key=_descriptor._internal_create_key, serialized_start=1488, serialized_end=2797, methods=[ @@ -879,6 +918,7 @@ input_type=_LISTRECOMMENDATIONSREQUEST, output_type=_LISTRECOMMENDATIONSRESPONSE, serialized_options=b"\202\323\344\223\002D\022B/v1/{parent=projects/*/locations/*/recommenders/*}/recommendations\332A\006parent\332A\rparent,filter", + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="GetRecommendation", @@ -888,6 +928,7 @@ input_type=_GETRECOMMENDATIONREQUEST, output_type=google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b"\202\323\344\223\002D\022B/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}\332A\004name", + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="MarkRecommendationClaimed", @@ -897,6 +938,7 @@ input_type=_MARKRECOMMENDATIONCLAIMEDREQUEST, output_type=google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b'\202\323\344\223\002S"N/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\001*\332A\030name,state_metadata,etag', + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="MarkRecommendationSucceeded", @@ -906,6 +948,7 @@ input_type=_MARKRECOMMENDATIONSUCCEEDEDREQUEST, output_type=google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b'\202\323\344\223\002U"P/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\001*\332A\030name,state_metadata,etag', + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="MarkRecommendationFailed", @@ -915,6 +958,7 @@ input_type=_MARKRECOMMENDATIONFAILEDREQUEST, output_type=google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b'\202\323\344\223\002R"M/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed:\001*\332A\030name,state_metadata,etag', + create_key=_descriptor._internal_create_key, ), ], ) diff --git a/google/cloud/recommender_v1/proto/recommender_service_pb2_grpc.py b/google/cloud/recommender_v1/proto/recommender_service_pb2_grpc.py index 486a25a..76f8def 100644 --- a/google/cloud/recommender_v1/proto/recommender_service_pb2_grpc.py +++ b/google/cloud/recommender_v1/proto/recommender_service_pb2_grpc.py @@ -1,19 +1,5 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! - +"""Client and server classes corresponding to protobuf-defined services.""" import grpc from google.cloud.recommender_v1.proto import ( @@ -26,17 +12,17 @@ class RecommenderStub(object): """Provides recommendations for cloud customers for various categories like - performance optimization, cost savings, reliability, feature discovery, etc. - These recommendations are generated automatically based on analysis of user - resources, configuration and monitoring metrics. - """ + performance optimization, cost savings, reliability, feature discovery, etc. + These recommendations are generated automatically based on analysis of user + resources, configuration and monitoring metrics. + """ def __init__(self, channel): """Constructor. - Args: - channel: A grpc.Channel. - """ + Args: + channel: A grpc.Channel. + """ self.ListRecommendations = channel.unary_unary( "/google.cloud.recommender.v1.Recommender/ListRecommendations", request_serializer=google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommender__service__pb2.ListRecommendationsRequest.SerializeToString, @@ -66,71 +52,71 @@ def __init__(self, channel): class RecommenderServicer(object): """Provides recommendations for cloud customers for various categories like - performance optimization, cost savings, reliability, feature discovery, etc. - These recommendations are generated automatically based on analysis of user - resources, configuration and monitoring metrics. - """ + performance optimization, cost savings, reliability, feature discovery, etc. + These recommendations are generated automatically based on analysis of user + resources, configuration and monitoring metrics. + """ def ListRecommendations(self, request, context): """Lists recommendations for a Cloud project. Requires the recommender.*.list - IAM permission for the specified recommender. - """ + IAM permission for the specified recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def GetRecommendation(self, request, context): """Gets the requested recommendation. Requires the recommender.*.get - IAM permission for the specified recommender. - """ + IAM permission for the specified recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def MarkRecommendationClaimed(self, request, context): """Mark the Recommendation State as Claimed. Users can use this method to - indicate to the Recommender API that they are starting to apply the - recommendation themselves. This stops the recommendation content from being - updated. + indicate to the Recommender API that they are starting to apply the + recommendation themselves. This stops the recommendation content from being + updated. - MarkRecommendationClaimed can be applied to recommendations in CLAIMED, - SUCCEEDED, FAILED, or ACTIVE state. + MarkRecommendationClaimed can be applied to recommendations in CLAIMED, + SUCCEEDED, FAILED, or ACTIVE state. - Requires the recommender.*.update IAM permission for the specified - recommender. - """ + Requires the recommender.*.update IAM permission for the specified + recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def MarkRecommendationSucceeded(self, request, context): """Mark the Recommendation State as Succeeded. Users can use this method to - indicate to the Recommender API that they have applied the recommendation - themselves, and the operation was successful. This stops the recommendation - content from being updated. + indicate to the Recommender API that they have applied the recommendation + themselves, and the operation was successful. This stops the recommendation + content from being updated. - MarkRecommendationSucceeded can be applied to recommendations in ACTIVE, - CLAIMED, SUCCEEDED, or FAILED state. + MarkRecommendationSucceeded can be applied to recommendations in ACTIVE, + CLAIMED, SUCCEEDED, or FAILED state. - Requires the recommender.*.update IAM permission for the specified - recommender. - """ + Requires the recommender.*.update IAM permission for the specified + recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def MarkRecommendationFailed(self, request, context): """Mark the Recommendation State as Failed. Users can use this method to - indicate to the Recommender API that they have applied the recommendation - themselves, and the operation failed. This stops the recommendation content - from being updated. + indicate to the Recommender API that they have applied the recommendation + themselves, and the operation failed. This stops the recommendation content + from being updated. - MarkRecommendationFailed can be applied to recommendations in ACTIVE, - CLAIMED, SUCCEEDED, or FAILED state. + MarkRecommendationFailed can be applied to recommendations in ACTIVE, + CLAIMED, SUCCEEDED, or FAILED state. - Requires the recommender.*.update IAM permission for the specified - recommender. - """ + Requires the recommender.*.update IAM permission for the specified + recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") @@ -168,3 +154,147 @@ def add_RecommenderServicer_to_server(servicer, server): "google.cloud.recommender.v1.Recommender", rpc_method_handlers ) server.add_generic_rpc_handlers((generic_handler,)) + + +# This class is part of an EXPERIMENTAL API. +class Recommender(object): + """Provides recommendations for cloud customers for various categories like + performance optimization, cost savings, reliability, feature discovery, etc. + These recommendations are generated automatically based on analysis of user + resources, configuration and monitoring metrics. + """ + + @staticmethod + def ListRecommendations( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1.Recommender/ListRecommendations", + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommender__service__pb2.ListRecommendationsRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommender__service__pb2.ListRecommendationsResponse.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def GetRecommendation( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1.Recommender/GetRecommendation", + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommender__service__pb2.GetRecommendationRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def MarkRecommendationClaimed( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1.Recommender/MarkRecommendationClaimed", + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommender__service__pb2.MarkRecommendationClaimedRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def MarkRecommendationSucceeded( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1.Recommender/MarkRecommendationSucceeded", + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommender__service__pb2.MarkRecommendationSucceededRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def MarkRecommendationFailed( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1.Recommender/MarkRecommendationFailed", + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommender__service__pb2.MarkRecommendationFailedRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) diff --git a/google/cloud/recommender_v1beta1/__init__.py b/google/cloud/recommender_v1beta1/__init__.py index 51dbe34..9de6826 100644 --- a/google/cloud/recommender_v1beta1/__init__.py +++ b/google/cloud/recommender_v1beta1/__init__.py @@ -26,8 +26,8 @@ if sys.version_info[:2] == (2, 7): message = ( - "A future version of this library will drop support for Python 2.7." - "More details about Python 2 support for Google Cloud Client Libraries" + "A future version of this library will drop support for Python 2.7. " + "More details about Python 2 support for Google Cloud Client Libraries " "can be found at https://cloud.google.com/python/docs/python2-sunset/" ) warnings.warn(message, DeprecationWarning) diff --git a/google/cloud/recommender_v1beta1/gapic/recommender_client_config.py b/google/cloud/recommender_v1beta1/gapic/recommender_client_config.py index 011d9eb..fa55959 100644 --- a/google/cloud/recommender_v1beta1/gapic/recommender_client_config.py +++ b/google/cloud/recommender_v1beta1/gapic/recommender_client_config.py @@ -2,60 +2,79 @@ "interfaces": { "google.cloud.recommender.v1beta1.Recommender": { "retry_codes": { - "idempotent": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], - "non_idempotent": [], + "retry_policy_1_codes": ["DEADLINE_EXCEEDED", "UNAVAILABLE"], + "no_retry_codes": [], + "no_retry_1_codes": [], }, "retry_params": { - "default": { + "retry_policy_1_params": { "initial_retry_delay_millis": 100, "retry_delay_multiplier": 1.3, "max_retry_delay_millis": 60000, - "initial_rpc_timeout_millis": 20000, + "initial_rpc_timeout_millis": 60000, "rpc_timeout_multiplier": 1.0, - "max_rpc_timeout_millis": 20000, - "total_timeout_millis": 600000, - } + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 60000, + }, + "no_retry_params": { + "initial_retry_delay_millis": 0, + "retry_delay_multiplier": 0.0, + "max_retry_delay_millis": 0, + "initial_rpc_timeout_millis": 0, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 0, + "total_timeout_millis": 0, + }, + "no_retry_1_params": { + "initial_retry_delay_millis": 0, + "retry_delay_multiplier": 0.0, + "max_retry_delay_millis": 0, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1.0, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 60000, + }, }, "methods": { "ListInsights": { "timeout_millis": 60000, - "retry_codes_name": "idempotent", - "retry_params_name": "default", + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params", }, "GetInsight": { "timeout_millis": 60000, - "retry_codes_name": "idempotent", - "retry_params_name": "default", + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params", }, "MarkInsightAccepted": { "timeout_millis": 60000, - "retry_codes_name": "non_idempotent", - "retry_params_name": "default", + "retry_codes_name": "no_retry_1_codes", + "retry_params_name": "no_retry_1_params", }, "ListRecommendations": { "timeout_millis": 60000, - "retry_codes_name": "idempotent", - "retry_params_name": "default", + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params", }, "GetRecommendation": { "timeout_millis": 60000, - "retry_codes_name": "idempotent", - "retry_params_name": "default", + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params", }, "MarkRecommendationClaimed": { "timeout_millis": 60000, - "retry_codes_name": "non_idempotent", - "retry_params_name": "default", + "retry_codes_name": "no_retry_1_codes", + "retry_params_name": "no_retry_1_params", }, "MarkRecommendationSucceeded": { "timeout_millis": 60000, - "retry_codes_name": "non_idempotent", - "retry_params_name": "default", + "retry_codes_name": "no_retry_1_codes", + "retry_params_name": "no_retry_1_params", }, "MarkRecommendationFailed": { "timeout_millis": 60000, - "retry_codes_name": "non_idempotent", - "retry_params_name": "default", + "retry_codes_name": "no_retry_1_codes", + "retry_params_name": "no_retry_1_params", }, }, } diff --git a/google/cloud/recommender_v1beta1/proto/insight_pb2.py b/google/cloud/recommender_v1beta1/proto/insight_pb2.py index cf86331..f4a08e9 100644 --- a/google/cloud/recommender_v1beta1/proto/insight_pb2.py +++ b/google/cloud/recommender_v1beta1/proto/insight_pb2.py @@ -16,7 +16,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # source: google/cloud/recommender_v1beta1/proto/insight.proto - +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from google.protobuf import reflection as _reflection @@ -38,6 +38,7 @@ package="google.cloud.recommender.v1beta1", syntax="proto3", serialized_options=b"\n$com.google.cloud.recommender.v1beta1P\001ZKgoogle.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender\242\002\004CREC\252\002 Google.Cloud.Recommender.V1Beta1\352Am\n&recommender.googleapis.com/InsightType\022Cprojects/{project}/locations/{location}/insightTypes/{insight_type}", + create_key=_descriptor._internal_create_key, serialized_pb=b'\n4google/cloud/recommender_v1beta1/proto/insight.proto\x12 google.cloud.recommender.v1beta1\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto"\x90\x06\n\x07Insight\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x18\n\x10target_resources\x18\t \x03(\t\x12\x17\n\x0finsight_subtype\x18\n \x01(\t\x12(\n\x07\x63ontent\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x35\n\x11last_refresh_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x12observation_period\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x46\n\nstate_info\x18\x06 \x01(\x0b\x32\x32.google.cloud.recommender.v1beta1.InsightStateInfo\x12\x44\n\x08\x63\x61tegory\x18\x07 \x01(\x0e\x32\x32.google.cloud.recommender.v1beta1.Insight.Category\x12\x0c\n\x04\x65tag\x18\x0b \x01(\t\x12\x65\n\x1a\x61ssociated_recommendations\x18\x08 \x03(\x0b\x32\x41.google.cloud.recommender.v1beta1.Insight.RecommendationReference\x1a\x31\n\x17RecommendationReference\x12\x16\n\x0erecommendation\x18\x01 \x01(\t"`\n\x08\x43\x61tegory\x12\x18\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\x00\x12\x08\n\x04\x43OST\x10\x01\x12\x0c\n\x08SECURITY\x10\x02\x12\x0f\n\x0bPERFORMANCE\x10\x03\x12\x11\n\rMANAGEABILITY\x10\x04:\x7f\xea\x41|\n"recommender.googleapis.com/Insight\x12Vprojects/{project}/locations/{location}/insightTypes/{insight_type}/insights/{insight}"\xb9\x02\n\x10InsightStateInfo\x12G\n\x05state\x18\x01 \x01(\x0e\x32\x38.google.cloud.recommender.v1beta1.InsightStateInfo.State\x12]\n\x0estate_metadata\x18\x02 \x03(\x0b\x32\x45.google.cloud.recommender.v1beta1.InsightStateInfo.StateMetadataEntry\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"G\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0c\n\x08\x41\x43\x43\x45PTED\x10\x02\x12\r\n\tDISMISSED\x10\x03\x42\x8f\x02\n$com.google.cloud.recommender.v1beta1P\x01ZKgoogle.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender\xa2\x02\x04\x43REC\xaa\x02 Google.Cloud.Recommender.V1Beta1\xea\x41m\n&recommender.googleapis.com/InsightType\x12\x43projects/{project}/locations/{location}/insightTypes/{insight_type}b\x06proto3', dependencies=[ google_dot_api_dot_resource__pb2.DESCRIPTOR, @@ -53,6 +54,7 @@ full_name="google.cloud.recommender.v1beta1.Insight.Category", filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name="CATEGORY_UNSPECIFIED", @@ -60,18 +62,39 @@ number=0, serialized_options=None, type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="COST", index=1, number=1, serialized_options=None, type=None + name="COST", + index=1, + number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="SECURITY", index=2, number=2, serialized_options=None, type=None + name="SECURITY", + index=2, + number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="PERFORMANCE", index=3, number=3, serialized_options=None, type=None + name="PERFORMANCE", + index=3, + number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="MANAGEABILITY", index=4, number=4, serialized_options=None, type=None + name="MANAGEABILITY", + index=4, + number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), ], containing_type=None, @@ -86,6 +109,7 @@ full_name="google.cloud.recommender.v1beta1.InsightStateInfo.State", filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name="STATE_UNSPECIFIED", @@ -93,15 +117,31 @@ number=0, serialized_options=None, type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="ACTIVE", index=1, number=1, serialized_options=None, type=None + name="ACTIVE", + index=1, + number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="ACCEPTED", index=2, number=2, serialized_options=None, type=None + name="ACCEPTED", + index=2, + number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="DISMISSED", index=3, number=3, serialized_options=None, type=None + name="DISMISSED", + index=3, + number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), ], containing_type=None, @@ -118,6 +158,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="recommendation", @@ -136,6 +177,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -156,6 +198,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -174,6 +217,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="description", @@ -192,6 +236,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="target_resources", @@ -210,6 +255,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="insight_subtype", @@ -228,6 +274,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="content", @@ -246,6 +293,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="last_refresh_time", @@ -264,6 +312,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="observation_period", @@ -282,6 +331,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_info", @@ -300,6 +350,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="category", @@ -318,6 +369,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -336,6 +388,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="associated_recommendations", @@ -354,6 +407,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -375,6 +429,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -393,6 +448,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -411,6 +467,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -431,6 +488,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="state", @@ -449,6 +507,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -467,6 +526,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -518,6 +578,7 @@ "DESCRIPTOR": _INSIGHT_RECOMMENDATIONREFERENCE, "__module__": "google.cloud.recommender_v1beta1.proto.insight_pb2", "__doc__": """Reference to an associated recommendation. + Attributes: recommendation: Recommendation resource name, e.g. projects/[PROJECT_NUMBER]/l @@ -531,7 +592,7 @@ "__module__": "google.cloud.recommender_v1beta1.proto.insight_pb2", "__doc__": """An insight along with the information used to derive the insight. The insight may have associated recomendations as well. - + Attributes: name: Name of the insight. @@ -584,6 +645,7 @@ "DESCRIPTOR": _INSIGHTSTATEINFO, "__module__": "google.cloud.recommender_v1beta1.proto.insight_pb2", "__doc__": """Information related to insight state. + Attributes: state: Insight state. diff --git a/google/cloud/recommender_v1beta1/proto/insight_pb2_grpc.py b/google/cloud/recommender_v1beta1/proto/insight_pb2_grpc.py index b662812..8a93939 100644 --- a/google/cloud/recommender_v1beta1/proto/insight_pb2_grpc.py +++ b/google/cloud/recommender_v1beta1/proto/insight_pb2_grpc.py @@ -1,17 +1,3 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! - +"""Client and server classes corresponding to protobuf-defined services.""" import grpc diff --git a/google/cloud/recommender_v1beta1/proto/recommendation_pb2.py b/google/cloud/recommender_v1beta1/proto/recommendation_pb2.py index 185abd6..c77563c 100644 --- a/google/cloud/recommender_v1beta1/proto/recommendation_pb2.py +++ b/google/cloud/recommender_v1beta1/proto/recommendation_pb2.py @@ -16,7 +16,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # source: google/cloud/recommender_v1beta1/proto/recommendation.proto - +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from google.protobuf import reflection as _reflection @@ -39,6 +39,7 @@ package="google.cloud.recommender.v1beta1", syntax="proto3", serialized_options=b"\n$com.google.cloud.recommender.v1beta1P\001ZKgoogle.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender\242\002\004CREC\252\002 Google.Cloud.Recommender.V1Beta1\352Al\n&recommender.googleapis.com/Recommender\022Bprojects/{project}/locations/{location}/recommenders/{recommender}", + create_key=_descriptor._internal_create_key, serialized_pb=b'\n;google/cloud/recommender_v1beta1/proto/recommendation.proto\x12 google.cloud.recommender.v1beta1\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/type/money.proto"\xd1\x05\n\x0eRecommendation\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x1b\n\x13recommender_subtype\x18\x0c \x01(\t\x12\x35\n\x11last_refresh_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12@\n\x0eprimary_impact\x18\x05 \x01(\x0b\x32(.google.cloud.recommender.v1beta1.Impact\x12\x43\n\x11\x61\x64\x64itional_impact\x18\x06 \x03(\x0b\x32(.google.cloud.recommender.v1beta1.Impact\x12H\n\x07\x63ontent\x18\x07 \x01(\x0b\x32\x37.google.cloud.recommender.v1beta1.RecommendationContent\x12M\n\nstate_info\x18\n \x01(\x0b\x32\x39.google.cloud.recommender.v1beta1.RecommendationStateInfo\x12\x0c\n\x04\x65tag\x18\x0b \x01(\t\x12^\n\x13\x61ssociated_insights\x18\x0e \x03(\x0b\x32\x41.google.cloud.recommender.v1beta1.Recommendation.InsightReference\x1a#\n\x10InsightReference\x12\x0f\n\x07insight\x18\x01 \x01(\t:\x94\x01\xea\x41\x90\x01\n)recommender.googleapis.com/Recommendation\x12\x63projects/{project}/locations/{location}/recommenders/{recommender}/recommendations/{recommendation}"c\n\x15RecommendationContent\x12J\n\x10operation_groups\x18\x02 \x03(\x0b\x32\x30.google.cloud.recommender.v1beta1.OperationGroup"Q\n\x0eOperationGroup\x12?\n\noperations\x18\x01 \x03(\x0b\x32+.google.cloud.recommender.v1beta1.Operation"\xeb\x04\n\tOperation\x12\x0e\n\x06\x61\x63tion\x18\x01 \x01(\t\x12\x15\n\rresource_type\x18\x02 \x01(\t\x12\x10\n\x08resource\x18\x03 \x01(\t\x12\x0c\n\x04path\x18\x04 \x01(\t\x12\x17\n\x0fsource_resource\x18\x05 \x01(\t\x12\x13\n\x0bsource_path\x18\x06 \x01(\t\x12\'\n\x05value\x18\x07 \x01(\x0b\x32\x16.google.protobuf.ValueH\x00\x12G\n\rvalue_matcher\x18\n \x01(\x0b\x32..google.cloud.recommender.v1beta1.ValueMatcherH\x00\x12R\n\x0cpath_filters\x18\x08 \x03(\x0b\x32<.google.cloud.recommender.v1beta1.Operation.PathFiltersEntry\x12_\n\x13path_value_matchers\x18\x0b \x03(\x0b\x32\x42.google.cloud.recommender.v1beta1.Operation.PathValueMatchersEntry\x1aJ\n\x10PathFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.google.protobuf.Value:\x02\x38\x01\x1ah\n\x16PathValueMatchersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12=\n\x05value\x18\x02 \x01(\x0b\x32..google.cloud.recommender.v1beta1.ValueMatcher:\x02\x38\x01\x42\x0c\n\npath_value":\n\x0cValueMatcher\x12\x19\n\x0fmatches_pattern\x18\x01 \x01(\tH\x00\x42\x0f\n\rmatch_variant"_\n\x0e\x43ostProjection\x12 \n\x04\x63ost\x18\x01 \x01(\x0b\x32\x12.google.type.Money\x12+\n\x08\x64uration\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration"\x8a\x02\n\x06Impact\x12\x43\n\x08\x63\x61tegory\x18\x01 \x01(\x0e\x32\x31.google.cloud.recommender.v1beta1.Impact.Category\x12K\n\x0f\x63ost_projection\x18\x64 \x01(\x0b\x32\x30.google.cloud.recommender.v1beta1.CostProjectionH\x00"`\n\x08\x43\x61tegory\x12\x18\n\x14\x43\x41TEGORY_UNSPECIFIED\x10\x00\x12\x08\n\x04\x43OST\x10\x01\x12\x0c\n\x08SECURITY\x10\x02\x12\x0f\n\x0bPERFORMANCE\x10\x03\x12\x11\n\rMANAGEABILITY\x10\x04\x42\x0c\n\nprojection"\xe8\x02\n\x17RecommendationStateInfo\x12N\n\x05state\x18\x01 \x01(\x0e\x32?.google.cloud.recommender.v1beta1.RecommendationStateInfo.State\x12\x64\n\x0estate_metadata\x18\x02 \x03(\x0b\x32L.google.cloud.recommender.v1beta1.RecommendationStateInfo.StateMetadataEntry\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"a\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0b\n\x07\x43LAIMED\x10\x06\x12\r\n\tSUCCEEDED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x12\r\n\tDISMISSED\x10\x05\x42\x8e\x02\n$com.google.cloud.recommender.v1beta1P\x01ZKgoogle.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender\xa2\x02\x04\x43REC\xaa\x02 Google.Cloud.Recommender.V1Beta1\xea\x41l\n&recommender.googleapis.com/Recommender\x12\x42projects/{project}/locations/{location}/recommenders/{recommender}b\x06proto3', dependencies=[ google_dot_api_dot_resource__pb2.DESCRIPTOR, @@ -55,6 +56,7 @@ full_name="google.cloud.recommender.v1beta1.Impact.Category", filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name="CATEGORY_UNSPECIFIED", @@ -62,18 +64,39 @@ number=0, serialized_options=None, type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="COST", index=1, number=1, serialized_options=None, type=None + name="COST", + index=1, + number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="SECURITY", index=2, number=2, serialized_options=None, type=None + name="SECURITY", + index=2, + number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="PERFORMANCE", index=3, number=3, serialized_options=None, type=None + name="PERFORMANCE", + index=3, + number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="MANAGEABILITY", index=4, number=4, serialized_options=None, type=None + name="MANAGEABILITY", + index=4, + number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), ], containing_type=None, @@ -88,6 +111,7 @@ full_name="google.cloud.recommender.v1beta1.RecommendationStateInfo.State", filename=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( name="STATE_UNSPECIFIED", @@ -95,21 +119,47 @@ number=0, serialized_options=None, type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="ACTIVE", index=1, number=1, serialized_options=None, type=None + name="ACTIVE", + index=1, + number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="CLAIMED", index=2, number=6, serialized_options=None, type=None + name="CLAIMED", + index=2, + number=6, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="SUCCEEDED", index=3, number=3, serialized_options=None, type=None + name="SUCCEEDED", + index=3, + number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="FAILED", index=4, number=4, serialized_options=None, type=None + name="FAILED", + index=4, + number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), _descriptor.EnumValueDescriptor( - name="DISMISSED", index=5, number=5, serialized_options=None, type=None + name="DISMISSED", + index=5, + number=5, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key, ), ], containing_type=None, @@ -126,6 +176,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="insight", @@ -144,6 +195,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -164,6 +216,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -182,6 +235,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="description", @@ -200,6 +254,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="recommender_subtype", @@ -218,6 +273,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="last_refresh_time", @@ -236,6 +292,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="primary_impact", @@ -254,6 +311,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="additional_impact", @@ -272,6 +330,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="content", @@ -290,6 +349,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_info", @@ -308,6 +368,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -326,6 +387,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="associated_insights", @@ -344,6 +406,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -365,6 +428,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="operation_groups", @@ -383,6 +447,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -404,6 +469,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="operations", @@ -422,6 +488,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -443,6 +510,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -461,6 +529,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -479,6 +548,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -499,6 +569,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -517,6 +588,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -535,6 +607,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -555,6 +628,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="action", @@ -573,6 +647,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="resource_type", @@ -591,6 +666,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="resource", @@ -609,6 +685,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="path", @@ -627,6 +704,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="source_resource", @@ -645,6 +723,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="source_path", @@ -663,6 +742,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -681,6 +761,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value_matcher", @@ -699,6 +780,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="path_filters", @@ -717,6 +799,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="path_value_matchers", @@ -735,6 +818,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -750,6 +834,7 @@ full_name="google.cloud.recommender.v1beta1.Operation.path_value", index=0, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[], ) ], @@ -764,6 +849,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="matches_pattern", @@ -782,6 +868,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -797,6 +884,7 @@ full_name="google.cloud.recommender.v1beta1.ValueMatcher.match_variant", index=0, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[], ) ], @@ -811,6 +899,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="cost", @@ -829,6 +918,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="duration", @@ -847,6 +937,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -868,6 +959,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="category", @@ -886,6 +978,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="cost_projection", @@ -904,6 +997,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -919,6 +1013,7 @@ full_name="google.cloud.recommender.v1beta1.Impact.projection", index=0, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[], ) ], @@ -933,6 +1028,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -951,6 +1047,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -969,6 +1066,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -989,6 +1087,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="state", @@ -1007,6 +1106,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -1025,6 +1125,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -1128,6 +1229,7 @@ "DESCRIPTOR": _RECOMMENDATION_INSIGHTREFERENCE, "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """Reference to an associated insight. + Attributes: insight: Insight resource name, e.g. ``projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]`` @@ -1139,6 +1241,7 @@ "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """A recommendation along with a suggested action. E.g., a rightsizing recommendation for an underutilized VM, IAM role recommendations, etc + Attributes: name: Name of recommendation. @@ -1189,6 +1292,7 @@ "DESCRIPTOR": _RECOMMENDATIONCONTENT, "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """Contains what resources are changing and how they are changing. + Attributes: operation_groups: Operations to one or more Google Cloud resources grouped in @@ -1207,6 +1311,7 @@ "DESCRIPTOR": _OPERATIONGROUP, "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """Group of operations that need to be performed atomically. + Attributes: operations: List of operations across one or more resources that belong to @@ -1249,6 +1354,7 @@ being described. - Allows extension to custom operations not natively supported by RFC6902. See https://tools.ietf.org/html/rfc6902 for details on the original RFC. + Attributes: action: Type of this operation. Contains one of ‘and’, ‘remove’, @@ -1323,6 +1429,7 @@ "DESCRIPTOR": _VALUEMATCHER, "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """Contains various matching options for values for a GCP resource field. + Attributes: matches_pattern: To be used for full regex matching. The regular expression is @@ -1343,6 +1450,7 @@ "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """Contains metadata about how much money a recommendation can save or incur. + Attributes: cost: An approximate projection on amount saved or amount incurred. @@ -1364,6 +1472,7 @@ "DESCRIPTOR": _IMPACT, "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """Contains the impact a recommendation can have for a given category. + Attributes: category: Category that is being targeted. @@ -1393,6 +1502,7 @@ "DESCRIPTOR": _RECOMMENDATIONSTATEINFO, "__module__": "google.cloud.recommender_v1beta1.proto.recommendation_pb2", "__doc__": """Information for state. Contains state and metadata. + Attributes: state: The state of the recommendation, Eg ACTIVE, SUCCEEDED, FAILED. diff --git a/google/cloud/recommender_v1beta1/proto/recommendation_pb2_grpc.py b/google/cloud/recommender_v1beta1/proto/recommendation_pb2_grpc.py index b662812..8a93939 100644 --- a/google/cloud/recommender_v1beta1/proto/recommendation_pb2_grpc.py +++ b/google/cloud/recommender_v1beta1/proto/recommendation_pb2_grpc.py @@ -1,17 +1,3 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! - +"""Client and server classes corresponding to protobuf-defined services.""" import grpc diff --git a/google/cloud/recommender_v1beta1/proto/recommender_service_pb2.py b/google/cloud/recommender_v1beta1/proto/recommender_service_pb2.py index d8f1004..123260b 100644 --- a/google/cloud/recommender_v1beta1/proto/recommender_service_pb2.py +++ b/google/cloud/recommender_v1beta1/proto/recommender_service_pb2.py @@ -16,7 +16,7 @@ # Generated by the protocol buffer compiler. DO NOT EDIT! # source: google/cloud/recommender_v1beta1/proto/recommender_service.proto - +"""Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message from google.protobuf import reflection as _reflection @@ -44,6 +44,7 @@ package="google.cloud.recommender.v1beta1", syntax="proto3", serialized_options=b"\n$com.google.cloud.recommender.v1beta1B\020RecommenderProtoP\001ZKgoogle.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender\242\002\004CREC\252\002 Google.Cloud.Recommender.V1Beta1", + create_key=_descriptor._internal_create_key, serialized_pb=b'\n@google/cloud/recommender_v1beta1/proto/recommender_service.proto\x12 google.cloud.recommender.v1beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x34google/cloud/recommender_v1beta1/proto/insight.proto\x1a;google/cloud/recommender_v1beta1/proto/recommendation.proto"\x9b\x01\n\x13ListInsightsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recommender.googleapis.com/InsightType\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"l\n\x14ListInsightsResponse\x12;\n\x08insights\x18\x01 \x03(\x0b\x32).google.cloud.recommender.v1beta1.Insight\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t"M\n\x11GetInsightRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n"recommender.googleapis.com/Insight"\x8d\x02\n\x1aMarkInsightAcceptedRequest\x12\x38\n\x04name\x18\x01 \x01(\tB*\xe0\x41\x02\xfa\x41$\n"recommender.googleapis.com/Insight\x12l\n\x0estate_metadata\x18\x02 \x03(\x0b\x32O.google.cloud.recommender.v1beta1.MarkInsightAcceptedRequest.StateMetadataEntryB\x03\xe0\x41\x01\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"\x9d\x01\n\x1aListRecommendationsRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recommender.googleapis.com/Recommender\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\x0e\n\x06\x66ilter\x18\x05 \x01(\t"\x81\x01\n\x1bListRecommendationsResponse\x12I\n\x0frecommendations\x18\x01 \x03(\x0b\x32\x30.google.cloud.recommender.v1beta1.Recommendation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t"[\n\x18GetRecommendationRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation"\x9b\x02\n MarkRecommendationClaimedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12m\n\x0estate_metadata\x18\x02 \x03(\x0b\x32U.google.cloud.recommender.v1beta1.MarkRecommendationClaimedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"\x9f\x02\n"MarkRecommendationSucceededRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12o\n\x0estate_metadata\x18\x02 \x03(\x0b\x32W.google.cloud.recommender.v1beta1.MarkRecommendationSucceededRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01"\x99\x02\n\x1fMarkRecommendationFailedRequest\x12?\n\x04name\x18\x01 \x01(\tB1\xe0\x41\x02\xfa\x41+\n)recommender.googleapis.com/Recommendation\x12l\n\x0estate_metadata\x18\x02 \x03(\x0b\x32T.google.cloud.recommender.v1beta1.MarkRecommendationFailedRequest.StateMetadataEntry\x12\x11\n\x04\x65tag\x18\x03 \x01(\tB\x03\xe0\x41\x02\x1a\x34\n\x12StateMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x32\xe8\x0f\n\x0bRecommender\x12\xd0\x01\n\x0cListInsights\x12\x35.google.cloud.recommender.v1beta1.ListInsightsRequest\x1a\x36.google.cloud.recommender.v1beta1.ListInsightsResponse"Q\x82\xd3\xe4\x93\x02\x42\x12@/v1beta1/{parent=projects/*/locations/*/insightTypes/*}/insights\xda\x41\x06parent\x12\xbd\x01\n\nGetInsight\x12\x33.google.cloud.recommender.v1beta1.GetInsightRequest\x1a).google.cloud.recommender.v1beta1.Insight"O\x82\xd3\xe4\x93\x02\x42\x12@/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}\xda\x41\x04name\x12\xf3\x01\n\x13MarkInsightAccepted\x12<.google.cloud.recommender.v1beta1.MarkInsightAcceptedRequest\x1a).google.cloud.recommender.v1beta1.Insight"s\x82\xd3\xe4\x93\x02R"M/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted:\x01*\xda\x41\x18name,state_metadata,etag\x12\xf3\x01\n\x13ListRecommendations\x12<.google.cloud.recommender.v1beta1.ListRecommendationsRequest\x1a=.google.cloud.recommender.v1beta1.ListRecommendationsResponse"_\x82\xd3\xe4\x93\x02I\x12G/v1beta1/{parent=projects/*/locations/*/recommenders/*}/recommendations\xda\x41\rparent,filter\x12\xd9\x01\n\x11GetRecommendation\x12:.google.cloud.recommender.v1beta1.GetRecommendationRequest\x1a\x30.google.cloud.recommender.v1beta1.Recommendation"V\x82\xd3\xe4\x93\x02I\x12G/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}\xda\x41\x04name\x12\x8c\x02\n\x19MarkRecommendationClaimed\x12\x42.google.cloud.recommender.v1beta1.MarkRecommendationClaimedRequest\x1a\x30.google.cloud.recommender.v1beta1.Recommendation"y\x82\xd3\xe4\x93\x02X"S/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\x01*\xda\x41\x18name,state_metadata,etag\x12\x92\x02\n\x1bMarkRecommendationSucceeded\x12\x44.google.cloud.recommender.v1beta1.MarkRecommendationSucceededRequest\x1a\x30.google.cloud.recommender.v1beta1.Recommendation"{\x82\xd3\xe4\x93\x02Z"U/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\x01*\xda\x41\x18name,state_metadata,etag\x12\x89\x02\n\x18MarkRecommendationFailed\x12\x41.google.cloud.recommender.v1beta1.MarkRecommendationFailedRequest\x1a\x30.google.cloud.recommender.v1beta1.Recommendation"x\x82\xd3\xe4\x93\x02W"R/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed:\x01*\xda\x41\x18name,state_metadata,etag\x1aN\xca\x41\x1arecommender.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\xb1\x01\n$com.google.cloud.recommender.v1beta1B\x10RecommenderProtoP\x01ZKgoogle.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender\xa2\x02\x04\x43REC\xaa\x02 Google.Cloud.Recommender.V1Beta1b\x06proto3', dependencies=[ google_dot_api_dot_annotations__pb2.DESCRIPTOR, @@ -62,6 +63,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="parent", @@ -80,6 +82,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A(\n&recommender.googleapis.com/InsightType", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="page_size", @@ -98,6 +101,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="page_token", @@ -116,6 +120,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="filter", @@ -134,6 +139,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -155,6 +161,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="insights", @@ -173,6 +180,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="next_page_token", @@ -191,6 +199,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -212,6 +221,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -230,6 +240,7 @@ extension_scope=None, serialized_options=b'\340A\002\372A$\n"recommender.googleapis.com/Insight', file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -251,6 +262,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -269,6 +281,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -287,6 +300,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -307,6 +321,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -325,6 +340,7 @@ extension_scope=None, serialized_options=b'\340A\002\372A$\n"recommender.googleapis.com/Insight', file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -343,6 +359,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -361,6 +378,7 @@ extension_scope=None, serialized_options=b"\340A\002", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -382,6 +400,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="parent", @@ -400,6 +419,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A(\n&recommender.googleapis.com/Recommender", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="page_size", @@ -418,6 +438,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="page_token", @@ -436,6 +457,7 @@ extension_scope=None, serialized_options=b"\340A\001", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="filter", @@ -454,6 +476,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -475,6 +498,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="recommendations", @@ -493,6 +517,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="next_page_token", @@ -511,6 +536,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -532,6 +558,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -550,6 +577,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ) ], extensions=[], @@ -571,6 +599,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -589,6 +618,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -607,6 +637,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -627,6 +658,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -645,6 +677,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -663,6 +696,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -681,6 +715,7 @@ extension_scope=None, serialized_options=b"\340A\002", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -702,6 +737,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -720,6 +756,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -738,6 +775,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -758,6 +796,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -776,6 +815,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -794,6 +834,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -812,6 +853,7 @@ extension_scope=None, serialized_options=b"\340A\002", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -833,6 +875,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="key", @@ -851,6 +894,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="value", @@ -869,6 +913,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -889,6 +934,7 @@ filename=None, file=DESCRIPTOR, containing_type=None, + create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( name="name", @@ -907,6 +953,7 @@ extension_scope=None, serialized_options=b"\340A\002\372A+\n)recommender.googleapis.com/Recommendation", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="state_metadata", @@ -925,6 +972,7 @@ extension_scope=None, serialized_options=None, file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), _descriptor.FieldDescriptor( name="etag", @@ -943,6 +991,7 @@ extension_scope=None, serialized_options=b"\340A\002", file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, ), ], extensions=[], @@ -1022,6 +1071,7 @@ "DESCRIPTOR": _LISTINSIGHTSREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request for the ``ListInsights`` method. + Attributes: parent: Required. The container resource on which to execute the @@ -1056,6 +1106,7 @@ "DESCRIPTOR": _LISTINSIGHTSRESPONSE, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Response to the ``ListInsights`` method. + Attributes: insights: The set of insights for the ``parent`` resource. @@ -1075,6 +1126,7 @@ "DESCRIPTOR": _GETINSIGHTREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request to the ``GetInsight`` method. + Attributes: name: Required. Name of the insight. @@ -1100,6 +1152,7 @@ "DESCRIPTOR": _MARKINSIGHTACCEPTEDREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request for the ``MarkInsightAccepted`` method. + Attributes: name: Required. Name of the insight. @@ -1123,6 +1176,7 @@ "DESCRIPTOR": _LISTRECOMMENDATIONSREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request for the ``ListRecommendations`` method. + Attributes: parent: Required. The container resource on which to execute the @@ -1144,6 +1198,7 @@ Filter expression to restrict the recommendations returned. Supported filter fields: state_info.state Eg: \`state_info.state:“DISMISSED” or state_info.state:“FAILED” + .. [1] a-z0-9 .. [2] a-z0-9 .. [3] a-z0-9 """, # @@protoc_insertion_point(class_scope:google.cloud.recommender.v1beta1.ListRecommendationsRequest) }, @@ -1157,6 +1212,7 @@ "DESCRIPTOR": _LISTRECOMMENDATIONSRESPONSE, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Response to the ``ListRecommendations`` method. + Attributes: recommendations: The set of recommendations for the ``parent`` resource. @@ -1176,6 +1232,7 @@ "DESCRIPTOR": _GETRECOMMENDATIONREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request to the ``GetRecommendation`` method. + Attributes: name: Required. Name of the recommendation. @@ -1201,6 +1258,7 @@ "DESCRIPTOR": _MARKRECOMMENDATIONCLAIMEDREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request for the ``MarkRecommendationClaimed`` Method. + Attributes: name: Required. Name of the recommendation. @@ -1235,13 +1293,14 @@ "DESCRIPTOR": _MARKRECOMMENDATIONSUCCEEDEDREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request for the ``MarkRecommendationSucceeded`` Method. + Attributes: name: Required. Name of the recommendation. state_metadata: State properties to include with this state. Overwrites any existing ``state_metadata``. Keys must match the regex ``/ - [3]_[a-z0-9_.-]{0,62}/``. Values must match the regex + [2]_[a-z0-9_.-]{0,62}/``. Values must match the regex ``/^[a-zA-Z0-9_./-]{0,255}/``. etag: Required. Fingerprint of the Recommendation. Provides @@ -1269,18 +1328,18 @@ "DESCRIPTOR": _MARKRECOMMENDATIONFAILEDREQUEST, "__module__": "google.cloud.recommender_v1beta1.proto.recommender_service_pb2", "__doc__": """Request for the ``MarkRecommendationFailed`` Method. + Attributes: name: Required. Name of the recommendation. state_metadata: State properties to include with this state. Overwrites any existing ``state_metadata``. Keys must match the regex ``/ - [2]_[a-z0-9_.-]{0,62}/``. Values must match the regex + [3]_[a-z0-9_.-]{0,62}/``. Values must match the regex ``/^[a-zA-Z0-9_./-]{0,255}/``. etag: Required. Fingerprint of the Recommendation. Provides - optimistic locking. .. [1] a-z0-9 .. [2] a-z0-9 .. - [3] a-z0-9 + optimistic locking. """, # @@protoc_insertion_point(class_scope:google.cloud.recommender.v1beta1.MarkRecommendationFailedRequest) }, @@ -1319,6 +1378,7 @@ file=DESCRIPTOR, index=0, serialized_options=b"\312A\032recommender.googleapis.com\322A.https://www.googleapis.com/auth/cloud-platform", + create_key=_descriptor._internal_create_key, serialized_start=2197, serialized_end=4221, methods=[ @@ -1330,6 +1390,7 @@ input_type=_LISTINSIGHTSREQUEST, output_type=_LISTINSIGHTSRESPONSE, serialized_options=b"\202\323\344\223\002B\022@/v1beta1/{parent=projects/*/locations/*/insightTypes/*}/insights\332A\006parent", + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="GetInsight", @@ -1339,6 +1400,7 @@ input_type=_GETINSIGHTREQUEST, output_type=google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_insight__pb2._INSIGHT, serialized_options=b"\202\323\344\223\002B\022@/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}\332A\004name", + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="MarkInsightAccepted", @@ -1348,6 +1410,7 @@ input_type=_MARKINSIGHTACCEPTEDREQUEST, output_type=google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_insight__pb2._INSIGHT, serialized_options=b'\202\323\344\223\002R"M/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted:\001*\332A\030name,state_metadata,etag', + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="ListRecommendations", @@ -1357,6 +1420,7 @@ input_type=_LISTRECOMMENDATIONSREQUEST, output_type=_LISTRECOMMENDATIONSRESPONSE, serialized_options=b"\202\323\344\223\002I\022G/v1beta1/{parent=projects/*/locations/*/recommenders/*}/recommendations\332A\rparent,filter", + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="GetRecommendation", @@ -1366,6 +1430,7 @@ input_type=_GETRECOMMENDATIONREQUEST, output_type=google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b"\202\323\344\223\002I\022G/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}\332A\004name", + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="MarkRecommendationClaimed", @@ -1375,6 +1440,7 @@ input_type=_MARKRECOMMENDATIONCLAIMEDREQUEST, output_type=google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b'\202\323\344\223\002X"S/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed:\001*\332A\030name,state_metadata,etag', + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="MarkRecommendationSucceeded", @@ -1384,6 +1450,7 @@ input_type=_MARKRECOMMENDATIONSUCCEEDEDREQUEST, output_type=google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b'\202\323\344\223\002Z"U/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded:\001*\332A\030name,state_metadata,etag', + create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name="MarkRecommendationFailed", @@ -1393,6 +1460,7 @@ input_type=_MARKRECOMMENDATIONFAILEDREQUEST, output_type=google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2._RECOMMENDATION, serialized_options=b'\202\323\344\223\002W"R/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed:\001*\332A\030name,state_metadata,etag', + create_key=_descriptor._internal_create_key, ), ], ) diff --git a/google/cloud/recommender_v1beta1/proto/recommender_service_pb2_grpc.py b/google/cloud/recommender_v1beta1/proto/recommender_service_pb2_grpc.py index 3c0221b..34a0621 100644 --- a/google/cloud/recommender_v1beta1/proto/recommender_service_pb2_grpc.py +++ b/google/cloud/recommender_v1beta1/proto/recommender_service_pb2_grpc.py @@ -1,19 +1,5 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! - +"""Client and server classes corresponding to protobuf-defined services.""" import grpc from google.cloud.recommender_v1beta1.proto import ( @@ -29,17 +15,17 @@ class RecommenderStub(object): """Provides insights and recommendations for cloud customers for various - categories like performance optimization, cost savings, reliability, feature - discovery, etc. Insights and recommendations are generated automatically - based on analysis of user resources, configuration and monitoring metrics. - """ + categories like performance optimization, cost savings, reliability, feature + discovery, etc. Insights and recommendations are generated automatically + based on analysis of user resources, configuration and monitoring metrics. + """ def __init__(self, channel): """Constructor. - Args: - channel: A grpc.Channel. - """ + Args: + channel: A grpc.Channel. + """ self.ListInsights = channel.unary_unary( "/google.cloud.recommender.v1beta1.Recommender/ListInsights", request_serializer=google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.ListInsightsRequest.SerializeToString, @@ -84,101 +70,101 @@ def __init__(self, channel): class RecommenderServicer(object): """Provides insights and recommendations for cloud customers for various - categories like performance optimization, cost savings, reliability, feature - discovery, etc. Insights and recommendations are generated automatically - based on analysis of user resources, configuration and monitoring metrics. - """ + categories like performance optimization, cost savings, reliability, feature + discovery, etc. Insights and recommendations are generated automatically + based on analysis of user resources, configuration and monitoring metrics. + """ def ListInsights(self, request, context): """Lists insights for a Cloud project. Requires the recommender.*.list IAM - permission for the specified insight type. - """ + permission for the specified insight type. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def GetInsight(self, request, context): """Gets the requested insight. Requires the recommender.*.get IAM permission - for the specified insight type. - """ + for the specified insight type. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def MarkInsightAccepted(self, request, context): """Marks the Insight State as Accepted. Users can use this method to - indicate to the Recommender API that they have applied some action based - on the insight. This stops the insight content from being updated. + indicate to the Recommender API that they have applied some action based + on the insight. This stops the insight content from being updated. - MarkInsightAccepted can be applied to insights in ACTIVE state. Requires - the recommender.*.update IAM permission for the specified insight. - """ + MarkInsightAccepted can be applied to insights in ACTIVE state. Requires + the recommender.*.update IAM permission for the specified insight. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def ListRecommendations(self, request, context): """Lists recommendations for a Cloud project. Requires the recommender.*.list - IAM permission for the specified recommender. - """ + IAM permission for the specified recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def GetRecommendation(self, request, context): """Gets the requested recommendation. Requires the recommender.*.get - IAM permission for the specified recommender. - """ + IAM permission for the specified recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def MarkRecommendationClaimed(self, request, context): """Marks the Recommendation State as Claimed. Users can use this method to - indicate to the Recommender API that they are starting to apply the - recommendation themselves. This stops the recommendation content from being - updated. Associated insights are frozen and placed in the ACCEPTED state. + indicate to the Recommender API that they are starting to apply the + recommendation themselves. This stops the recommendation content from being + updated. Associated insights are frozen and placed in the ACCEPTED state. - MarkRecommendationClaimed can be applied to recommendations in CLAIMED or - ACTIVE state. + MarkRecommendationClaimed can be applied to recommendations in CLAIMED or + ACTIVE state. - Requires the recommender.*.update IAM permission for the specified - recommender. - """ + Requires the recommender.*.update IAM permission for the specified + recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def MarkRecommendationSucceeded(self, request, context): """Marks the Recommendation State as Succeeded. Users can use this method to - indicate to the Recommender API that they have applied the recommendation - themselves, and the operation was successful. This stops the recommendation - content from being updated. Associated insights are frozen and placed in - the ACCEPTED state. + indicate to the Recommender API that they have applied the recommendation + themselves, and the operation was successful. This stops the recommendation + content from being updated. Associated insights are frozen and placed in + the ACCEPTED state. - MarkRecommendationSucceeded can be applied to recommendations in ACTIVE, - CLAIMED, SUCCEEDED, or FAILED state. + MarkRecommendationSucceeded can be applied to recommendations in ACTIVE, + CLAIMED, SUCCEEDED, or FAILED state. - Requires the recommender.*.update IAM permission for the specified - recommender. - """ + Requires the recommender.*.update IAM permission for the specified + recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") def MarkRecommendationFailed(self, request, context): """Marks the Recommendation State as Failed. Users can use this method to - indicate to the Recommender API that they have applied the recommendation - themselves, and the operation failed. This stops the recommendation content - from being updated. Associated insights are frozen and placed in the - ACCEPTED state. + indicate to the Recommender API that they have applied the recommendation + themselves, and the operation failed. This stops the recommendation content + from being updated. Associated insights are frozen and placed in the + ACCEPTED state. - MarkRecommendationFailed can be applied to recommendations in ACTIVE, - CLAIMED, SUCCEEDED, or FAILED state. + MarkRecommendationFailed can be applied to recommendations in ACTIVE, + CLAIMED, SUCCEEDED, or FAILED state. - Requires the recommender.*.update IAM permission for the specified - recommender. - """ + Requires the recommender.*.update IAM permission for the specified + recommender. + """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") @@ -231,3 +217,228 @@ def add_RecommenderServicer_to_server(servicer, server): "google.cloud.recommender.v1beta1.Recommender", rpc_method_handlers ) server.add_generic_rpc_handlers((generic_handler,)) + + +# This class is part of an EXPERIMENTAL API. +class Recommender(object): + """Provides insights and recommendations for cloud customers for various + categories like performance optimization, cost savings, reliability, feature + discovery, etc. Insights and recommendations are generated automatically + based on analysis of user resources, configuration and monitoring metrics. + """ + + @staticmethod + def ListInsights( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/ListInsights", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.ListInsightsRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.ListInsightsResponse.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def GetInsight( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/GetInsight", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.GetInsightRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_insight__pb2.Insight.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def MarkInsightAccepted( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/MarkInsightAccepted", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.MarkInsightAcceptedRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_insight__pb2.Insight.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def ListRecommendations( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/ListRecommendations", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.ListRecommendationsRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.ListRecommendationsResponse.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def GetRecommendation( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/GetRecommendation", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.GetRecommendationRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def MarkRecommendationClaimed( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/MarkRecommendationClaimed", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.MarkRecommendationClaimedRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def MarkRecommendationSucceeded( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/MarkRecommendationSucceeded", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.MarkRecommendationSucceededRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def MarkRecommendationFailed( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/google.cloud.recommender.v1beta1.Recommender/MarkRecommendationFailed", + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommender__service__pb2.MarkRecommendationFailedRequest.SerializeToString, + google_dot_cloud_dot_recommender__v1beta1_dot_proto_dot_recommendation__pb2.Recommendation.FromString, + options, + channel_credentials, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) diff --git a/synth.metadata b/synth.metadata index d5c8467..9fd5fd6 100644 --- a/synth.metadata +++ b/synth.metadata @@ -4,15 +4,22 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/python-recommender.git", - "sha": "5e00996548efe5680e45a56e64e808a570d430c1" + "sha": "2d8723fe3395c20d9116aaf50d2d890a18b38baa" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "576234f179d2e8dde1e629888afafb59abec7e6c", - "internalRef": "313408465" + "sha": "e6ab0a55f2195169feded73dd684574dd4bd9dfa", + "internalRef": "319180144" + } + }, + { + "git": { + "name": "synthtool", + "remote": "https://github.com/googleapis/synthtool.git", + "sha": "84c4156c49be9dcabacc8fd7b0585b6fd789ae47" } }, {