Synchronize new proto/yaml changes.

PiperOrigin-RevId: 271635926
This commit is contained in:
Google APIs 2019-09-27 13:30:54 -07:00 committed by Copybara-Service
parent 4d3849296d
commit fcdec366bb
9 changed files with 752 additions and 212 deletions

View File

@ -4,6 +4,7 @@ common:
organization_name: google-cloud
proto_deps:
- name: google-common-protos
- name: google-iam-v1
src_proto_paths:
- v1beta1
service_yaml: datacatalog_v1beta1.yaml

File diff suppressed because it is too large Load Diff

View File

@ -17,7 +17,6 @@ language_settings:
nodejs:
package_name: datacatalog.v1beta1
domain_layer_location: google-cloud
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
@ -35,6 +34,8 @@ interfaces:
collections:
- name_pattern: projects/{project}/locations/{location}
entity_name: location
- name_pattern: projects/{project}/locations/{location}/entryGroups/{entry_group}
entity_name: entry_group
- name_pattern: projects/{project}/locations/{location}/entryGroups/{entry_group}/entries/{entry}
entity_name: entry
- name_pattern: projects/{project}/locations/{location}/entryGroups/{entry_group}/entries/{entry}/tags/{tag}
@ -117,6 +118,7 @@ interfaces:
required_fields:
- scope
- query
- order_by
page_streaming:
request:
page_size_field: page_size
@ -157,6 +159,63 @@ interfaces:
- print: ["Result subtype: %s", $resp.search_result_subtype]
- print: ["Relative resource name: %s", $resp.relative_resource_name]
- print: ["Linked resource: %s\n", $resp.linked_resource]
- name: CreateEntryGroup
flattening:
groups:
- parameters:
- parent
- entry_group_id
- entry_group
required_fields:
- parent
- entry_group_id
- entry_group
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: location
timeout_millis: 60000
- name: GetEntryGroup
flattening:
groups:
- parameters:
- name
- read_mask
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: entry_group
timeout_millis: 60000
- name: DeleteEntryGroup
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: entry_group
timeout_millis: 60000
- name: CreateEntry
flattening:
groups:
- parameters:
- parent
- entry_id
- entry
required_fields:
- parent
- entry_id
- entry
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: entry_group
timeout_millis: 60000
- name: UpdateEntry
flattening:
groups:
@ -170,6 +229,18 @@ interfaces:
field_name_patterns:
entry.name: entry
timeout_millis: 60000
- name: DeleteEntry
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: entry
timeout_millis: 60000
- name: GetEntry
flattening:
groups:
@ -454,6 +525,7 @@ interfaces:
groups:
- parameters:
- resource
- options
required_fields:
- resource
retry_codes_name: non_idempotent

View File

@ -0,0 +1,57 @@
// Copyright 2019 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.
//
syntax = "proto3";
package google.cloud.datacatalog.v1beta1;
import "google/api/field_behavior.proto";
import "google/cloud/datacatalog/v1beta1/timestamps.proto";
option cc_enable_arenas = true;
option go_package = "google.golang.org/genproto/googleapis/cloud/datacatalog/v1beta1;datacatalog";
option java_multiple_files = true;
option java_package = "com.google.cloud.datacatalog";
// Describes a Cloud Storage fileset entry.
message GcsFilesetSpec {
// Required. Patterns to identify a set of files in Google Cloud Storage.
//
// Examples of valid file_patterns:
//
// * `gs://bucket_name/*`: matches all files in `bucket_name`
// * `gs://bucket_name/file*`: matches files prefixed by `file` in
// `bucket_name`
// * `gs://bucket_name/a/*/b`: matches all files in `bucket_name` that match
// `a/*/b` pattern, such as `a/c/b`, `a/d/b`
// * `gs://another_bucket/a.txt`: matches `gs://another_bucket/a.txt`
repeated string file_patterns = 1 [(google.api.field_behavior) = REQUIRED];
// Output only. Sample files contained in this fileset, not all files contained in this
// fileset are represented here.
repeated GcsFileSpec sample_gcs_file_specs = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
}
// Specifications of a single file in GCS.
message GcsFileSpec {
// Required. The full file path. Example: `gs://bucket_name/a/b.txt`.
string file_path = 1 [(google.api.field_behavior) = REQUIRED];
// Output only. Timestamps about the GCS file.
SystemTimestamps gcs_timestamps = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The size of the file, in bytes.
int64 size_bytes = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
}

