Synchronize new proto/yaml changes.

PiperOrigin-RevId: 189090499
This commit is contained in:
Google APIs 2018-03-14 14:52:51 -07:00 committed by Copybara-Service
parent d084748b92
commit 944ae9dce5
5 changed files with 691 additions and 28 deletions

View File

@ -0,0 +1,55 @@
common:
api_name: servicemanagement
api_version: v1
organization_name: google-cloud
proto_deps:
- name: google-common-protos
src_proto_paths:
- v1
service_yaml: servicemanagement_v1.yaml
gapic_yaml: v1/servicemanagement_gapic.yaml
artifacts:
- name: gapic_config
type: GAPIC_CONFIG
- name: java_gapic
type: GAPIC_ONLY
language: JAVA
publish_targets:
- name: staging
type: GITHUB
location: git@github.com:googleapis/api-client-staging.git
directory_mappings:
- dest: generated/java/gapic-google-cloud-servicemanagement-v1
- name: grpc
dest: generated/java/grpc-google-cloud-servicemanagement-v1
- name: proto
dest: generated/java/proto-google-cloud-servicemanagement-v1
- name: java
type: GITHUB
location: git@github.com:GoogleCloudPlatform/google-cloud-java.git
directory_mappings:
- dest: google-cloud-servicemanagement
- name: python_gapic
type: GAPIC
language: PYTHON
- name: nodejs_gapic
type: GAPIC
language: NODEJS
- name: php_gapic
type: GAPIC
language: PHP
publish_targets:
- name: staging
type: GITHUB
location: git@github.com:googleapis/api-client-staging.git
directory_mappings:
- dest: generated/php/google-cloud-servicemanagement-v1
- name: go_gapic
type: GAPIC
language: GO
- name: ruby_gapic
type: GAPIC
language: RUBY
- name: csharp_gapic
type: GAPIC
language: CSHARP

View File

