| // Copyright 2018 The Swarming Authors. All rights reserved. |
| // Use of this source code is governed by the Apache v2.0 license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto3"; |
| |
| package buildbucket.v2; |
| |
| option go_package = "go.chromium.org/luci/buildbucket/proto;buildbucketpb"; |
| |
| import "google/protobuf/timestamp.proto"; |
| |
| // A notification about a build. |
| message Notification { |
| // When this notification was created. |
| google.protobuf.Timestamp timestamp = 1; |
| |
| // Cloud Project ID of the Buildbucket instance that sent this notification, |
| // e.g. "cr-buildbucket". |
| // Useful if a service listens to both prod and dev instances of buildbucket. |
| string app_id = 2; |
| |
| // Buildbucket build id. |
| // Use GetBuild rpc to load the contents. |
| int64 build_id = 3; |
| |
| // User-defined opaque blob specified in NotificationConfig.user_data. |
| bytes user_data = 4; |
| } |
| |
| // Configuration of notifications. |
| message NotificationConfig { |
| // Target Cloud PubSub topic. |
| // Usually has format "projects/{cloud project}/topics/{topic name}". |
| // |
| // The PubSub message data is a Notification message in binary format. |
| // |
| // <buildbucket-app-id>@appspot.gserviceaccount.com must have |
| // "pubsub.topics.publish" permissions on the topic, where |
| // <buildbucket-app-id> is usually "cr-buildbucket." |
| string pubsub_topic = 1; |
| |
| // Will be available in Notification.user_data. |
| // Max length: 4096. |
| bytes user_data = 2; |
| } |