123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186 |
- // 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.
- syntax = "proto3";
- package google.devtools.build.v1;
- import "google/devtools/build/v1/build_status.proto";
- import "google/protobuf/any.proto";
- import "google/protobuf/timestamp.proto";
- option cc_enable_arenas = true;
- option go_package = "google.golang.org/genproto/googleapis/devtools/build/v1;build";
- option java_multiple_files = true;
- option java_outer_classname = "BuildEventProto";
- option java_package = "com.google.devtools.build.v1";
- option php_namespace = "Google\\Cloud\\Build\\V1";
- // An event representing some state change that occurred in the build. This
- // message does not include field for uniquely identifying an event.
- message BuildEvent {
- // Notification that the build system has attempted to run the build tool.
- message InvocationAttemptStarted {
- // The number of the invocation attempt, starting at 1 and increasing by 1
- // for each new attempt. Can be used to determine if there is a later
- // invocation attempt replacing the current one a client is processing.
- int64 attempt_number = 1;
- // Arbitrary details about the invocation attempt.
- google.protobuf.Any details = 2;
- }
- // Notification that an invocation attempt has finished.
- message InvocationAttemptFinished {
- // Final status of the invocation.
- BuildStatus invocation_status = 3;
- // Arbitrary details about the invocation attempt.
- google.protobuf.Any details = 4;
- }
- // Notification that the build request is enqueued.
- message BuildEnqueued {
- // Additional details about the Build.
- google.protobuf.Any details = 1;
- }
- // Notification that the build request has finished, and no further
- // invocations will occur. Note that this applies to the entire Build.
- // Individual invocations trigger InvocationFinished when they finish.
- message BuildFinished {
- // Final status of the build.
- BuildStatus status = 1;
- // Additional details about the Build.
- google.protobuf.Any details = 2;
- }
- // Textual output written to standard output or standard error.
- message ConsoleOutput {
- // The output stream type.
- ConsoleOutputStream type = 1;
- // The output stream content.
- oneof output {
- // Regular UTF-8 output; normal text.
- string text_output = 2;
- // Used if the output is not UTF-8 text (for example, a binary proto).
- bytes binary_output = 3;
- }
- }
- // Notification of the end of a build event stream published by a build
- // component other than CONTROLLER (See StreamId.BuildComponents).
- message BuildComponentStreamFinished {
- // How did the event stream finish.
- enum FinishType {
- // Unknown or unspecified; callers should never set this value.
- FINISH_TYPE_UNSPECIFIED = 0;
- // Set by the event publisher to indicate a build event stream is
- // finished.
- FINISHED = 1;
- // Set by the WatchBuild RPC server when the publisher of a build event
- // stream stops publishing events without publishing a
- // BuildComponentStreamFinished event whose type equals FINISHED.
- EXPIRED = 2;
- }
- // How the event stream finished.
- FinishType type = 1;
- }
- // The timestamp of this event.
- google.protobuf.Timestamp event_time = 1;
- // //////////////////////////////////////////////////////////////////////////
- // Events that indicate a state change of a build request in the build
- // queue.
- oneof event {
- // An invocation attempt has started.
- InvocationAttemptStarted invocation_attempt_started = 51;
- // An invocation attempt has finished.
- InvocationAttemptFinished invocation_attempt_finished = 52;
- // The build is enqueued.
- BuildEnqueued build_enqueued = 53;
- // The build has finished. Set when the build is terminated.
- BuildFinished build_finished = 55;
- // An event containing printed text.
- ConsoleOutput console_output = 56;
- // Indicates the end of a build event stream (with the same StreamId) from
- // a build component executing the requested build task.
- // *** This field does not indicate the WatchBuild RPC is finished. ***
- BuildComponentStreamFinished component_stream_finished = 59;
- // Structured build event generated by Bazel about its execution progress.
- google.protobuf.Any bazel_event = 60;
- // An event that contains supplemental tool-specific information about
- // build execution.
- google.protobuf.Any build_execution_event = 61;
- // An event that contains supplemental tool-specific information about
- // source fetching.
- google.protobuf.Any source_fetch_event = 62;
- }
- }
- // Unique identifier for a build event stream.
- message StreamId {
- // Which build component generates this event stream. Each build component
- // may generate one event stream.
- enum BuildComponent {
- // Unknown or unspecified; callers should never set this value.
- UNKNOWN_COMPONENT = 0;
- // A component that coordinates builds.
- CONTROLLER = 1;
- // A component that runs executables needed to complete a build.
- WORKER = 2;
- // A component that builds something.
- TOOL = 3;
- }
- // The id of a Build message.
- string build_id = 1;
- // The unique invocation ID within this build.
- // It should be the same as {invocation} (below) during the migration.
- string invocation_id = 6;
- // The component that emitted this event.
- BuildComponent component = 3;
- }
- // The type of console output stream.
- enum ConsoleOutputStream {
- // Unspecified or unknown.
- UNKNOWN = 0;
- // Normal output stream.
- STDOUT = 1;
- // Error output stream.
- STDERR = 2;
- }
|