View File

@ -17,6 +17,8 @@ syntax = "proto3";
package google.cloud.datacatalog.v1beta1;
import "google/api/field_behavior.proto";
option cc_enable_arenas = true;
option go_package = "google.golang.org/genproto/googleapis/cloud/datacatalog/v1beta1;datacatalog";
option java_multiple_files = true;
@ -26,24 +28,24 @@ option java_package = "com.google.cloud.datacatalog";
message Schema {
// Required. Schema of columns. A maximum of 10,000 columns and sub-columns
// can be specified.
repeated ColumnSchema columns = 2;
repeated ColumnSchema columns = 2 [(google.api.field_behavior) = REQUIRED];
}
// Representation of a column within a schema. Columns could be nested inside
// other columns.
message ColumnSchema {
// Required. Name of the column.
string column = 6;
string column = 6 [(google.api.field_behavior) = REQUIRED];
// Required. Type of the column.
string type = 1;
string type = 1 [(google.api.field_behavior) = REQUIRED];
// Optional. Description of the column. Default value is an empty string.
string description = 2;
// Optional. A column's mode indicates whether the values in this column are
// required, nullable, etc. Only 'NULLABLE', 'REQUIRED' and 'REPEATED' are
// supported. Default mode is 'NULLABLE'.
// required, nullable, etc. Only `NULLABLE`, `REQUIRED` and `REPEATED` are
// supported. Default mode is `NULLABLE`.
string mode = 3;
// Optional. Schema of sub-columns. A column can have zero or more

View File

@ -17,7 +17,6 @@ syntax = "proto3";
package google.cloud.datacatalog.v1beta1;
import "google/api/annotations.proto";
import "google/protobuf/timestamp.proto";
option cc_enable_arenas = true;
@ -34,20 +33,22 @@ message SearchCatalogResult {
// Sub-type of the search result. This is a dot-delimited description of the
// resource's full type, and is the same as the value callers would provide in
// the "type" search facet. Examples: "entry.table", "entry.dataStream",
// "tagTemplate"
// the "type" search facet. Examples: `entry.table`, `entry.dataStream`,
// `tagTemplate`.
string search_result_subtype = 2;
// The relative resource name of the resource in URL format.
// Examples:
// "projects/{project_id}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}".
// "projects/{project_id}/tagTemplates/{tag_template_id}".
//
// * `projects/{project_id}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}`
// * `projects/{project_id}/tagTemplates/{tag_template_id}`
string relative_resource_name = 3;
// The full name of the cloud resource the entry belongs to. See:
// https://cloud.google.com/apis/design/resource_names#full_resource_name
// https://cloud.google.com/apis/design/resource_names#full_resource_name.
// Example:
// "//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId".
//
// * `//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId`
string linked_resource = 4;
}

View File

@ -17,6 +17,9 @@ syntax = "proto3";
package google.cloud.datacatalog.v1beta1;
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
option cc_enable_arenas = true;
option go_package = "google.golang.org/genproto/googleapis/cloud/datacatalog/v1beta1;datacatalog";
option java_multiple_files = true;
@ -25,16 +28,16 @@ option java_package = "com.google.cloud.datacatalog";
// Describes a BigQuery table.
message BigQueryTableSpec {
// Output only. The table source type.
TableSourceType table_source_type = 1;
TableSourceType table_source_type = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only.
oneof type_spec {
// Table view specification. This field should only be populated if
// table_source_type is BIGQUERY_VIEW.
// `table_source_type` is `BIGQUERY_VIEW`.
ViewSpec view_spec = 2;
// Spec of a BigQuery table. This field should only be populated if
// table_source_type is BIGQUERY_TABLE.
// `table_source_type` is `BIGQUERY_TABLE`.
TableSpec table_spec = 3;
}
}
@ -53,34 +56,42 @@ enum TableSourceType {
// Table view specification.
message ViewSpec {
// Output only. The query that defines the table view.
string view_query = 1;
// Required. Output only. The query that defines the table view.
string view_query = 1 [(google.api.field_behavior) = REQUIRED];
}
// Normal BigQuery table spec.
message TableSpec {
// Output only. If the table is a dated shard, i.e. with name pattern
// [prefix]YYYYMMDD, grouped_entry is the Data Catalog resource name of the
// date sharded grouped entry, e.g.
// projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}
// /entries/{entry_id}.
// Otherwise, grouped_entry will be empty.
string grouped_entry = 1;
// Output only. If the table is a dated shard, i.e., with name pattern
// `[prefix]YYYYMMDD`, `grouped_entry` is the Data Catalog resource name of
// the date sharded grouped entry, for example,
// `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}`.
// Otherwise, `grouped_entry` is empty.
string grouped_entry = 1 [
(google.api.field_behavior) = OUTPUT_ONLY,
(google.api.resource_reference) = {
type: "datacatalog.googleapis.com/Entry"
}
];
}
// Spec for a group of BigQuery tables with name pattern [prefix]YYYYMMDD.
// Spec for a group of BigQuery tables with name pattern `[prefix]YYYYMMDD`.
// Context:
// https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding
message BigQueryDateShardedSpec {
// Output only. The Data Catalog resource name of the dataset entry the
// current table belongs to, e.g.
// projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}
// /entries/{entry_id}
string dataset = 1;
// current table belongs to, for example,
// `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}`.
string dataset = 1 [
(google.api.field_behavior) = OUTPUT_ONLY,
(google.api.resource_reference) = {
type: "datacatalog.googleapis.com/Entry"
}
];
// Output only. The table name prefix of the shards. The name of any given
// shard is [table_prefix]YYYYMMDD, e.g. for shard MyTable20180101, the
// table_prefix is "MyTable"
// shard is `[table_prefix]YYYYMMDD`, for example, for shard
// `MyTable20180101`, the `table_prefix` is `MyTable`.
string table_prefix = 2;
// Output only. Total number of shards.

View File

@ -17,6 +17,8 @@ syntax = "proto3";
package google.cloud.datacatalog.v1beta1;
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/protobuf/timestamp.proto";
option cc_enable_arenas = true;
@ -27,22 +29,31 @@ option java_package = "com.google.cloud.datacatalog";
// Tags are used to attach custom metadata to Data Catalog resources. Tags
// conform to the specifications within their tag template.
message Tag {
option (google.api.resource) = {
type: "datacatalog.googleapis.com/Tag"
pattern: "projects/{project}/locations/{location}/entryGroups/{entry_group}/entries/{entry}/tags/{tag}"
};
// Required when used in
// [UpdateTagRequest][google.cloud.datacatalog.v1beta1.UpdateTagRequest]. The
// resource name of the tag in URL format. For example,
// projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id}",
// where tag_id is a system-generated identifier. Note that this Tag may not
// actually be stored in the location in this name.
// resource name of the tag in URL format. Example:
//
// * projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id}
//
// where `tag_id` is a system-generated identifier.
// Note that this Tag may not actually be stored in the location in this name.
string name = 1;
// Required. The resource name of the tag template that this tag uses. For
// example,
// projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}.
// Required. The resource name of the tag template that this tag uses.
// Example:
//
// * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
//
// This field cannot be modified after creation.
string template = 2;
string template = 2 [(google.api.field_behavior) = REQUIRED];
// Output only. The display name of the tag template.
string template_display_name = 5;
string template_display_name = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
// Optional. The scope within the parent resource that this tag is attached
// to. If not provided, the tag is attached to the parent resource itself.
@ -52,15 +63,17 @@ message Tag {
// Resources like Entry can have schemas associated with them. This scope
// allows users to attach tags to an individual column based on that schema.
//
// For attaching a tag to a nested column, use '.' to separate the column
// names: "outer_column.inner_column".
// For attaching a tag to a nested column, use `.` to separate the column
// names. Example:
//
// * `outer_column.inner_column`
string column = 4;
}
// Required. This maps the id of a tag field to the value of & additional
// Required. This maps the ID of a tag field to the value of and additional
// information about that field. Valid field IDs are defined by the tag's
// template. A tag must have at least 1 field and at most 500 fields.
map<string, TagField> fields = 3;
map<string, TagField> fields = 3 [(google.api.field_behavior) = REQUIRED];
}
// Contains the value and supporting information for a field within
@ -73,7 +86,7 @@ message TagField {
}
// Output only. The display name of this field.
string display_name = 1;
string display_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
// Required. The value of this field.
oneof kind {
@ -95,41 +108,60 @@ message TagField {
}
}
// Tag templates defines the schema of the tags used to attach to Data Catalog
// A tag template defines the schema of the tags used to attach to Data Catalog
// resources. It defines the mapping of accepted field names and types that can
// be used within the tag. The tag template also controls the access to the tag.
message TagTemplate {
option (google.api.resource) = {
type: "datacatalog.googleapis.com/TagTemplate"
pattern: "projects/{project}/locations/{location}/tagTemplates/{tag_template}"
};
// Required when used in
// [UpdateTagTemplateRequest][google.cloud.datacatalog.v1beta1.UpdateTagTemplateRequest].
// The resource name of the tag template in URL format. For example,
// projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}.
// The resource name of the tag template in URL format. Example:
//
// * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
//
// Note that this TagTemplate and its child resources may not actually be
// stored in the location in this name.
string name = 1;
// Optional. The display name for this template. Default value is an empty
// string.
// Optional. The display name for this template. Defaults to an empty string.
string display_name = 2;
// Required. Map of tag template field ids to the settings for the field.
// Required. Map of tag template field IDs to the settings for the field.
// This map is an exhaustive list of the allowed fields. This map must contain
// at least one field and at most 500 fields.
//
// The keys to this map are tag template field IDs. Field IDs can contain
// letters (both uppercase and lowercase), numbers (0-9) and underscores (_).
// Field IDs must be at least 1 character long and at most 64 characters long.
// Field IDs must start with a letter or underscore.
map<string, TagTemplateField> fields = 3;
// Field IDs must be at least 1 character long and at most
// 64 characters long. Field IDs must start with a letter or underscore.
map<string, TagTemplateField> fields = 3 [(google.api.field_behavior) = REQUIRED];
}
// The template for an individual field within a tag template.
message TagTemplateField {
// Optional. The display name for this field. Default value is an empty
// string.
option (google.api.resource) = {
type: "datacatalog.googleapis.com/TagTemplateField"
pattern: "projects/{project}/locations/{location}/tagTemplates/{tag_template}/fields/{field}"
};
// Output only. The resource name of the tag template field in URL format.
// Example:
//
// * projects/{project_id}/locations/{location}/tagTemplates/{tag_template}/fields/{field}
//
// Note that this TagTemplateField may not actually be stored in the location
// in this name.
string name = 6;
// Optional. The display name for this field. Defaults to an empty string.
string display_name = 1;
// Required. The type of value this tag field can contain.
FieldType type = 2;
FieldType type = 2 [(google.api.field_behavior) = REQUIRED];
}
message FieldType {
@ -137,15 +169,15 @@ message FieldType {
message EnumValue {
// Required. The display name of the enum value. Must not be an empty
// string.
string display_name = 1;
string display_name = 1 [(google.api.field_behavior) = REQUIRED];
}
// Required. The set of allowed values for this enum. This set must not be
// empty, the display names of the values in this set must not be empty and
// the display names of the values must be case-insensitively unique within
// this set. Currently, enum values can only be added to the list of allowed
// values. Deletion and renaming of enum values are not supported. Can have
// up to 500 allowed values.
// Required on create; optional on update. The set of allowed values for
// this enum. This set must not be empty, the display names of the values in
// this set must not be empty and the display names of the values must be
// case-insensitively unique within this set. Currently, enum values can
// only be added to the list of allowed values. Deletion and renaming of
// enum values are not supported. Can have up to 500 allowed values.
repeated EnumValue allowed_values = 1;
}

View File

@ -17,6 +17,7 @@ syntax = "proto3";
package google.cloud.datacatalog.v1beta1;
import "google/api/field_behavior.proto";
import "google/protobuf/timestamp.proto";
option cc_enable_arenas = true;
@ -26,13 +27,13 @@ option java_package = "com.google.cloud.datacatalog";
// Timestamps about this resource according to a particular system.
message SystemTimestamps {
// Output only. The creation time of the resource within the given system.
// The creation time of the resource within the given system.
google.protobuf.Timestamp create_time = 1;
// Output only. The last-modified time of the resource within the given
// system.
// The last-modified time of the resource within the given system.
google.protobuf.Timestamp update_time = 2;
// Output only. The expiration time of the resource within the given system.
google.protobuf.Timestamp expire_time = 3;
// Currently only apllicable to BigQuery resources.
google.protobuf.Timestamp expire_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
}