@ -0,0 +1,233 @@
type: google.api.Service
config_version: 2
name: servicemanagement.googleapis.com
title: Google Service Management API
apis:
- name: google.api.servicemanagement.v1.ServiceManager
types:
- name: google.api.servicemanagement.v1.ConfigSource
- name: google.api.servicemanagement.v1.ConfigRef
- name: google.api.servicemanagement.v1.OperationMetadata
- name: google.api.servicemanagement.v1.Rollout
- name: google.api.servicemanagement.v1.SubmitConfigSourceResponse
- name: google.api.servicemanagement.v1.UndeleteServiceResponse
documentation:
summary: |-
Google Service Management allows service producers to publish their services
on Google Cloud Platform so that they can be discovered and used by service
consumers.
overview: |-
Google Service Management manages a set of *services*. Service Management
allows *service producers* to publish their services on Google Cloud
Platform so that they can be discovered and used by *service consumers*. It
also handles the tasks of tracking service lifecycle and programming various
backend systems -- such as [Stackdriver
Logging](https://cloud.google.com/stackdriver), [Stackdriver
Monitoring](https://cloud.google.com/stackdriver) -- to support the managed
services.
If you are a service producer, you can use the Google Service Management API
and [Google Cloud SDK (gcloud)](/sdk) to publish and manage your services.
Each managed service has a service configuration which declares various
aspects of the service such as its API surface, along with parameters to
configure the supporting backend systems, such as logging and monitoring. If
you build your service using [Google Cloud
Endpoints](https://cloud.google.com/endpoints/), the service configuration
will be handled automatically.
If you are a service consumer and want to use a managed service, you can use
the Google Service Management API or [Google Cloud
Console](https://console.cloud.google.com) to activate the service for your
[Google developer project](https://developers.google.com/console/help/new/),
then start using its APIs and functions.
## Managed services
REST URL:
`https://servicemanagement.googleapis.com/v1/services/{service-name}` <br />
REST schema is defined
[here](/service-management/reference/rest/v1/services).
A managed service refers to a network service managed by Service Management.
Each managed service has a unique name, such as `example.googleapis.com`,
which must be a valid fully-qualified DNS name, as per RFC 1035.
A managed service typically provides some REST APIs and/or other functions
to their service consumers, such as mobile apps or cloud services.
Service producers can use methods, such as
[services.create](/service-management/reference/rest/v1/services/create),
[services.delete](/service-management/reference/rest/v1/services/delete),
[services.undelete](/service-management/reference/rest/v1/services/undelete),
to manipulate their managed services.
## Service producers
A service producer is the Google developer project responsible for
publishing and maintaining a managed service. Each managed service is owned
by exactly one service producer.
## Service consumers
A service consumer is a Google developer project that has enabled and can
invoke APIs on a managed service. A managed service can have many service
consumers.
## Service configuration
REST URL:
`https://servicemanagement.googleapis.com/v1/services/{service-name}/configs/{config_id}`
<br /> REST schema is defined
[here](/service-management/reference/rest/v1/services.configs).
Each managed service is described by a service configuration which covers a
wide range of features, including its name, title, RPC API definitions, REST
API definitions, documentation, authentication, and more.
To change the configuration of a managed service, the service producer needs
to publish an updated service configuration to Service Management. Service
Management keeps a history of published service configurations, making it
possible to easily retrace how a service's configuration evolved over time.
Service configurations can be published using the
[services.configs.create](/service-management/reference/rest/v1/services.configs/create)
or
[services.configs.submit](/service-management/reference/rest/v1/services.configs/submit)
methods.
Alternatively, `services.configs.submit` allows publishing an
[OpenAPI](https://github.com/OAI/OpenAPI-Specification) specification,
formerly known as the Swagger Specification, which is automatically
converted to a corresponding service configuration.
## Service rollout
REST URL:
`https://servicemanagement.googleapis.com/v1/services/{service-name}/rollouts/{rollout-id}`
<br /> REST schema is defined
[here](/service-management/reference/rest/v1/services.rollouts).
A `Rollout` defines how Google Service Management should deploy service
configurations to backend systems and how the configurations take effect at
runtime. It lets service producers specify multiple service configuration
versions to be deployed together, and a strategy that indicates how they
should be used.
Updating a managed service's configuration can be dangerous, as a
configuration error can lead to a service outage. To mitigate risks, Service
Management supports gradual rollout of service configuration changes. This
feature gives service producers time to identity potential issues and
rollback service configuration changes in case of errors, thus minimizing
the customer impact of bad configurations. For example, you could specify
that 5% of traffic uses configuration 1, while the remaining 95% uses
configuration 2.
Service Management keeps a history of rollouts so that service producers can
undo to previous configuration versions. You can rollback a configuration by
initiating a new `Rollout` that clones a previously submitted rollout
record.
rules:
- selector: google.longrunning.Operations.ListOperations
description: Lists service operations that match the specified filter in the request.
backend:
rules:
- selector: google.longrunning.Operations.ListOperations
deadline: 10.0
- selector: google.longrunning.Operations.GetOperation
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.ListServices
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.GetService
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.CreateService
deadline: 20.0
- selector: google.api.servicemanagement.v1.ServiceManager.DeleteService
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.UndeleteService
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.ListServiceConfigs
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.GetServiceConfig
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.CreateServiceConfig
deadline: 20.0
- selector: google.api.servicemanagement.v1.ServiceManager.SubmitConfigSource
deadline: 20.0
- selector: google.api.servicemanagement.v1.ServiceManager.ListServiceRollouts
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.GetServiceRollout
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.CreateServiceRollout
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.GenerateConfigReport
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.EnableService
deadline: 10.0
- selector: google.api.servicemanagement.v1.ServiceManager.DisableService
deadline: 10.0
- selector: google.iam.v1.IAMPolicy.SetIamPolicy
deadline: 10.0
- selector: google.iam.v1.IAMPolicy.GetIamPolicy
deadline: 10.0
- selector: google.iam.v1.IAMPolicy.TestIamPermissions
deadline: 10.0
http:
rules:
- selector: google.longrunning.Operations.ListOperations
get: /v1/operations
- selector: google.iam.v1.IAMPolicy.SetIamPolicy
post: '/v1/{resource=services/*}:setIamPolicy'
body: '*'
additional_bindings:
- post: '/v1/{resource=services/*/consumers/*}:setIamPolicy'
body: '*'
- selector: google.iam.v1.IAMPolicy.GetIamPolicy
post: '/v1/{resource=services/*}:getIamPolicy'
body: '*'
additional_bindings:
- post: '/v1/{resource=services/*/consumers/*}:getIamPolicy'
body: '*'
- selector: google.iam.v1.IAMPolicy.TestIamPermissions
post: '/v1/{resource=services/*}:testIamPermissions'
body: '*'
additional_bindings:
- post: '/v1/{resource=services/*/consumers/*}:testIamPermissions'
body: '*'
authentication:
rules:
- selector: '*'
oauth:
canonical_scopes: |-
https://www.googleapis.com/auth/cloud-platform,
https://www.googleapis.com/auth/service.management
- selector: |-
google.api.servicemanagement.v1.ServiceManager.GetService,
google.api.servicemanagement.v1.ServiceManager.GetServiceConfig,
google.api.servicemanagement.v1.ServiceManager.GetServiceRollout,
google.api.servicemanagement.v1.ServiceManager.ListServiceConfigs,
google.api.servicemanagement.v1.ServiceManager.ListServiceRollouts,
google.api.servicemanagement.v1.ServiceManager.ListServices
oauth:
canonical_scopes: |-
https://www.googleapis.com/auth/cloud-platform,
https://www.googleapis.com/auth/cloud-platform.read-only,
https://www.googleapis.com/auth/service.management,
https://www.googleapis.com/auth/service.management.readonly
- selector: |-
google.iam.v1.IAMPolicy.GetIamPolicy,
google.iam.v1.IAMPolicy.TestIamPermissions
oauth:
canonical_scopes: |-
https://www.googleapis.com/auth/cloud-platform,
https://www.googleapis.com/auth/cloud-platform.read-only,
https://www.googleapis.com/auth/service.management,
https://www.googleapis.com/auth/service.management.readonly

View File

@ -1,4 +1,4 @@
// Copyright 2016 Google Inc.
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -18,6 +18,7 @@ package google.api.servicemanagement.v1;
import "google/api/annotations.proto";
import "google/api/config_change.proto";
import "google/api/metric.proto";
import "google/api/service.proto";
import "google/longrunning/operations.proto";
import "google/protobuf/any.proto";
@ -55,24 +56,25 @@ message OperationMetadata {
Status status = 4;
}
// Code describes the status of one operation step.
// Code describes the status of the operation (or one of its steps).
enum Status {
// Unspecifed code.
STATUS_UNSPECIFIED = 0;
// The step has completed without errors.
// The operation or step has completed without errors.
DONE = 1;
// The step has not started yet.
// The operation or step has not started yet.
NOT_STARTED = 2;
// The step is in progress.
// The operation or step is in progress.
IN_PROGRESS = 3;
// The step has completed with errors.
// The operation or step has completed with errors. If the operation is
// rollbackable, the rollback completed with errors too.
FAILED = 4;
// The step has completed with cancellation.
// The operation or step has completed with cancellation.
CANCELLED = 5;
}
@ -147,6 +149,13 @@ message ConfigFile {
//
// $protoc --include_imports --include_source_info test.proto -o out.pb
FILE_DESCRIPTOR_SET_PROTO = 4;
// Uncompiled Proto file. Used for storage and display purposes only,
// currently server-side compilation is not supported. Should match the
// inputs to 'protoc' command used to generated FILE_DESCRIPTOR_SET_PROTO. A
// file of this type can only be included if at least one file of type
// FILE_DESCRIPTOR_SET_PROTO is included.
PROTO_FILE = 6;
}
// The file name of the configuration file (full or relative path).
@ -183,9 +192,10 @@ message ChangeReport {
// to control plane systems. Typically, you create a new version of the
// service config, and then create a Rollout to push the service config.
message Rollout {
// Strategy that specifies how Google Service Control should select
// different
// versions of service configurations based on traffic percentage.
// Strategy that specifies how clients of Google Service Controller want to
// send traffic to use different config versions. This is generally
// used by API proxy to split traffic based on your configured precentage for
// each config version.
//
// One example of how to gradually rollout a new service configuration using
// this
@ -240,11 +250,15 @@ message Rollout {
// Rollout pushes, and the previous ones will be cancelled.
CANCELLED = 3;
// The Rollout has failed. It is typically caused by configuration errors.
// The Rollout has failed and the rollback attempt has failed too.
FAILED = 4;
// The Rollout has not started yet and is pending for execution.
PENDING = 5;
// The Rollout has failed and rolled back to the previous successful
// Rollout.
FAILED_ROLLED_BACK = 6;
}
// Optional unique identifier of this Rollout. Only lower case letters, digits

View File

@ -0,0 +1,322 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
# The settings of generated code in a specific language.
language_settings:
java:
package_name: com.google.cloud.api.servicemanagement.v1
python:
package_name: google.cloud.api.servicemanagement_v1.gapic
go:
package_name: cloud.google.com/go/api/servicemanagement/apiv1
csharp:
package_name: Google.Api.Servicemanagement.V1
ruby:
package_name: Google::Cloud::Api::Servicemanagement::V1
php:
package_name: Google\Cloud\Api\Servicemanagement\V1
nodejs:
package_name: servicemanagement.v1
# The configuration for the license header to put on generated files.
license_header:
# The file containing the copyright line(s).
copyright_file: copyright-google.txt
# The file containing the raw license header without any copyright line(s).
license_file: license-header-apache-2.0.txt
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
- name: google.api.servicemanagement.v1.ServiceManager
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections: []
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- UNAVAILABLE
- DEADLINE_EXCEEDED
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# request_object_method - Turns on or off the generation of a method whose
# sole parameter is a request object. Not all languages will generate this
# method.
#
# resource_name_treatment - An enum that specifies how to treat the resource
# name formats defined in the field_name_patterns and
# response_field_name_patterns fields.
# UNSET: default value
# NONE: the collection configs will not be used by the generated code.
# VALIDATE: string fields will be validated by the client against the
# specified resource name formats.
# STATIC_TYPES: the client will use generated types for resource names.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: ListServices
flattening:
groups:
- parameters:
- producer_project_id
- consumer_id
required_fields:
request_object_method: false
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: services
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000
- name: GetService
flattening:
groups:
- parameters:
- service_name
required_fields:
- service_name
request_object_method: false
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000
- name: CreateService
flattening:
groups:
- parameters:
- service
required_fields:
- service
request_object_method: false
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 20000
- name: DeleteService
flattening:
groups:
- parameters:
- service_name
required_fields:
- service_name
request_object_method: false
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 60000
- name: UndeleteService
flattening:
groups:
- parameters:
- service_name
required_fields:
- service_name
request_object_method: false
retry_codes_name: non_idempotent
retry_params_name: default
# REVIEW: Could this operation take a long time?
timeout_millis: 60000
- name: ListServiceConfigs
flattening:
groups:
- parameters:
- service_name
required_fields:
- service_name
request_object_method: false
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: service_configs
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000
- name: GetServiceConfig
flattening:
groups:
- parameters:
- service_name
- config_id
- view
required_fields:
- service_name
- config_id
request_object_method: false
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000
- name: CreateServiceConfig
flattening:
groups:
- parameters:
- service_name
- service_config
required_fields:
- service_name
- service_config
request_object_method: false
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 20000
- name: SubmitConfigSource
flattening:
groups:
- parameters:
- service_name
- config_source
- validate_only
required_fields:
- service_name
- config_source
request_object_method: false
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 10000
- name: ListServiceRollouts
flattening:
groups:
- parameters:
- service_name
- filter
required_fields:
- service_name
request_object_method: false
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: rollouts
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000
- name: GetServiceRollout
flattening:
groups:
- parameters:
- service_name
- rollout_id
required_fields:
- service_name
- rollout_id
request_object_method: false
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000
- name: CreateServiceRollout
flattening:
groups:
- parameters:
- service_name
- rollout
required_fields:
- service_name
- rollout
request_object_method: false
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 10000
- name: GenerateConfigReport
flattening:
groups:
- parameters:
- new_config
- old_config
required_fields:
- new_config
- old_config
request_object_method: false
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 10000
- name: EnableService
flattening:
groups:
- parameters:
- service_name
- consumer_id
required_fields:
- service_name
- consumer_id
request_object_method: false
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000
- name: DisableService
flattening:
groups:
- parameters:
- service_name
- consumer_id
required_fields:
- service_name
- consumer_id
request_object_method: false
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 10000

View File

@ -1,4 +1,4 @@
// Copyright 2017 Google Inc.
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -17,7 +17,6 @@ syntax = "proto3";
package google.api.servicemanagement.v1;
import "google/api/annotations.proto";
import "google/api/auth.proto";
import "google/api/service.proto";
import "google/api/servicemanagement/v1/resources.proto";
import "google/longrunning/operations.proto";
@ -45,13 +44,17 @@ service ServiceManager {
// services enabled on the consumer. The `consumer_id` must have the format
// of "project:{PROJECT-ID}".
rpc ListServices(ListServicesRequest) returns (ListServicesResponse) {
option (google.api.http) = { get: "/v1/services" };
option (google.api.http) = {
get: "/v1/services"
};
}
// Gets a managed service. Authentication is required unless the service is
// public.
rpc GetService(GetServiceRequest) returns (ManagedService) {
option (google.api.http) = { get: "/v1/services/{service_name}" };
option (google.api.http) = {
get: "/v1/services/{service_name}"
};
}
// Creates a new managed service.
@ -59,7 +62,10 @@ service ServiceManager {
//
// Operation<response: ManagedService>
rpc CreateService(CreateServiceRequest) returns (google.longrunning.Operation) {
option (google.api.http) = { post: "/v1/services" body: "service" };
option (google.api.http) = {
post: "/v1/services"
body: "service"
};
}
// Deletes a managed service. This method will change the service to the
@ -69,7 +75,9 @@ service ServiceManager {
//
// Operation<response: google.protobuf.Empty>
rpc DeleteService(DeleteServiceRequest) returns (google.longrunning.Operation) {
option (google.api.http) = { delete: "/v1/services/{service_name}" };
option (google.api.http) = {
delete: "/v1/services/{service_name}"
};
}
// Revives a previously deleted managed service. The method restores the
@ -79,18 +87,27 @@ service ServiceManager {
//
// Operation<response: UndeleteServiceResponse>
rpc UndeleteService(UndeleteServiceRequest) returns (google.longrunning.Operation) {
option (google.api.http) = { post: "/v1/services/{service_name}:undelete" body: "" };
option (google.api.http) = {
post: "/v1/services/{service_name}:undelete"
};
}
// Lists the history of the service configuration for a managed service,
// from the newest to the oldest.
rpc ListServiceConfigs(ListServiceConfigsRequest) returns (ListServiceConfigsResponse) {
option (google.api.http) = { get: "/v1/services/{service_name}/configs" };
option (google.api.http) = {
get: "/v1/services/{service_name}/configs"
};
}
// Gets a service configuration (version) for a managed service.
rpc GetServiceConfig(GetServiceConfigRequest) returns (google.api.Service) {
option (google.api.http) = { get: "/v1/services/{service_name}/configs/{config_id}" };
option (google.api.http) = {
get: "/v1/services/{service_name}/configs/{config_id}"
additional_bindings {
get: "/v1/services/{service_name}/config"
}
};
}
// Creates a new service configuration (version) for a managed service.
@ -98,7 +115,10 @@ service ServiceManager {
// configuration to backend systems please call
// [CreateServiceRollout][google.api.servicemanagement.v1.ServiceManager.CreateServiceRollout].
rpc CreateServiceConfig(CreateServiceConfigRequest) returns (google.api.Service) {
option (google.api.http) = { post: "/v1/services/{service_name}/configs" body: "service_config" };
option (google.api.http) = {
post: "/v1/services/{service_name}/configs"
body: "service_config"
};
}
// Creates a new service configuration (version) for a managed service based
@ -111,18 +131,25 @@ service ServiceManager {
//
// Operation<response: SubmitConfigSourceResponse>
rpc SubmitConfigSource(SubmitConfigSourceRequest) returns (google.longrunning.Operation) {
option (google.api.http) = { post: "/v1/services/{service_name}/configs:submit" body: "*" };
option (google.api.http) = {
post: "/v1/services/{service_name}/configs:submit"
body: "*"
};
}
// Lists the history of the service configuration rollouts for a managed
// service, from the newest to the oldest.
rpc ListServiceRollouts(ListServiceRolloutsRequest) returns (ListServiceRolloutsResponse) {
option (google.api.http) = { get: "/v1/services/{service_name}/rollouts" };
option (google.api.http) = {
get: "/v1/services/{service_name}/rollouts"
};
}
// Gets a service configuration [rollout][google.api.servicemanagement.v1.Rollout].
rpc GetServiceRollout(GetServiceRolloutRequest) returns (Rollout) {
option (google.api.http) = { get: "/v1/services/{service_name}/rollouts/{rollout_id}" };
option (google.api.http) = {
get: "/v1/services/{service_name}/rollouts/{rollout_id}"
};
}
// Creates a new service configuration rollout. Based on rollout, the
@ -136,7 +163,10 @@ service ServiceManager {
//
// Operation<response: Rollout>
rpc CreateServiceRollout(CreateServiceRolloutRequest) returns (google.longrunning.Operation) {
option (google.api.http) = { post: "/v1/services/{service_name}/rollouts" body: "rollout" };
option (google.api.http) = {
post: "/v1/services/{service_name}/rollouts"
body: "rollout"
};
}
// Generates and returns a report (errors, warnings and changes from
@ -151,7 +181,10 @@ service ServiceManager {
// will compare GenerateConfigReportRequest.new_value with the last pushed
// service configuration.
rpc GenerateConfigReport(GenerateConfigReportRequest) returns (GenerateConfigReportResponse) {
option (google.api.http) = { post: "/v1/services:generateConfigReport" body: "*" };
option (google.api.http) = {
post: "/v1/services:generateConfigReport"
body: "*"
};
}
// Enables a [service][google.api.servicemanagement.v1.ManagedService] for a project, so it can be used
@ -161,7 +194,10 @@ service ServiceManager {
//
// Operation<response: EnableServiceResponse>
rpc EnableService(EnableServiceRequest) returns (google.longrunning.Operation) {
option (google.api.http) = { post: "/v1/services/{service_name}:enable" body: "*" };
option (google.api.http) = {
post: "/v1/services/{service_name}:enable"
body: "*"
};
}
// Disables a [service][google.api.servicemanagement.v1.ManagedService] for a project, so it can no longer be
@ -170,7 +206,10 @@ service ServiceManager {
//
// Operation<response: DisableServiceResponse>
rpc DisableService(DisableServiceRequest) returns (google.longrunning.Operation) {
option (google.api.http) = { post: "/v1/services/{service_name}:disable" body: "*" };
option (google.api.http) = {
post: "/v1/services/{service_name}:disable"
body: "*"
};
}
}