Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: [eventarc] Publish Eventarc Advanced protos #5773

Merged
merged 2 commits into from
Oct 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 23 additions & 2 deletions packages/google-cloud-eventarc/README.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -106,15 +106,16 @@ message Channel {
// by the provider to register the channel for publishing.
string activation_token = 10 [(google.api.field_behavior) = OUTPUT_ONLY];

// Optional. Resource name of a KMS crypto key (managed by the user) used to
// Resource name of a KMS crypto key (managed by the user) used to
// encrypt/decrypt their event data.
//
// It must match the pattern
// `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
string crypto_key_name = 11 [
(google.api.field_behavior) = OPTIONAL,
(google.api.resource_reference) = {
type: "cloudkms.googleapis.com/CryptoKey"
}
];
string crypto_key_name = 11 [(google.api.resource_reference) = {
type: "cloudkms.googleapis.com/CryptoKey"
}];

// Output only. Whether or not this Channel satisfies the requirements of
// physical zone separation
bool satisfies_pzs = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
}
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,12 @@ message ChannelConnection {
];

// Output only. The creation time.
google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp create_time = 6
[(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. The last-modified time.
google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp update_time = 7
[(google.api.field_behavior) = OUTPUT_ONLY];

// Input only. Activation token for the channel. The token will be used
// during the creation of ChannelConnection to bind the channel with the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,17 @@ message Provider {
singular: "provider"
};

// Output only. In `projects/{project}/locations/{location}/providers/{provider_id}`
// format.
// Output only. In
// `projects/{project}/locations/{location}/providers/{provider_id}` format.
string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. Human friendly name for the Provider. For example "Cloud Storage".
// Output only. Human friendly name for the Provider. For example "Cloud
// Storage".
string display_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. Event types for this provider.
repeated EventType event_types = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
repeated EventType event_types = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
}

// A representation of the event type resource.
Expand All @@ -59,7 +61,8 @@ message EventType {
string description = 2 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. Filtering attributes for the event type.
repeated FilteringAttribute filtering_attributes = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
repeated FilteringAttribute filtering_attributes = 3
[(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. URI for the event schema.
// For example
Expand All @@ -76,11 +79,11 @@ message FilteringAttribute {
// Output only. Description of the purpose of the attribute.
string description = 2 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. If true, the triggers for this provider should always specify a filter
// on these attributes. Trigger creation will fail otherwise.
// Output only. If true, the triggers for this provider should always specify
// a filter on these attributes. Trigger creation will fail otherwise.
bool required = 3 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. If true, the attribute accepts matching expressions in the Eventarc
// PathPattern format.
// Output only. If true, the attribute accepts matching expressions in the
// Eventarc PathPattern format.
bool path_pattern_supported = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
// Copyright 2024 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.eventarc.v1;

import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/protobuf/timestamp.proto";

option csharp_namespace = "Google.Cloud.Eventarc.V1";
option go_package = "cloud.google.com/go/eventarc/apiv1/eventarcpb;eventarcpb";
option java_multiple_files = true;
option java_outer_classname = "EnrollmentProto";
option java_package = "com.google.cloud.eventarc.v1";
option php_namespace = "Google\\Cloud\\Eventarc\\V1";
option ruby_package = "Google::Cloud::Eventarc::V1";

// An enrollment represents a subscription for messages on a particular message
// bus. It defines a matching criteria for messages on the bus and the
// subscriber endpoint where matched messages should be delivered.
message Enrollment {
option (google.api.resource) = {
type: "eventarc.googleapis.com/Enrollment"
pattern: "projects/{project}/locations/{location}/enrollments/{enrollment}"
plural: "enrollments"
singular: "enrollment"
};

// Identifier. Resource name of the form
// projects/{project}/locations/{location}/enrollments/{enrollment}
string name = 1 [(google.api.field_behavior) = IDENTIFIER];

// Output only. Server assigned unique identifier for the channel. The value
// is a UUID4 string and guaranteed to remain unchanged until the resource is
// deleted.
string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. This checksum is computed by the server based on the value of
// other fields, and might be sent only on update and delete requests to
// ensure that the client has an up-to-date value before proceeding.
string etag = 3 [(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. The creation time.
google.protobuf.Timestamp create_time = 4
[(google.api.field_behavior) = OUTPUT_ONLY];

// Output only. The last-modified time.
google.protobuf.Timestamp update_time = 5
[(google.api.field_behavior) = OUTPUT_ONLY];

// Optional. Resource labels.
map<string, string> labels = 6 [(google.api.field_behavior) = OPTIONAL];

// Optional. Resource annotations.
map<string, string> annotations = 7 [(google.api.field_behavior) = OPTIONAL];

// Optional. Resource display name.
string display_name = 8 [(google.api.field_behavior) = OPTIONAL];

// Required. A CEL expression identifying which messages this enrollment
// applies to.
string cel_match = 9 [(google.api.field_behavior) = REQUIRED];

// Required. Resource name of the message bus identifying the source of the
// messages. It matches the form
// projects/{project}/locations/{location}/messageBuses/{messageBus}.
string message_bus = 10 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "eventarc.googleapis.com/MessageBus"
}
];

// Required. Destination is the Pipeline that the Enrollment is delivering to.
// It must point to the full resource name of a Pipeline. Format:
// "projects/{PROJECT_ID}/locations/{region}/pipelines/{PIPELINE_ID)"
string destination = 11 [(google.api.field_behavior) = REQUIRED];
}
Loading
Loading