Add a new protobuf message named Upload to upload build metrics.
A new protobuf message named Upload is defined to send build metrics to the Android Build Server API after a build is completed. These metrics are collected from googlers only, as described in go/local-developers-metrics-wfh. Bug: b/140638454 Test: m nothing Change-Id: I5e49b5ace053913be2b75673cb1375f4cef37825 Merged-In: I5e49b5ace053913be2b75673cb1375f4cef37825
This commit is contained in:
parent
65e10fba52
commit
b48be3a2c1
|
@ -17,6 +17,7 @@ bootstrap_go_package {
|
|||
pkgPath: "android/soong/ui/metrics",
|
||||
deps: [
|
||||
"golang-protobuf-proto",
|
||||
"soong-ui-metrics_upload_proto",
|
||||
"soong-ui-metrics_proto",
|
||||
"soong-ui-tracer",
|
||||
],
|
||||
|
@ -35,3 +36,11 @@ bootstrap_go_package {
|
|||
],
|
||||
}
|
||||
|
||||
bootstrap_go_package {
|
||||
name: "soong-ui-metrics_upload_proto",
|
||||
pkgPath: "android/soong/ui/metrics/upload_proto",
|
||||
deps: ["golang-protobuf-proto"],
|
||||
srcs: [
|
||||
"upload_proto/upload.pb.go",
|
||||
],
|
||||
}
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Generates the golang source file of upload.proto file.
|
||||
|
||||
set -e
|
||||
|
||||
function die() { echo "ERROR: $1" >&2; exit 1; }
|
||||
|
||||
readonly error_msg="Maybe you need to run 'lunch aosp_arm-eng && m aprotoc blueprint_tools'?"
|
||||
|
||||
if ! hash aprotoc &>/dev/null; then
|
||||
die "could not find aprotoc. ${error_msg}"
|
||||
fi
|
||||
|
||||
if ! aprotoc --go_out=paths=source_relative:. upload.proto; then
|
||||
die "build failed. ${error_msg}"
|
||||
fi
|
|
@ -0,0 +1,122 @@
|
|||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// source: upload.proto
|
||||
|
||||
package soong_metrics_upload_proto
|
||||
|
||||
import (
|
||||
fmt "fmt"
|
||||
proto "github.com/golang/protobuf/proto"
|
||||
math "math"
|
||||
)
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
// This is a compile-time assertion to ensure that this generated file
|
||||
// is compatible with the proto package it is being compiled against.
|
||||
// A compilation error at this line likely means your copy of the
|
||||
// proto package needs to be updated.
|
||||
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
|
||||
|
||||
type Upload struct {
|
||||
// The timestamp in milliseconds that the build was created.
|
||||
CreationTimestampMs *uint64 `protobuf:"varint,1,opt,name=creation_timestamp_ms,json=creationTimestampMs" json:"creation_timestamp_ms,omitempty"`
|
||||
// The timestamp in milliseconds when the build was completed.
|
||||
CompletionTimestampMs *uint64 `protobuf:"varint,2,opt,name=completion_timestamp_ms,json=completionTimestampMs" json:"completion_timestamp_ms,omitempty"`
|
||||
// The branch name.
|
||||
BranchName *string `protobuf:"bytes,3,opt,name=branch_name,json=branchName" json:"branch_name,omitempty"`
|
||||
// The target name.
|
||||
TargetName *string `protobuf:"bytes,4,opt,name=target_name,json=targetName" json:"target_name,omitempty"`
|
||||
// A list of metrics filepaths to upload.
|
||||
MetricsFiles []string `protobuf:"bytes,5,rep,name=metrics_files,json=metricsFiles" json:"metrics_files,omitempty"`
|
||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
XXX_sizecache int32 `json:"-"`
|
||||
}
|
||||
|
||||
func (m *Upload) Reset() { *m = Upload{} }
|
||||
func (m *Upload) String() string { return proto.CompactTextString(m) }
|
||||
func (*Upload) ProtoMessage() {}
|
||||
func (*Upload) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_91b94b655bd2a7e5, []int{0}
|
||||
}
|
||||
|
||||
func (m *Upload) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_Upload.Unmarshal(m, b)
|
||||
}
|
||||
func (m *Upload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||
return xxx_messageInfo_Upload.Marshal(b, m, deterministic)
|
||||
}
|
||||
func (m *Upload) XXX_Merge(src proto.Message) {
|
||||
xxx_messageInfo_Upload.Merge(m, src)
|
||||
}
|
||||
func (m *Upload) XXX_Size() int {
|
||||
return xxx_messageInfo_Upload.Size(m)
|
||||
}
|
||||
func (m *Upload) XXX_DiscardUnknown() {
|
||||
xxx_messageInfo_Upload.DiscardUnknown(m)
|
||||
}
|
||||
|
||||
var xxx_messageInfo_Upload proto.InternalMessageInfo
|
||||
|
||||
func (m *Upload) GetCreationTimestampMs() uint64 {
|
||||
if m != nil && m.CreationTimestampMs != nil {
|
||||
return *m.CreationTimestampMs
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Upload) GetCompletionTimestampMs() uint64 {
|
||||
if m != nil && m.CompletionTimestampMs != nil {
|
||||
return *m.CompletionTimestampMs
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *Upload) GetBranchName() string {
|
||||
if m != nil && m.BranchName != nil {
|
||||
return *m.BranchName
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *Upload) GetTargetName() string {
|
||||
if m != nil && m.TargetName != nil {
|
||||
return *m.TargetName
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *Upload) GetMetricsFiles() []string {
|
||||
if m != nil {
|
||||
return m.MetricsFiles
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*Upload)(nil), "soong_metrics_upload.Upload")
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterFile("upload.proto", fileDescriptor_91b94b655bd2a7e5)
|
||||
}
|
||||
|
||||
var fileDescriptor_91b94b655bd2a7e5 = []byte{
|
||||
// 201 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0x29, 0x2d, 0xc8, 0xc9,
|
||||
0x4f, 0x4c, 0xd1, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x29, 0xce, 0xcf, 0xcf, 0x4b, 0x8f,
|
||||
0xcf, 0x4d, 0x2d, 0x29, 0xca, 0x4c, 0x2e, 0x8e, 0x87, 0xc8, 0x29, 0xdd, 0x66, 0xe4, 0x62, 0x0b,
|
||||
0x05, 0x33, 0x85, 0x8c, 0xb8, 0x44, 0x93, 0x8b, 0x52, 0x13, 0x4b, 0x32, 0xf3, 0xf3, 0xe2, 0x4b,
|
||||
0x32, 0x73, 0x53, 0x8b, 0x4b, 0x12, 0x73, 0x0b, 0xe2, 0x73, 0x8b, 0x25, 0x18, 0x15, 0x18, 0x35,
|
||||
0x58, 0x82, 0x84, 0x61, 0x92, 0x21, 0x30, 0x39, 0xdf, 0x62, 0x21, 0x33, 0x2e, 0xf1, 0xe4, 0xfc,
|
||||
0xdc, 0x82, 0x9c, 0x54, 0x4c, 0x5d, 0x4c, 0x60, 0x5d, 0xa2, 0x08, 0x69, 0x64, 0x7d, 0xf2, 0x5c,
|
||||
0xdc, 0x49, 0x45, 0x89, 0x79, 0xc9, 0x19, 0xf1, 0x79, 0x89, 0xb9, 0xa9, 0x12, 0xcc, 0x0a, 0x8c,
|
||||
0x1a, 0x9c, 0x41, 0x5c, 0x10, 0x21, 0xbf, 0xc4, 0xdc, 0x54, 0x90, 0x82, 0x92, 0xc4, 0xa2, 0xf4,
|
||||
0xd4, 0x12, 0x88, 0x02, 0x16, 0x88, 0x02, 0x88, 0x10, 0x58, 0x81, 0x32, 0x17, 0x2f, 0xcc, 0x2b,
|
||||
0x69, 0x99, 0x39, 0xa9, 0xc5, 0x12, 0xac, 0x0a, 0xcc, 0x1a, 0x9c, 0x41, 0x3c, 0x50, 0x41, 0x37,
|
||||
0x90, 0x98, 0x93, 0x4c, 0x94, 0x14, 0x36, 0x5f, 0xc7, 0x83, 0x43, 0x04, 0x10, 0x00, 0x00, 0xff,
|
||||
0xff, 0xe2, 0x01, 0x74, 0x65, 0x20, 0x01, 0x00, 0x00,
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
// Copyright 2020 Google Inc. All Rights Reserved.
|
||||
//
|
||||
// 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 = "proto2";
|
||||
|
||||
package soong_metrics_upload;
|
||||
option go_package = "soong_metrics_upload_proto";
|
||||
|
||||
message Upload {
|
||||
// The timestamp in milliseconds that the build was created.
|
||||
optional uint64 creation_timestamp_ms = 1;
|
||||
|
||||
// The timestamp in milliseconds when the build was completed.
|
||||
optional uint64 completion_timestamp_ms = 2;
|
||||
|
||||
// The branch name.
|
||||
optional string branch_name = 3;
|
||||
|
||||
// The target name.
|
||||
optional string target_name = 4;
|
||||
|
||||
// A list of metrics filepaths to upload.
|
||||
repeated string metrics_files = 5;
|
||||
}
|
Loading…
Reference in New Issue