tricium

package
v0.0.0-...-e560ebb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 13, 2021 License: BSD-3-Clause Imports: 23 Imported by: 0

README

Tricium API .proto files

This directory includes the protocol buffer service and message definitions for the public API of Tricium.

To regenerate, run go generate; the behavior of this command depends on the directives in gen.go.

Documentation

Index

Constants

View Source
const (
	// GitFileDetailsPath stores the path to the GIT_FILE_DETAILS data type file.
	GitFileDetailsPath = "tricium/data/git_file_details.json"
	// FilesPath stores the path to the FILES data type file.
	FilesPath = "tricium/data/files.json"
	// ResultsPath stores the path to the RESULTS data type file.
	ResultsPath = "tricium/data/results.json"
)

Variables

View Source
var (
	Acl_Role_name = map[int32]string{
		0: "READER",
		1: "REQUESTER",
	}
	Acl_Role_value = map[string]int32{
		"READER":    0,
		"REQUESTER": 1,
	}
)

Enum value maps for Acl_Role.

View Source
var (
	Data_Type_name = map[int32]string{
		0: "NONE",
		1: "GIT_FILE_DETAILS",
		2: "FILES",
		4: "RESULTS",
	}
	Data_Type_value = map[string]int32{
		"NONE":             0,
		"GIT_FILE_DETAILS": 1,
		"FILES":            2,
		"RESULTS":          4,
	}
)

Enum value maps for Data_Type.

View Source
var (
	Data_Status_name = map[int32]string{
		0: "MODIFIED",
		1: "ADDED",
		2: "DELETED",
		3: "RENAMED",
		4: "COPIED",
		5: "REWRITTEN",
	}
	Data_Status_value = map[string]int32{
		"MODIFIED":  0,
		"ADDED":     1,
		"DELETED":   2,
		"RENAMED":   3,
		"COPIED":    4,
		"REWRITTEN": 5,
	}
)

Enum value maps for Data_Status.

View Source
var (
	Function_Type_name = map[int32]string{
		0: "NONE",
		1: "ISOLATOR",
		2: "ANALYZER",
	}
	Function_Type_value = map[string]int32{
		"NONE":     0,
		"ISOLATOR": 1,
		"ANALYZER": 2,
	}
)

Enum value maps for Function_Type.

View Source
var (
	Platform_Name_name = map[int32]string{
		0:  "ANY",
		1:  "LINUX",
		2:  "UBUNTU",
		11: "ANDROID",
		16: "MAC",
		17: "OSX",
		18: "IOS",
		21: "WINDOWS",
		26: "CHROMEOS",
		31: "FUCHSIA",
	}
	Platform_Name_value = map[string]int32{
		"ANY":      0,
		"LINUX":    1,
		"UBUNTU":   2,
		"ANDROID":  11,
		"MAC":      16,
		"OSX":      17,
		"IOS":      18,
		"WINDOWS":  21,
		"CHROMEOS": 26,
		"FUCHSIA":  31,
	}
)

Enum value maps for Platform_Name.

View Source
var (
	State_name = map[int32]string{
		0: "PENDING",
		1: "RUNNING",
		2: "SUCCESS",
		3: "FAILURE",
		6: "ABORTED",
	}
	State_value = map[string]int32{
		"PENDING": 0,
		"RUNNING": 1,
		"SUCCESS": 2,
		"FAILURE": 3,
		"ABORTED": 6,
	}
)

Enum value maps for State.

View Source
var File_infra_tricium_api_v1_config_proto protoreflect.FileDescriptor
View Source
var File_infra_tricium_api_v1_data_proto protoreflect.FileDescriptor
View Source
var File_infra_tricium_api_v1_function_proto protoreflect.FileDescriptor
View Source
var File_infra_tricium_api_v1_platform_proto protoreflect.FileDescriptor
View Source
var File_infra_tricium_api_v1_tricium_proto protoreflect.FileDescriptor

Functions

func CanRead

func CanRead(c context.Context, pc *ProjectConfig) (bool, error)

CanRead checks the current user can read project results.

func CanRequest

func CanRequest(c context.Context, pc *ProjectConfig) (bool, error)

CanRequest checks the current user can make service requests for the project.

func FileDescriptorSet

func FileDescriptorSet() *descriptorpb.FileDescriptorSet

FileDescriptorSet returns a descriptor set for this proto package, which includes all defined services, and all transitive dependencies.

Will not return nil.

Do NOT modify the returned descriptor.

func GetPathForDataType

func GetPathForDataType(t interface{}) (string, error)

GetPathForDataType returns the file path to use for the provided Tricium data type.

func IsDone

func IsDone(s State) bool

IsDone returns true if the state is done.

The state is considered done if it is not pending or running.

func PlatformBitPosToMask

func PlatformBitPosToMask(pos Platform_Name) int64

PlatformBitPosToMask returns a bit field with the given position set.

As a special case, it returns 0 for position 0 (Platform_ANY).

func ReadDataType

func ReadDataType(prefix string, t proto.Message) error

ReadDataType reads a Tricium data type to the provided type.

func RegisterTriciumServer

func RegisterTriciumServer(s prpc.Registrar, srv TriciumServer)

func RepoURL

func RepoURL(repo *RepoDetails) string

RepoURL returns the repository URL string for a RepoDetails.

func SupportsPlatform

func SupportsPlatform(f *Function, platform Platform_Name) bool

SupportsPlatform checks if the provided function has an implementation providing data for the provided platform.

func ValidateFunction

func ValidateFunction(f *Function, sc *ServiceConfig) error

ValidateFunction checks if the function config entry is valid.

A valid function config entry has a name, valid deps and valid impl entries.

Note that there are more requirements for a function config to be fully valid in a merged config; for instance, data dependencies are required.

func WriteDataType

func WriteDataType(prefix string, t proto.Message) (string, error)

WriteDataType writes a Tricium data type to the file path assigned to the type.

Types

type Acl

type Acl struct {

	// Role of a group or identity.
	Role Acl_Role `protobuf:"varint,1,opt,name=role,proto3,enum=tricium.Acl_Role" json:"role,omitempty"`
	// Name of group, as defined in the auth service. Specify either group or
	// identity, not both.
	Group string `protobuf:"bytes,2,opt,name=group,proto3" json:"group,omitempty"`
	// Identity, as defined by the auth service. Can be either an email address
	// or an identity string, for instance, "anonymous:anonymous" for anonymous
	// users. Specify either group or identity, not both.
	Identity string `protobuf:"bytes,3,opt,name=identity,proto3" json:"identity,omitempty"`
	// contains filtered or unexported fields
}

Access control rules.

func (*Acl) Descriptor deprecated

func (*Acl) Descriptor() ([]byte, []int)

Deprecated: Use Acl.ProtoReflect.Descriptor instead.

func (*Acl) FromProperty

func (p *Acl) FromProperty(prop datastore.Property) error

FromProperty implements datastore.PropertyConverter. It parses a '[]byte' into an embedded 'Acl' when used with the "go.chromium.org/luci/gae" library.

func (*Acl) GetGroup

func (x *Acl) GetGroup() string

func (*Acl) GetIdentity

func (x *Acl) GetIdentity() string

func (*Acl) GetRole

func (x *Acl) GetRole() Acl_Role

func (*Acl) ProtoMessage

func (*Acl) ProtoMessage()

func (*Acl) ProtoReflect

func (x *Acl) ProtoReflect() protoreflect.Message

func (*Acl) Reset

func (x *Acl) Reset()

func (*Acl) String

func (x *Acl) String() string

func (*Acl) ToProperty

func (p *Acl) ToProperty() (prop datastore.Property, err error)

ToProperty implements datastore.PropertyConverter. It causes an embedded 'Acl' to serialize to an unindexed '[]byte' when used with the "go.chromium.org/luci/gae" library.

type Acl_Role

type Acl_Role int32

Roles relevant to Tricium.

const (
	// Can read progress/results.
	Acl_READER Acl_Role = 0
	// Can request analysis.
	Acl_REQUESTER Acl_Role = 1
)

func (Acl_Role) Descriptor

func (Acl_Role) Descriptor() protoreflect.EnumDescriptor

func (Acl_Role) Enum

func (x Acl_Role) Enum() *Acl_Role

func (Acl_Role) EnumDescriptor deprecated

func (Acl_Role) EnumDescriptor() ([]byte, []int)

Deprecated: Use Acl_Role.Descriptor instead.

func (Acl_Role) Number

func (x Acl_Role) Number() protoreflect.EnumNumber

func (Acl_Role) String

func (x Acl_Role) String() string

func (Acl_Role) Type

type AnalyzeRequest

type AnalyzeRequest struct {

	// Name of the project in luci-config, used to get the project config.
	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
	// Files to analyze in the project, with metadata.
	Files []*Data_File `protobuf:"bytes,5,rep,name=files,proto3" json:"files,omitempty"`
	// Types that are assignable to Source:
	//	*AnalyzeRequest_GerritRevision
	//	*AnalyzeRequest_GitCommit
	Source isAnalyzeRequest_Source `protobuf_oneof:"source"`
	// contains filtered or unexported fields
}

AnalyzeRequest contains the details needed for an analysis request.

func (*AnalyzeRequest) Descriptor deprecated

func (*AnalyzeRequest) Descriptor() ([]byte, []int)

Deprecated: Use AnalyzeRequest.ProtoReflect.Descriptor instead.

func (*AnalyzeRequest) GetFiles

func (x *AnalyzeRequest) GetFiles() []*Data_File

func (*AnalyzeRequest) GetGerritRevision

func (x *AnalyzeRequest) GetGerritRevision() *GerritRevision

func (*AnalyzeRequest) GetGitCommit

func (x *AnalyzeRequest) GetGitCommit() *GitCommit

func (*AnalyzeRequest) GetProject

func (x *AnalyzeRequest) GetProject() string

func (*AnalyzeRequest) GetSource

func (m *AnalyzeRequest) GetSource() isAnalyzeRequest_Source

func (*AnalyzeRequest) ProtoMessage

func (*AnalyzeRequest) ProtoMessage()

func (*AnalyzeRequest) ProtoReflect

func (x *AnalyzeRequest) ProtoReflect() protoreflect.Message

func (*AnalyzeRequest) Reset

func (x *AnalyzeRequest) Reset()

func (*AnalyzeRequest) String

func (x *AnalyzeRequest) String() string

type AnalyzeRequest_GerritRevision

type AnalyzeRequest_GerritRevision struct {
	GerritRevision *GerritRevision `protobuf:"bytes,7,opt,name=gerrit_revision,json=gerritRevision,proto3,oneof"`
}

type AnalyzeRequest_GitCommit

type AnalyzeRequest_GitCommit struct {
	GitCommit *GitCommit `protobuf:"bytes,8,opt,name=git_commit,json=gitCommit,proto3,oneof"`
}

type AnalyzeResponse

type AnalyzeResponse struct {

	// ID of the run started for this request.
	//
	// This ID can be used to track progress and request results.
	RunId string `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
	// contains filtered or unexported fields
}

func (*AnalyzeResponse) Descriptor deprecated

func (*AnalyzeResponse) Descriptor() ([]byte, []int)

Deprecated: Use AnalyzeResponse.ProtoReflect.Descriptor instead.

func (*AnalyzeResponse) GetRunId

func (x *AnalyzeResponse) GetRunId() string

func (*AnalyzeResponse) ProtoMessage

func (*AnalyzeResponse) ProtoMessage()

func (*AnalyzeResponse) ProtoReflect

func (x *AnalyzeResponse) ProtoReflect() protoreflect.Message

func (*AnalyzeResponse) Reset

func (x *AnalyzeResponse) Reset()

func (*AnalyzeResponse) String

func (x *AnalyzeResponse) String() string

type Data

type Data struct {
	// contains filtered or unexported fields
}

Tricium data types.

Any data type provided or needed by a Tricium function.

func (*Data) Descriptor deprecated

func (*Data) Descriptor() ([]byte, []int)

Deprecated: Use Data.ProtoReflect.Descriptor instead.

func (*Data) ProtoMessage

func (*Data) ProtoMessage()

func (*Data) ProtoReflect

func (x *Data) ProtoReflect() protoreflect.Message

func (*Data) Reset

func (x *Data) Reset()

func (*Data) String

func (x *Data) String() string

type Data_Comment

type Data_Comment struct {

	// Comment ID.
	//
	// This is an UUID generated by the Tricium service and used for tracking
	// of comment feedback. Analyzers should leave this field empty.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// Category of the result, encoded as a path with the analyzer name as the
	// root, followed by an arbitrary number of subcategories, for example
	// "ClangTidy/llvm-header-guard".
	Category string `protobuf:"bytes,2,opt,name=category,proto3" json:"category,omitempty"`
	// Comment message. This should be a short message suitable as a code
	// review comment.
	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
	// Path to the file this comment is for.
	//
	// If this path is the empty string, then the comment is on the commit
	// message text, rather than an actual file.
	Path string `protobuf:"bytes,5,opt,name=path,proto3" json:"path,omitempty"`
	// Position information. If start_line is omitted, then the comment
	// will be a file-level comment.
	StartLine int32 `protobuf:"varint,6,opt,name=start_line,json=startLine,proto3" json:"start_line,omitempty"` // 1-based, inclusive.
	EndLine   int32 `protobuf:"varint,7,opt,name=end_line,json=endLine,proto3" json:"end_line,omitempty"`       // 1-based, inclusive.
	StartChar int32 `protobuf:"varint,8,opt,name=start_char,json=startChar,proto3" json:"start_char,omitempty"` // 0-based, inclusive.
	EndChar   int32 `protobuf:"varint,9,opt,name=end_char,json=endChar,proto3" json:"end_char,omitempty"`       // 0-based, exclusive.
	// Suggested fixes for the identified issue.
	Suggestions []*Data_Suggestion `protobuf:"bytes,10,rep,name=suggestions,proto3" json:"suggestions,omitempty"`
	// When true, show on both changed and unchanged lines.
	// When false, only show on changed lines.
	ShowOnUnchangedLines bool `` /* 127-byte string literal not displayed */
	// contains filtered or unexported fields
}

Results.Comment, results as comments.

Similar content as that needed to provide robot comments in Gerrit, https://gerrit-review.googlesource.com/Documentation/config-robot-comments.html

func (*Data_Comment) Descriptor deprecated

func (*Data_Comment) Descriptor() ([]byte, []int)

Deprecated: Use Data_Comment.ProtoReflect.Descriptor instead.

func (*Data_Comment) GetCategory

func (x *Data_Comment) GetCategory() string

func (*Data_Comment) GetEndChar

func (x *Data_Comment) GetEndChar() int32

func (*Data_Comment) GetEndLine

func (x *Data_Comment) GetEndLine() int32

func (*Data_Comment) GetId

func (x *Data_Comment) GetId() string

func (*Data_Comment) GetMessage

func (x *Data_Comment) GetMessage() string

func (*Data_Comment) GetPath

func (x *Data_Comment) GetPath() string

func (*Data_Comment) GetShowOnUnchangedLines

func (x *Data_Comment) GetShowOnUnchangedLines() bool

func (*Data_Comment) GetStartChar

func (x *Data_Comment) GetStartChar() int32

func (*Data_Comment) GetStartLine

func (x *Data_Comment) GetStartLine() int32

func (*Data_Comment) GetSuggestions

func (x *Data_Comment) GetSuggestions() []*Data_Suggestion

func (*Data_Comment) ProtoMessage

func (*Data_Comment) ProtoMessage()

func (*Data_Comment) ProtoReflect

func (x *Data_Comment) ProtoReflect() protoreflect.Message

func (*Data_Comment) Reset

func (x *Data_Comment) Reset()

func (*Data_Comment) String

func (x *Data_Comment) String() string

type Data_File

type Data_File struct {

	// Relative file path.
	//
	// The path is relative to the root of the repository being analyzed,
	// and the path separator character is "/".
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// Whether or not this file contains binary content (not text).
	IsBinary bool `protobuf:"varint,2,opt,name=is_binary,json=isBinary,proto3" json:"is_binary,omitempty"`
	// How the file was changed.
	Status Data_Status `protobuf:"varint,3,opt,name=status,proto3,enum=tricium.Data_Status" json:"status,omitempty"`
	// contains filtered or unexported fields
}

func FilterFiles

func FilterFiles(files []*Data_File, filters ...string) ([]*Data_File, error)

FilterFiles returns files whose basename matches any of the given patterns.

func (*Data_File) Descriptor deprecated

func (*Data_File) Descriptor() ([]byte, []int)

Deprecated: Use Data_File.ProtoReflect.Descriptor instead.

func (*Data_File) FromProperty

func (p *Data_File) FromProperty(prop datastore.Property) error

FromProperty implements datastore.PropertyConverter. It parses a '[]byte' into an embedded 'Data_File' when used with the "go.chromium.org/luci/gae" library.

func (*Data_File) GetIsBinary

func (x *Data_File) GetIsBinary() bool

func (*Data_File) GetPath

func (x *Data_File) GetPath() string

func (*Data_File) GetStatus

func (x *Data_File) GetStatus() Data_Status

func (*Data_File) ProtoMessage

func (*Data_File) ProtoMessage()

func (*Data_File) ProtoReflect

func (x *Data_File) ProtoReflect() protoreflect.Message

func (*Data_File) Reset

func (x *Data_File) Reset()

func (*Data_File) String

func (x *Data_File) String() string

func (*Data_File) ToProperty

func (p *Data_File) ToProperty() (prop datastore.Property, err error)

ToProperty implements datastore.PropertyConverter. It causes an embedded 'Data_File' to serialize to an unindexed '[]byte' when used with the "go.chromium.org/luci/gae" library.

type Data_Files

type Data_Files struct {
	Platforms     int64        `protobuf:"varint,1,opt,name=platforms,proto3" json:"platforms,omitempty"`
	Files         []*Data_File `protobuf:"bytes,3,rep,name=files,proto3" json:"files,omitempty"`
	CommitMessage string       `protobuf:"bytes,4,opt,name=commit_message,json=commitMessage,proto3" json:"commit_message,omitempty"`
	// contains filtered or unexported fields
}

List of paths included in the analyzer input.

PATH: tricium/data/files.json

func (*Data_Files) Descriptor deprecated

func (*Data_Files) Descriptor() ([]byte, []int)

Deprecated: Use Data_Files.ProtoReflect.Descriptor instead.

func (*Data_Files) GetCommitMessage

func (x *Data_Files) GetCommitMessage() string

func (*Data_Files) GetFiles

func (x *Data_Files) GetFiles() []*Data_File

func (*Data_Files) GetPlatforms

func (x *Data_Files) GetPlatforms() int64

func (*Data_Files) ProtoMessage

func (*Data_Files) ProtoMessage()

func (*Data_Files) ProtoReflect

func (x *Data_Files) ProtoReflect() protoreflect.Message

func (*Data_Files) Reset

func (x *Data_Files) Reset()

func (*Data_Files) String

func (x *Data_Files) String() string

type Data_GitFileDetails

type Data_GitFileDetails struct {

	// The platforms this data is tied to encoded as a bitmap.
	//
	// The bit number for each platform should correspond to the enum
	// position number of the same platform in the Platform.Name enum.
	//
	// This includes the ANY platform, encoded as zero, which should
	// be used for any data that is not platform-specific.
	Platforms     int64        `protobuf:"varint,1,opt,name=platforms,proto3" json:"platforms,omitempty"`
	Repository    string       `protobuf:"bytes,2,opt,name=repository,proto3" json:"repository,omitempty"`
	Ref           string       `protobuf:"bytes,3,opt,name=ref,proto3" json:"ref,omitempty"`
	Files         []*Data_File `protobuf:"bytes,4,rep,name=files,proto3" json:"files,omitempty"`
	CommitMessage string       `protobuf:"bytes,5,opt,name=commit_message,json=commitMessage,proto3" json:"commit_message,omitempty"`
	// contains filtered or unexported fields
}

Details for retrieval of file content from a Git repository.

In practice this was only used as an input to GitFileDetails, and is now DEPRECATED.

PATH: tricium/data/git_file_details.json

func (*Data_GitFileDetails) Descriptor deprecated

func (*Data_GitFileDetails) Descriptor() ([]byte, []int)

Deprecated: Use Data_GitFileDetails.ProtoReflect.Descriptor instead.

func (*Data_GitFileDetails) GetCommitMessage

func (x *Data_GitFileDetails) GetCommitMessage() string

func (*Data_GitFileDetails) GetFiles

func (x *Data_GitFileDetails) GetFiles() []*Data_File

func (*Data_GitFileDetails) GetPlatforms

func (x *Data_GitFileDetails) GetPlatforms() int64

func (*Data_GitFileDetails) GetRef

func (x *Data_GitFileDetails) GetRef() string

func (*Data_GitFileDetails) GetRepository

func (x *Data_GitFileDetails) GetRepository() string

func (*Data_GitFileDetails) ProtoMessage

func (*Data_GitFileDetails) ProtoMessage()

func (*Data_GitFileDetails) ProtoReflect

func (x *Data_GitFileDetails) ProtoReflect() protoreflect.Message

func (*Data_GitFileDetails) Reset

func (x *Data_GitFileDetails) Reset()

func (*Data_GitFileDetails) String

func (x *Data_GitFileDetails) String() string

type Data_Replacement

type Data_Replacement struct {

	// Path to the file for this replacement.
	//
	// An empty string indicates the commit message.
	Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	// A replacement string.
	Replacement string `protobuf:"bytes,2,opt,name=replacement,proto3" json:"replacement,omitempty"`
	// A continuous section of the file to replace.
	StartLine int32 `protobuf:"varint,3,opt,name=start_line,json=startLine,proto3" json:"start_line,omitempty"` // 1-based, inclusive.
	EndLine   int32 `protobuf:"varint,4,opt,name=end_line,json=endLine,proto3" json:"end_line,omitempty"`       // 1-based, inclusive.
	StartChar int32 `protobuf:"varint,5,opt,name=start_char,json=startChar,proto3" json:"start_char,omitempty"` // 0-based, inclusive.
	EndChar   int32 `protobuf:"varint,6,opt,name=end_char,json=endChar,proto3" json:"end_char,omitempty"`       // 0-based, exclusive.
	// contains filtered or unexported fields
}

A suggested replacement.

The replacement should be for one continuous section of a file.

func (*Data_Replacement) Descriptor deprecated

func (*Data_Replacement) Descriptor() ([]byte, []int)

Deprecated: Use Data_Replacement.ProtoReflect.Descriptor instead.

func (*Data_Replacement) GetEndChar

func (x *Data_Replacement) GetEndChar() int32

func (*Data_Replacement) GetEndLine

func (x *Data_Replacement) GetEndLine() int32

func (*Data_Replacement) GetPath

func (x *Data_Replacement) GetPath() string

func (*Data_Replacement) GetReplacement

func (x *Data_Replacement) GetReplacement() string

func (*Data_Replacement) GetStartChar

func (x *Data_Replacement) GetStartChar() int32

func (*Data_Replacement) GetStartLine

func (x *Data_Replacement) GetStartLine() int32

func (*Data_Replacement) ProtoMessage

func (*Data_Replacement) ProtoMessage()

func (*Data_Replacement) ProtoReflect

func (x *Data_Replacement) ProtoReflect() protoreflect.Message

func (*Data_Replacement) Reset

func (x *Data_Replacement) Reset()

func (*Data_Replacement) String

func (x *Data_Replacement) String() string

type Data_Results

type Data_Results struct {
	Platforms int64 `protobuf:"varint,1,opt,name=platforms,proto3" json:"platforms,omitempty"`
	// Zero or more results found as comments, either inline comments or change
	// comments (comments without line positions).
	Comments []*Data_Comment `protobuf:"bytes,2,rep,name=comments,proto3" json:"comments,omitempty"`
	// contains filtered or unexported fields
}

Results from running a Tricium analyzer.

Results are returned to the Tricium service from Buildbucket properties on executed Tricium recipes.

PATH: tricium/data/results.json BUILDBUCKET PROPERTIES: output.properties.comments

output.properties.num_comments

func (*Data_Results) Descriptor deprecated

func (*Data_Results) Descriptor() ([]byte, []int)

Deprecated: Use Data_Results.ProtoReflect.Descriptor instead.

func (*Data_Results) GetComments

func (x *Data_Results) GetComments() []*Data_Comment

func (*Data_Results) GetPlatforms

func (x *Data_Results) GetPlatforms() int64

func (*Data_Results) ProtoMessage

func (*Data_Results) ProtoMessage()

func (*Data_Results) ProtoReflect

func (x *Data_Results) ProtoReflect() protoreflect.Message

func (*Data_Results) Reset

func (x *Data_Results) Reset()

func (*Data_Results) String

func (x *Data_Results) String() string

type Data_Status

type Data_Status int32

File change status.

This corresponds to the status field provided by Gerrit in FileInfo: https://goo.gl/ABFHDg

const (
	Data_MODIFIED  Data_Status = 0
	Data_ADDED     Data_Status = 1
	Data_DELETED   Data_Status = 2
	Data_RENAMED   Data_Status = 3
	Data_COPIED    Data_Status = 4
	Data_REWRITTEN Data_Status = 5
)

func (Data_Status) Descriptor

func (Data_Status) Enum

func (x Data_Status) Enum() *Data_Status

func (Data_Status) EnumDescriptor deprecated

func (Data_Status) EnumDescriptor() ([]byte, []int)

Deprecated: Use Data_Status.Descriptor instead.

func (Data_Status) Number

func (x Data_Status) Number() protoreflect.EnumNumber

func (Data_Status) String

func (x Data_Status) String() string

func (Data_Status) Type

type Data_Suggestion

type Data_Suggestion struct {

	// A brief description of the suggested fix.
	Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
	// Fix as a list of replacements.
	Replacements []*Data_Replacement `protobuf:"bytes,2,rep,name=replacements,proto3" json:"replacements,omitempty"`
	// contains filtered or unexported fields
}

Suggested fix.

A fix may include replacements in any file in the same repo as the file of the corresponding comment.

func (*Data_Suggestion) Descriptor deprecated

func (*Data_Suggestion) Descriptor() ([]byte, []int)

Deprecated: Use Data_Suggestion.ProtoReflect.Descriptor instead.

func (*Data_Suggestion) GetDescription

func (x *Data_Suggestion) GetDescription() string

func (*Data_Suggestion) GetReplacements

func (x *Data_Suggestion) GetReplacements() []*Data_Replacement

func (*Data_Suggestion) ProtoMessage

func (*Data_Suggestion) ProtoMessage()

func (*Data_Suggestion) ProtoReflect

func (x *Data_Suggestion) ProtoReflect() protoreflect.Message

func (*Data_Suggestion) Reset

func (x *Data_Suggestion) Reset()

func (*Data_Suggestion) String

func (x *Data_Suggestion) String() string

type Data_Type

type Data_Type int32

Available data types should be listed in this enum and have a corresponding nested message with a mandatory platforms fields, see GitFileDetails for field details.

const (
	Data_NONE             Data_Type = 0
	Data_GIT_FILE_DETAILS Data_Type = 1
	Data_FILES            Data_Type = 2
	Data_RESULTS          Data_Type = 4
)

func (Data_Type) Descriptor

func (Data_Type) Descriptor() protoreflect.EnumDescriptor

func (Data_Type) Enum

func (x Data_Type) Enum() *Data_Type

func (Data_Type) EnumDescriptor deprecated

func (Data_Type) EnumDescriptor() ([]byte, []int)

Deprecated: Use Data_Type.Descriptor instead.

func (Data_Type) Number

func (x Data_Type) Number() protoreflect.EnumNumber

func (Data_Type) String

func (x Data_Type) String() string

func (Data_Type) Type

type Data_TypeDetails

type Data_TypeDetails struct {
	Type               Data_Type `protobuf:"varint,1,opt,name=type,proto3,enum=tricium.Data_Type" json:"type,omitempty"`
	IsPlatformSpecific bool      `protobuf:"varint,2,opt,name=is_platform_specific,json=isPlatformSpecific,proto3" json:"is_platform_specific,omitempty"`
	// contains filtered or unexported fields
}

Details for supported types, specifically whether a type is tied to a platform.

These type details are used to resolve data dependencies when generating workflows.

func LookupDataTypeDetails

func LookupDataTypeDetails(sc *ServiceConfig, dt Data_Type) (*Data_TypeDetails, error)

LookupDataTypeDetails looks up data type details for a given type from the provided service config.

func (*Data_TypeDetails) Descriptor deprecated

func (*Data_TypeDetails) Descriptor() ([]byte, []int)

Deprecated: Use Data_TypeDetails.ProtoReflect.Descriptor instead.

func (*Data_TypeDetails) GetIsPlatformSpecific

func (x *Data_TypeDetails) GetIsPlatformSpecific() bool

func (*Data_TypeDetails) GetType

func (x *Data_TypeDetails) GetType() Data_Type

func (*Data_TypeDetails) ProtoMessage

func (*Data_TypeDetails) ProtoMessage()

func (*Data_TypeDetails) ProtoReflect

func (x *Data_TypeDetails) ProtoReflect() protoreflect.Message

func (*Data_TypeDetails) Reset

func (x *Data_TypeDetails) Reset()

func (*Data_TypeDetails) String

func (x *Data_TypeDetails) String() string

type FeedbackRequest

type FeedbackRequest struct {

	// Name of the project in luci-config to provide feedback for.
	//
	// In practice this was never required, although we had intended
	// to make it required. See crbug.com/905885.
	Project string `protobuf:"bytes,4,opt,name=project,proto3" json:"project,omitempty"`
	// Analyzer category to provide aggregated feedback for.
	//
	// This includes the analyzer name along with optional subcategories
	// separated with slash, e.g., "ClangTidy" or "ClangTidy/llvm-header-guard".
	//
	// Required field. Must include at least the analyzer name and should not
	// end with a slash.
	Category string `protobuf:"bytes,1,opt,name=category,proto3" json:"category,omitempty"`
	// Start of time period to report feedback for.
	//
	// Feedback for comments created from this time (inclusive) will be included.
	// Must be before end_time.
	//
	// Optional field. If not specified, this means "go as far back as possible".
	StartTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// End of time period to report feedback for.
	//
	// Feedback for comments created up until this time (exclusive) will be included.
	// Must be after start_time.
	//
	// Optional field. Defaults to now.
	EndTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// contains filtered or unexported fields
}

func (*FeedbackRequest) Descriptor deprecated

func (*FeedbackRequest) Descriptor() ([]byte, []int)

Deprecated: Use FeedbackRequest.ProtoReflect.Descriptor instead.

func (*FeedbackRequest) GetCategory

func (x *FeedbackRequest) GetCategory() string

func (*FeedbackRequest) GetEndTime

func (x *FeedbackRequest) GetEndTime() *timestamppb.Timestamp

func (*FeedbackRequest) GetProject

func (x *FeedbackRequest) GetProject() string

func (*FeedbackRequest) GetStartTime

func (x *FeedbackRequest) GetStartTime() *timestamppb.Timestamp

func (*FeedbackRequest) ProtoMessage

func (*FeedbackRequest) ProtoMessage()

func (*FeedbackRequest) ProtoReflect

func (x *FeedbackRequest) ProtoReflect() protoreflect.Message

func (*FeedbackRequest) Reset

func (x *FeedbackRequest) Reset()

func (*FeedbackRequest) String

func (x *FeedbackRequest) String() string

type FeedbackResponse

type FeedbackResponse struct {

	// Number of returned comments.
	//
	// In any case where an analyzer was run on multiple platforms and the
	// resulting comments were merged, only merged comments are returned in this
	// count. Note that only merged comments are ever returned from the Tricium
	// service.
	Comments int32 `protobuf:"varint,1,opt,name=comments,proto3" json:"comments,omitempty"`
	// Number of collected 'not useful' reports.
	NotUsefulReports int32 `protobuf:"varint,2,opt,name=not_useful_reports,json=notUsefulReports,proto3" json:"not_useful_reports,omitempty"`
	// contains filtered or unexported fields
}

func (*FeedbackResponse) Descriptor deprecated

func (*FeedbackResponse) Descriptor() ([]byte, []int)

Deprecated: Use FeedbackResponse.ProtoReflect.Descriptor instead.

func (*FeedbackResponse) GetComments

func (x *FeedbackResponse) GetComments() int32

func (*FeedbackResponse) GetNotUsefulReports

func (x *FeedbackResponse) GetNotUsefulReports() int32

func (*FeedbackResponse) ProtoMessage

func (*FeedbackResponse) ProtoMessage()

func (*FeedbackResponse) ProtoReflect

func (x *FeedbackResponse) ProtoReflect() protoreflect.Message

func (*FeedbackResponse) Reset

func (x *FeedbackResponse) Reset()

func (*FeedbackResponse) String

func (x *FeedbackResponse) String() string

type Function

type Function struct {

	// The type of this function.
	//
	// This field is required, but should always be ANALYZER.
	Type Function_Type `protobuf:"varint,1,opt,name=type,proto3,enum=tricium.Function_Type" json:"type,omitempty"`
	// The name of the analyzer.
	//
	// The name must be unique among Tricium functions within a Tricium instance.
	// The name is expected to be CamelCase; no spaces, underscores or dashes are
	// allowed.
	//
	// This field is required.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Data needed by this analyzer.
	//
	// After migration to recipe-based analyzers, this should always be
	// GIT_FILE_DETAILS.
	Needs Data_Type `protobuf:"varint,3,opt,name=needs,proto3,enum=tricium.Data_Type" json:"needs,omitempty"`
	// Data provided by this analyzer.
	//
	// This field is required.
	// After migration to recipe-based analyzers, this should always be
	// RESULTS.
	Provides Data_Type `protobuf:"varint,4,opt,name=provides,proto3,enum=tricium.Data_Type" json:"provides,omitempty"`
	// Path filters for this analyzer.
	//
	// Defined as a glob. The path filters only apply to the last part of the
	// path.
	PathFilters []string `protobuf:"bytes,5,rep,name=path_filters,json=pathFilters,proto3" json:"path_filters,omitempty"` // Default: "*"
	// Email address of the owner of this analyzer. Used for bug filing.
	//
	// This field is required.
	Owner string `protobuf:"bytes,6,opt,name=owner,proto3" json:"owner,omitempty"`
	// Monorail bug component for bug filing.
	//
	// This field is required.
	MonorailComponent string `protobuf:"bytes,7,opt,name=monorail_component,json=monorailComponent,proto3" json:"monorail_component,omitempty"`
	// Function implementations.
	//
	// Originally the idea was that an analyzer may run on many different platforms
	// and the comments from different platforms may be merged.
	//
	// This was not done in practice, so the number of impls should always be one.
	Impls []*Impl `protobuf:"bytes,9,rep,name=impls,proto3" json:"impls,omitempty"`
	// contains filtered or unexported fields
}

Tricium analyzer definition.

func LookupFunction

func LookupFunction(functions []*Function, function string) *Function

LookupFunction looks up the given function in a slice of functions.

func (*Function) Descriptor deprecated

func (*Function) Descriptor() ([]byte, []int)

Deprecated: Use Function.ProtoReflect.Descriptor instead.

func (*Function) GetImpls

func (x *Function) GetImpls() []*Impl

func (*Function) GetMonorailComponent

func (x *Function) GetMonorailComponent() string

func (*Function) GetName

func (x *Function) GetName() string

func (*Function) GetNeeds

func (x *Function) GetNeeds() Data_Type

func (*Function) GetOwner

func (x *Function) GetOwner() string

func (*Function) GetPathFilters

func (x *Function) GetPathFilters() []string

func (*Function) GetProvides

func (x *Function) GetProvides() Data_Type

func (*Function) GetType

func (x *Function) GetType() Function_Type

func (*Function) ProtoMessage

func (*Function) ProtoMessage()

func (*Function) ProtoReflect

func (x *Function) ProtoReflect() protoreflect.Message

func (*Function) Reset

func (x *Function) Reset()

func (*Function) String

func (x *Function) String() string

type FunctionProgress

type FunctionProgress struct {

	// The function name.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The platform for which the function progress is reported.
	Platform Platform_Name `protobuf:"varint,2,opt,name=platform,proto3,enum=tricium.Platform_Name" json:"platform,omitempty"`
	// The state of the function.
	//
	// For an function on a specific platform this state corresponds to the state
	// of the worker, else it is the aggregated state of all workers for the function.
	State State `protobuf:"varint,3,opt,name=state,proto3,enum=tricium.State" json:"state,omitempty"`
	// Number of comments.
	//
	// For analyzers that are done and produce comments.
	NumComments int32 `protobuf:"varint,6,opt,name=num_comments,json=numComments,proto3" json:"num_comments,omitempty"`
	// Host for the buildbucket server running tasks for the workers of the function.
	BuildbucketHost string `protobuf:"bytes,7,opt,name=buildbucket_host,json=buildbucketHost,proto3" json:"buildbucket_host,omitempty"`
	// The ID of the buildbucket build triggered for the function worker.
	BuildbucketBuildId int64 `protobuf:"varint,8,opt,name=buildbucket_build_id,json=buildbucketBuildId,proto3" json:"buildbucket_build_id,omitempty"`
	// contains filtered or unexported fields
}

func (*FunctionProgress) Descriptor deprecated

func (*FunctionProgress) Descriptor() ([]byte, []int)

Deprecated: Use FunctionProgress.ProtoReflect.Descriptor instead.

func (*FunctionProgress) GetBuildbucketBuildId

func (x *FunctionProgress) GetBuildbucketBuildId() int64

func (*FunctionProgress) GetBuildbucketHost

func (x *FunctionProgress) GetBuildbucketHost() string

func (*FunctionProgress) GetName

func (x *FunctionProgress) GetName() string

func (*FunctionProgress) GetNumComments

func (x *FunctionProgress) GetNumComments() int32

func (*FunctionProgress) GetPlatform

func (x *FunctionProgress) GetPlatform() Platform_Name

func (*FunctionProgress) GetState

func (x *FunctionProgress) GetState() State

func (*FunctionProgress) ProtoMessage

func (*FunctionProgress) ProtoMessage()

func (*FunctionProgress) ProtoReflect

func (x *FunctionProgress) ProtoReflect() protoreflect.Message

func (*FunctionProgress) Reset

func (x *FunctionProgress) Reset()

func (*FunctionProgress) String

func (x *FunctionProgress) String() string

type Function_Type

type Function_Type int32

Originally, there were two types of functions; isolators and analyzers. For analyzer functions, the output must be of type Data.Results. After transition to recipe-based analyzers only, all functions should be analyzers and input type is ignored.

const (
	Function_NONE Function_Type = 0
	// Deprecated: Do not use.
	Function_ISOLATOR Function_Type = 1
	Function_ANALYZER Function_Type = 2
)

func (Function_Type) Descriptor

func (Function_Type) Enum

func (x Function_Type) Enum() *Function_Type

func (Function_Type) EnumDescriptor deprecated

func (Function_Type) EnumDescriptor() ([]byte, []int)

Deprecated: Use Function_Type.Descriptor instead.

func (Function_Type) Number

func (Function_Type) String

func (x Function_Type) String() string

func (Function_Type) Type

type GerritProject

type GerritProject struct {

	// The Gerrit host to connect to.
	//
	// Value must not include the schema part; it will be assumed to be "https".
	Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	// Gerrit project name.
	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
	// Full URL for the corresponding git repo.
	GitUrl string `protobuf:"bytes,3,opt,name=git_url,json=gitUrl,proto3" json:"git_url,omitempty"`
	// contains filtered or unexported fields
}

Specifies a Gerrit project and its corresponding git repo.

func (*GerritProject) Descriptor deprecated

func (*GerritProject) Descriptor() ([]byte, []int)

Deprecated: Use GerritProject.ProtoReflect.Descriptor instead.

func (*GerritProject) GetGitUrl

func (x *GerritProject) GetGitUrl() string

func (*GerritProject) GetHost

func (x *GerritProject) GetHost() string

func (*GerritProject) GetProject

func (x *GerritProject) GetProject() string

func (*GerritProject) ProtoMessage

func (*GerritProject) ProtoMessage()

func (*GerritProject) ProtoReflect

func (x *GerritProject) ProtoReflect() protoreflect.Message

func (*GerritProject) Reset

func (x *GerritProject) Reset()

func (*GerritProject) String

func (x *GerritProject) String() string

type GerritRevision

type GerritRevision struct {

	// Gerrit host.
	//
	// This value must not include the URL schema and is assumed to not include
	// literal string "##", since this string is used internally as a separator.
	// The schema is assumed to be "https".
	Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	// Gerrit project name.
	//
	// This value is assumed to not include "##".
	Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
	// Gerrit change ID.
	//
	// This value should be of the form "<project>~<branch>~<Change-Id>", where
	// <Change-Id> is a Change-Id footer string, and not a legacy change ID
	// number. Note that "refs/heads/" can be omitted from the branch.
	//
	// Example: "myProject~master~I8473b95934b5732ac55d26311a706c9c2bde9940"
	Change string `protobuf:"bytes,3,opt,name=change,proto3" json:"change,omitempty"`
	// The full URL to the Git repository for this project, e.g. on Gitiles.
	GitUrl string `protobuf:"bytes,4,opt,name=git_url,json=gitUrl,proto3" json:"git_url,omitempty"`
	// Gerrit change revision ref string.
	//
	// This value should be the fetch URL for a revision of a change. Note that
	// the last number of a change revision ref is the corresponding patch set.
	GitRef string `protobuf:"bytes,5,opt,name=git_ref,json=gitRef,proto3" json:"git_ref,omitempty"`
	// Commit message text from Gerrit.
	CommitMessage string `protobuf:"bytes,6,opt,name=commit_message,json=commitMessage,proto3" json:"commit_message,omitempty"`
	// contains filtered or unexported fields
}

Information uniquely identifying a Gerrit patch set, including the git details needed to fetch from this patch set.

func (*GerritRevision) Descriptor deprecated

func (*GerritRevision) Descriptor() ([]byte, []int)

Deprecated: Use GerritRevision.ProtoReflect.Descriptor instead.

func (*GerritRevision) GetChange

func (x *GerritRevision) GetChange() string

func (*GerritRevision) GetCommitMessage

func (x *GerritRevision) GetCommitMessage() string

func (*GerritRevision) GetGitRef

func (x *GerritRevision) GetGitRef() string

func (*GerritRevision) GetGitUrl

func (x *GerritRevision) GetGitUrl() string

func (*GerritRevision) GetHost

func (x *GerritRevision) GetHost() string

func (*GerritRevision) GetProject

func (x *GerritRevision) GetProject() string

func (*GerritRevision) ProtoMessage

func (*GerritRevision) ProtoMessage()

func (*GerritRevision) ProtoReflect

func (x *GerritRevision) ProtoReflect() protoreflect.Message

func (*GerritRevision) Reset

func (x *GerritRevision) Reset()

func (*GerritRevision) String

func (x *GerritRevision) String() string

type GitCommit

type GitCommit struct {

	// Full repository URL, including schema, host and path.
	Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	// A git commit-ish, such as a refname like "refs/heads/master".
	// This can also be a tag or git commit hash.
	Ref string `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// contains filtered or unexported fields
}

func (*GitCommit) Descriptor deprecated

func (*GitCommit) Descriptor() ([]byte, []int)

Deprecated: Use GitCommit.ProtoReflect.Descriptor instead.

func (*GitCommit) GetRef

func (x *GitCommit) GetRef() string

func (*GitCommit) GetUrl

func (x *GitCommit) GetUrl() string

func (*GitCommit) ProtoMessage

func (*GitCommit) ProtoMessage()

func (*GitCommit) ProtoReflect

func (x *GitCommit) ProtoReflect() protoreflect.Message

func (*GitCommit) Reset

func (x *GitCommit) Reset()

func (*GitCommit) String

func (x *GitCommit) String() string

type GitRepo

type GitRepo struct {

	// Full repository url, including schema.
	Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
	// contains filtered or unexported fields
}

func (*GitRepo) Descriptor deprecated

func (*GitRepo) Descriptor() ([]byte, []int)

Deprecated: Use GitRepo.ProtoReflect.Descriptor instead.

func (*GitRepo) GetUrl

func (x *GitRepo) GetUrl() string

func (*GitRepo) ProtoMessage

func (*GitRepo) ProtoMessage()

func (*GitRepo) ProtoReflect

func (x *GitRepo) ProtoReflect() protoreflect.Message

func (*GitRepo) Reset

func (x *GitRepo) Reset()

func (*GitRepo) String

func (x *GitRepo) String() string

type Impl

type Impl struct {

	// Data-dependency details specific to this implementation.
	//
	// This particular value of this field isn't significant, because
	// the platform is determined by the builder.
	NeedsForPlatform    Platform_Name `` /* 139-byte string literal not displayed */
	ProvidesForPlatform Platform_Name `` /* 148-byte string literal not displayed */
	// The platform to run this implementation on.
	//
	// This particular value of this field isn't significant, because
	// the platform is determined by the builder.
	RuntimePlatform Platform_Name `` /* 134-byte string literal not displayed */
	// Types that are assignable to Impl:
	//	*Impl_Recipe
	Impl isImpl_Impl `protobuf_oneof:"impl"`
	// Deadline for execution of corresponding workers.
	//
	// Note that this deadline includes the launch of a swarming task for the
	// corresponding worker, and collection of results from that worker.
	// Deadline should be given in seconds.
	Deadline int32 `protobuf:"varint,7,opt,name=deadline,proto3" json:"deadline,omitempty"`
	// contains filtered or unexported fields
}

Analyzer implementation.

Implementation must be recipe-based; command-based (legacy) analyzers are no longer supported.

func LookupImplForPlatform

func LookupImplForPlatform(f *Function, platform Platform_Name) *Impl

LookupImplForPlatform returns the first impl providing data for the provided platform.

func (*Impl) Descriptor deprecated

func (*Impl) Descriptor() ([]byte, []int)

Deprecated: Use Impl.ProtoReflect.Descriptor instead.

func (*Impl) GetDeadline

func (x *Impl) GetDeadline() int32

func (*Impl) GetImpl

func (m *Impl) GetImpl() isImpl_Impl

func (*Impl) GetNeedsForPlatform

func (x *Impl) GetNeedsForPlatform() Platform_Name

func (*Impl) GetProvidesForPlatform

func (x *Impl) GetProvidesForPlatform() Platform_Name

func (*Impl) GetRecipe

func (x *Impl) GetRecipe() *Recipe

func (*Impl) GetRuntimePlatform

func (x *Impl) GetRuntimePlatform() Platform_Name

func (*Impl) ProtoMessage

func (*Impl) ProtoMessage()

func (*Impl) ProtoReflect

func (x *Impl) ProtoReflect() protoreflect.Message

func (*Impl) Reset

func (x *Impl) Reset()

func (*Impl) String

func (x *Impl) String() string

type Impl_Recipe

type Impl_Recipe struct {
	// Recipe for recipe-based implementation.
	Recipe *Recipe `protobuf:"bytes,5,opt,name=recipe,proto3,oneof"`
}

type Platform

type Platform struct {
	// contains filtered or unexported fields
}

Platforms supported by Tricium.

func (*Platform) Descriptor deprecated

func (*Platform) Descriptor() ([]byte, []int)

Deprecated: Use Platform.ProtoReflect.Descriptor instead.

func (*Platform) ProtoMessage

func (*Platform) ProtoMessage()

func (*Platform) ProtoReflect

func (x *Platform) ProtoReflect() protoreflect.Message

func (*Platform) Reset

func (x *Platform) Reset()

func (*Platform) String

func (x *Platform) String() string

type Platform_Details

type Platform_Details struct {
	Name Platform_Name `protobuf:"varint,1,opt,name=name,proto3,enum=tricium.Platform_Name" json:"name,omitempty"`
	// Deprecated, ignored.
	//
	// Deprecated: Do not use.
	Dimensions []string `protobuf:"bytes,2,rep,name=dimensions,proto3" json:"dimensions,omitempty"`
	// Whether this platform can be used as a runtime platform.
	//
	// Not used, should always be true.
	HasRuntime bool `protobuf:"varint,3,opt,name=has_runtime,json=hasRuntime,proto3" json:"has_runtime,omitempty"`
	// contains filtered or unexported fields
}

Platform details for supported platforms.

func LookupPlatform

func LookupPlatform(sc *ServiceConfig, platform Platform_Name) *Platform_Details

LookupPlatform returns the first platform matching the provided platform name.

func (*Platform_Details) Descriptor deprecated

func (*Platform_Details) Descriptor() ([]byte, []int)

Deprecated: Use Platform_Details.ProtoReflect.Descriptor instead.

func (*Platform_Details) GetDimensions deprecated

func (x *Platform_Details) GetDimensions() []string

Deprecated: Do not use.

func (*Platform_Details) GetHasRuntime

func (x *Platform_Details) GetHasRuntime() bool

func (*Platform_Details) GetName

func (x *Platform_Details) GetName() Platform_Name

func (*Platform_Details) ProtoMessage

func (*Platform_Details) ProtoMessage()

func (*Platform_Details) ProtoReflect

func (x *Platform_Details) ProtoReflect() protoreflect.Message

func (*Platform_Details) Reset

func (x *Platform_Details) Reset()

func (*Platform_Details) String

func (x *Platform_Details) String() string

type Platform_Name

type Platform_Name int32

Enum names of supported platforms.

The original idea was that these platforms could be used to describe either data dependencies or runtime platforms; this is not used, because the runtime platform is actually determined by builder config.

In practice, the only platforms used are LINUX (and sometimes UBUNTU).

Names must not contain "_", since this is used as a separator character in worker names.

const (
	// Use for platform-independent data types.
	Platform_ANY Platform_Name = 0
	// Generic Linux.
	Platform_LINUX  Platform_Name = 1
	Platform_UBUNTU Platform_Name = 2 // reserved 3,4,5,6,7,8,9,10
	// Generic Android.
	//
	// Deprecated: Do not use.
	Platform_ANDROID Platform_Name = 11 // reserved 12,13,14,15
	// Generic Mac
	//
	// Deprecated: Do not use.
	Platform_MAC Platform_Name = 16
	// Deprecated: Do not use.
	Platform_OSX Platform_Name = 17
	// Deprecated: Do not use.
	Platform_IOS Platform_Name = 18 // reserved 19,20
	// Generic Windows.
	//
	// Deprecated: Do not use.
	Platform_WINDOWS Platform_Name = 21 // reserved 22,23,24,25
	// Deprecated: Do not use.
	Platform_CHROMEOS Platform_Name = 26 // reserved 27,28,29,30
	// Deprecated: Do not use.
	Platform_FUCHSIA Platform_Name = 31 // reserved 32,33,34,35
)

func GetPlatforms

func GetPlatforms(platforms int64) ([]Platform_Name, error)

GetPlatforms translates a platform bit field to Platform_Name values.

func (Platform_Name) Descriptor

func (Platform_Name) Enum

func (x Platform_Name) Enum() *Platform_Name

func (Platform_Name) EnumDescriptor deprecated

func (Platform_Name) EnumDescriptor() ([]byte, []int)

Deprecated: Use Platform_Name.Descriptor instead.

func (Platform_Name) Number

func (Platform_Name) String

func (x Platform_Name) String() string

func (Platform_Name) Type

type ProgressRequest

type ProgressRequest struct {

	// An optional function name.
	//
	// If provided, only progress for the provided function will be returned.
	// The function name should match the name of the function in the Tricium
	// configuration.
	//
	// NB! Currently not supported.
	Function string `protobuf:"bytes,2,opt,name=function,proto3" json:"function,omitempty"`
	// Optional platform that may be provided together with an function name.
	//
	// If provided, only progress for the provided function and platform will be provided.
	//
	// NB! Currently not supported.
	Platform *Platform `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"`
	// The information that's used to look up the run. If this request is for a
	// particular Gerrit revision, then that can be provided; otherwise the run
	// ID can be used.
	//
	// Types that are assignable to Source:
	//	*ProgressRequest_GerritRevision
	//	*ProgressRequest_RunId
	Source isProgressRequest_Source `protobuf_oneof:"source"`
	// contains filtered or unexported fields
}

func (*ProgressRequest) Descriptor deprecated

func (*ProgressRequest) Descriptor() ([]byte, []int)

Deprecated: Use ProgressRequest.ProtoReflect.Descriptor instead.

func (*ProgressRequest) GetFunction

func (x *ProgressRequest) GetFunction() string

func (*ProgressRequest) GetGerritRevision

func (x *ProgressRequest) GetGerritRevision() *GerritRevision

func (*ProgressRequest) GetPlatform

func (x *ProgressRequest) GetPlatform() *Platform

func (*ProgressRequest) GetRunId

func (x *ProgressRequest) GetRunId() string

func (*ProgressRequest) GetSource

func (m *ProgressRequest) GetSource() isProgressRequest_Source

func (*ProgressRequest) ProtoMessage

func (*ProgressRequest) ProtoMessage()

func (*ProgressRequest) ProtoReflect

func (x *ProgressRequest) ProtoReflect() protoreflect.Message

func (*ProgressRequest) Reset

func (x *ProgressRequest) Reset()

func (*ProgressRequest) String

func (x *ProgressRequest) String() string

type ProgressRequest_GerritRevision

type ProgressRequest_GerritRevision struct {
	GerritRevision *GerritRevision `protobuf:"bytes,4,opt,name=gerrit_revision,json=gerritRevision,proto3,oneof"`
}

type ProgressRequest_RunId

type ProgressRequest_RunId struct {
	RunId string `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3,oneof"`
}

type ProgressResponse

type ProgressResponse struct {

	// ID of the run progress is reported for.
	RunId string `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
	// Overall state for the run provided in the progress request.
	State State `protobuf:"varint,2,opt,name=state,proto3,enum=tricium.State" json:"state,omitempty"`
	// Function progress matching the requested progress report.
	//
	// For a provided run ID this corresponds to all functions and platforms, and
	// for any selection of these, a subset is returned.
	//
	// NB! Selection of a subset is currently not supported.
	FunctionProgress []*FunctionProgress `protobuf:"bytes,3,rep,name=function_progress,json=functionProgress,proto3" json:"function_progress,omitempty"`
	// contains filtered or unexported fields
}

func (*ProgressResponse) Descriptor deprecated

func (*ProgressResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProgressResponse.ProtoReflect.Descriptor instead.

func (*ProgressResponse) GetFunctionProgress

func (x *ProgressResponse) GetFunctionProgress() []*FunctionProgress

func (*ProgressResponse) GetRunId

func (x *ProgressResponse) GetRunId() string

func (*ProgressResponse) GetState

func (x *ProgressResponse) GetState() State

func (*ProgressResponse) ProtoMessage

func (*ProgressResponse) ProtoMessage()

func (*ProgressResponse) ProtoReflect

func (x *ProgressResponse) ProtoReflect() protoreflect.Message

func (*ProgressResponse) Reset

func (x *ProgressResponse) Reset()

func (*ProgressResponse) String

func (x *ProgressResponse) String() string

type ProjectConfig

type ProjectConfig struct {

	// Access control rules for direct requests for the project.
	Acls []*Acl `protobuf:"bytes,2,rep,name=acls,proto3" json:"acls,omitempty"`
	// Analyzer definitions.
	//
	// Each analyzer generally corresponds to one builder.
	Functions []*Function `protobuf:"bytes,3,rep,name=functions,proto3" json:"functions,omitempty"`
	// Selection of function implementations to run for this project.
	//
	// An analyzer is only enabled if there is a selections entry. Generally all
	// defined functions are listed as selections. Note that the function
	// (analyzer) name must match.
	Selections []*Selection `protobuf:"bytes,4,rep,name=selections,proto3" json:"selections,omitempty"`
	// Repositories, including Git and Gerrit details.
	Repos []*RepoDetails `protobuf:"bytes,5,rep,name=repos,proto3" json:"repos,omitempty"`
	// General service account for this project.
	ServiceAccount string `protobuf:"bytes,6,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"`
	// Ignored. Kept because some Tricium configs still define this field.
	//
	// Deprecated: Do not use.
	SwarmingServiceAccount string `` /* 129-byte string literal not displayed */
	// contains filtered or unexported fields
}

Tricium project configuration.

Specifies details needed to connect a project to Tricium. Adds project-specific functions and selects shared function implementations.

func (*ProjectConfig) Descriptor deprecated

func (*ProjectConfig) Descriptor() ([]byte, []int)

Deprecated: Use ProjectConfig.ProtoReflect.Descriptor instead.

func (*ProjectConfig) FromProperty

func (p *ProjectConfig) FromProperty(prop datastore.Property) error

FromProperty implements datastore.PropertyConverter. It parses a '[]byte' into an embedded 'ProjectConfig' when used with the "go.chromium.org/luci/gae" library.

func (*ProjectConfig) GetAcls

func (x *ProjectConfig) GetAcls() []*Acl

func (*ProjectConfig) GetFunctions

func (x *ProjectConfig) GetFunctions() []*Function

func (*ProjectConfig) GetRepos

func (x *ProjectConfig) GetRepos() []*RepoDetails

func (*ProjectConfig) GetSelections

func (x *ProjectConfig) GetSelections() []*Selection

func (*ProjectConfig) GetServiceAccount

func (x *ProjectConfig) GetServiceAccount() string

func (*ProjectConfig) GetSwarmingServiceAccount deprecated

func (x *ProjectConfig) GetSwarmingServiceAccount() string

Deprecated: Do not use.

func (*ProjectConfig) ProtoMessage

func (*ProjectConfig) ProtoMessage()

func (*ProjectConfig) ProtoReflect

func (x *ProjectConfig) ProtoReflect() protoreflect.Message

func (*ProjectConfig) Reset

func (x *ProjectConfig) Reset()

func (*ProjectConfig) String

func (x *ProjectConfig) String() string

func (*ProjectConfig) ToProperty

func (p *ProjectConfig) ToProperty() (prop datastore.Property, err error)

ToProperty implements datastore.PropertyConverter. It causes an embedded 'ProjectConfig' to serialize to an unindexed '[]byte' when used with the "go.chromium.org/luci/gae" library.

type ProjectProgressRequest

type ProjectProgressRequest struct {

	// Project to get progress for.
	//
	// The provided project name must be known to the queried Tricium instance.
	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
	// contains filtered or unexported fields
}

func (*ProjectProgressRequest) Descriptor deprecated

func (*ProjectProgressRequest) Descriptor() ([]byte, []int)

Deprecated: Use ProjectProgressRequest.ProtoReflect.Descriptor instead.

func (*ProjectProgressRequest) GetProject

func (x *ProjectProgressRequest) GetProject() string

func (*ProjectProgressRequest) ProtoMessage

func (*ProjectProgressRequest) ProtoMessage()

func (*ProjectProgressRequest) ProtoReflect

func (x *ProjectProgressRequest) ProtoReflect() protoreflect.Message

func (*ProjectProgressRequest) Reset

func (x *ProjectProgressRequest) Reset()

func (*ProjectProgressRequest) String

func (x *ProjectProgressRequest) String() string

type ProjectProgressResponse

type ProjectProgressResponse struct {

	// Progress of runs for the matching project in the progress request.
	//
	// The returned list is sorted based on state and detailed run progress
	// can be requested using the run ID of each listed run.
	RunProgress []*RunProgress `protobuf:"bytes,1,rep,name=run_progress,json=runProgress,proto3" json:"run_progress,omitempty"`
	// contains filtered or unexported fields
}

func (*ProjectProgressResponse) Descriptor deprecated

func (*ProjectProgressResponse) Descriptor() ([]byte, []int)

Deprecated: Use ProjectProgressResponse.ProtoReflect.Descriptor instead.

func (*ProjectProgressResponse) GetRunProgress

func (x *ProjectProgressResponse) GetRunProgress() []*RunProgress

func (*ProjectProgressResponse) ProtoMessage

func (*ProjectProgressResponse) ProtoMessage()

func (*ProjectProgressResponse) ProtoReflect

func (x *ProjectProgressResponse) ProtoReflect() protoreflect.Message

func (*ProjectProgressResponse) Reset

func (x *ProjectProgressResponse) Reset()

func (*ProjectProgressResponse) String

func (x *ProjectProgressResponse) String() string

type Recipe

type Recipe struct {

	// Project ID, e.g. "chromium".
	Project string `protobuf:"bytes,5,opt,name=project,proto3" json:"project,omitempty"`
	// Bucket name, e.g. "try".
	Bucket string `protobuf:"bytes,6,opt,name=bucket,proto3" json:"bucket,omitempty"`
	// Builder name, e.g. "linux-rel".
	Builder string `protobuf:"bytes,7,opt,name=builder,proto3" json:"builder,omitempty"`
	// contains filtered or unexported fields
}

Specification of a recipe for a recipe-based analyzer.

func (*Recipe) Descriptor deprecated

func (*Recipe) Descriptor() ([]byte, []int)

Deprecated: Use Recipe.ProtoReflect.Descriptor instead.

func (*Recipe) GetBucket

func (x *Recipe) GetBucket() string

func (*Recipe) GetBuilder

func (x *Recipe) GetBuilder() string

func (*Recipe) GetProject

func (x *Recipe) GetProject() string

func (*Recipe) ProtoMessage

func (*Recipe) ProtoMessage()

func (*Recipe) ProtoReflect

func (x *Recipe) ProtoReflect() protoreflect.Message

func (*Recipe) Reset

func (x *Recipe) Reset()

func (*Recipe) String

func (x *Recipe) String() string

type RepoDetails

type RepoDetails struct {

	// The repository type.
	//
	// Types that are assignable to Source:
	//	*RepoDetails_GerritProject
	//	*RepoDetails_GitRepo
	Source isRepoDetails_Source `protobuf_oneof:"source"`
	// Whether to disable reporting results back (default: enabled).
	DisableReporting bool `protobuf:"varint,6,opt,name=disable_reporting,json=disableReporting,proto3" json:"disable_reporting,omitempty"`
	// Whitelisted groups.
	//
	// The owner of a change will be checked for membership of a whitelisted
	// group. Absence of this field means all groups are whitelisted.
	//
	// Group names must be known to the Chrome infra auth service,
	// https://chrome-infra-auth.appspot.com. Contact a Chromium trooper
	// if you need to add or modify a group: g.co/bugatrooper.
	WhitelistedGroup []string `protobuf:"bytes,7,rep,name=whitelisted_group,json=whitelistedGroup,proto3" json:"whitelisted_group,omitempty"`
	// contains filtered or unexported fields
}

Repository details for one repository.

func LookupRepoDetails

func LookupRepoDetails(pc *ProjectConfig, request *AnalyzeRequest) *RepoDetails

LookupRepoDetails gets corresponding RepoDetails for the repo that matches the given AnalyzeRequest.

Returns nil if no such repo is found.

func (*RepoDetails) Descriptor deprecated

func (*RepoDetails) Descriptor() ([]byte, []int)

Deprecated: Use RepoDetails.ProtoReflect.Descriptor instead.

func (*RepoDetails) GetDisableReporting

func (x *RepoDetails) GetDisableReporting() bool

func (*RepoDetails) GetGerritProject

func (x *RepoDetails) GetGerritProject() *GerritProject

func (*RepoDetails) GetGitRepo

func (x *RepoDetails) GetGitRepo() *GitRepo

func (*RepoDetails) GetSource

func (m *RepoDetails) GetSource() isRepoDetails_Source

func (*RepoDetails) GetWhitelistedGroup

func (x *RepoDetails) GetWhitelistedGroup() []string

func (*RepoDetails) ProtoMessage

func (*RepoDetails) ProtoMessage()

func (*RepoDetails) ProtoReflect

func (x *RepoDetails) ProtoReflect() protoreflect.Message

func (*RepoDetails) Reset

func (x *RepoDetails) Reset()

func (*RepoDetails) String

func (x *RepoDetails) String() string

type RepoDetails_GerritProject

type RepoDetails_GerritProject struct {
	GerritProject *GerritProject `protobuf:"bytes,4,opt,name=gerrit_project,json=gerritProject,proto3,oneof"`
}

type RepoDetails_GitRepo

type RepoDetails_GitRepo struct {
	GitRepo *GitRepo `protobuf:"bytes,5,opt,name=git_repo,json=gitRepo,proto3,oneof"`
}

type ReportNotUsefulRequest

type ReportNotUsefulRequest struct {

	// ID of comment as returned by the Results endpoint.
	CommentId string `protobuf:"bytes,1,opt,name=comment_id,json=commentId,proto3" json:"comment_id,omitempty"`
	// contains filtered or unexported fields
}

func (*ReportNotUsefulRequest) Descriptor deprecated

func (*ReportNotUsefulRequest) Descriptor() ([]byte, []int)

Deprecated: Use ReportNotUsefulRequest.ProtoReflect.Descriptor instead.

func (*ReportNotUsefulRequest) GetCommentId

func (x *ReportNotUsefulRequest) GetCommentId() string

func (*ReportNotUsefulRequest) ProtoMessage

func (*ReportNotUsefulRequest) ProtoMessage()

func (*ReportNotUsefulRequest) ProtoReflect

func (x *ReportNotUsefulRequest) ProtoReflect() protoreflect.Message

func (*ReportNotUsefulRequest) Reset

func (x *ReportNotUsefulRequest) Reset()

func (*ReportNotUsefulRequest) String

func (x *ReportNotUsefulRequest) String() string

type ReportNotUsefulResponse

type ReportNotUsefulResponse struct {

	// Email address of the owner of the analyzer.
	Owner string `protobuf:"bytes,1,opt,name=owner,proto3" json:"owner,omitempty"`
	// Monorail bug component of the analyzer being.
	MonorailComponent string `protobuf:"bytes,2,opt,name=monorail_component,json=monorailComponent,proto3" json:"monorail_component,omitempty"`
	// contains filtered or unexported fields
}

func (*ReportNotUsefulResponse) Descriptor deprecated

func (*ReportNotUsefulResponse) Descriptor() ([]byte, []int)

Deprecated: Use ReportNotUsefulResponse.ProtoReflect.Descriptor instead.

func (*ReportNotUsefulResponse) GetMonorailComponent

func (x *ReportNotUsefulResponse) GetMonorailComponent() string

func (*ReportNotUsefulResponse) GetOwner

func (x *ReportNotUsefulResponse) GetOwner() string

func (*ReportNotUsefulResponse) ProtoMessage

func (*ReportNotUsefulResponse) ProtoMessage()

func (*ReportNotUsefulResponse) ProtoReflect

func (x *ReportNotUsefulResponse) ProtoReflect() protoreflect.Message

func (*ReportNotUsefulResponse) Reset

func (x *ReportNotUsefulResponse) Reset()

func (*ReportNotUsefulResponse) String

func (x *ReportNotUsefulResponse) String() string

type ResultsRequest

type ResultsRequest struct {

	// Run ID returned by an analyze request.
	RunId string `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
	// An optional function name.
	//
	// If provided, only results for the provided function are returned.
	// If a function is being run on more than one platform then the merged
	// results of the function can be returned by exclusion of a specific platform.
	//
	// NB! Currently not supported.
	Function string `protobuf:"bytes,2,opt,name=function,proto3" json:"function,omitempty"`
	// Optional platform that can be provided together with an function name.
	//
	// If provided, only results for the provided platform and function are returned.
	//
	// NB! Currently not supported.
	Platform Platform_Name `protobuf:"varint,3,opt,name=platform,proto3,enum=tricium.Platform_Name" json:"platform,omitempty"`
	// contains filtered or unexported fields
}

func (*ResultsRequest) Descriptor deprecated

func (*ResultsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ResultsRequest.ProtoReflect.Descriptor instead.

func (*ResultsRequest) GetFunction

func (x *ResultsRequest) GetFunction() string

func (*ResultsRequest) GetPlatform

func (x *ResultsRequest) GetPlatform() Platform_Name

func (*ResultsRequest) GetRunId

func (x *ResultsRequest) GetRunId() string

func (*ResultsRequest) ProtoMessage

func (*ResultsRequest) ProtoMessage()

func (*ResultsRequest) ProtoReflect

func (x *ResultsRequest) ProtoReflect() protoreflect.Message

func (*ResultsRequest) Reset

func (x *ResultsRequest) Reset()

func (*ResultsRequest) String

func (x *ResultsRequest) String() string

type ResultsResponse

type ResultsResponse struct {
	Results *Data_Results `protobuf:"bytes,1,opt,name=results,proto3" json:"results,omitempty"`
	// Whether the returned results are merged.
	//
	// Results may be merged if a result request for an function running on multiple
	// platforms was made and the request did not include a specific platform.
	// Results for a run with no specific function selected will be marked as merged
	// if any included analyzer results were merged.
	IsMerged bool `protobuf:"varint,2,opt,name=is_merged,json=isMerged,proto3" json:"is_merged,omitempty"`
	// contains filtered or unexported fields
}

func (*ResultsResponse) Descriptor deprecated

func (*ResultsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ResultsResponse.ProtoReflect.Descriptor instead.

func (*ResultsResponse) GetIsMerged

func (x *ResultsResponse) GetIsMerged() bool

func (*ResultsResponse) GetResults

func (x *ResultsResponse) GetResults() *Data_Results

func (*ResultsResponse) ProtoMessage

func (*ResultsResponse) ProtoMessage()

func (*ResultsResponse) ProtoReflect

func (x *ResultsResponse) ProtoReflect() protoreflect.Message

func (*ResultsResponse) Reset

func (x *ResultsResponse) Reset()

func (*ResultsResponse) String

func (x *ResultsResponse) String() string

type RunProgress

type RunProgress struct {
	RunId       string `protobuf:"bytes,1,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"`
	State       State  `protobuf:"varint,2,opt,name=state,proto3,enum=tricium.State" json:"state,omitempty"`
	NumComments int32  `protobuf:"varint,3,opt,name=num_comments,json=numComments,proto3" json:"num_comments,omitempty"`
	// contains filtered or unexported fields
}

func (*RunProgress) Descriptor deprecated

func (*RunProgress) Descriptor() ([]byte, []int)

Deprecated: Use RunProgress.ProtoReflect.Descriptor instead.

func (*RunProgress) GetNumComments

func (x *RunProgress) GetNumComments() int32

func (*RunProgress) GetRunId

func (x *RunProgress) GetRunId() string

func (*RunProgress) GetState

func (x *RunProgress) GetState() State

func (*RunProgress) ProtoMessage

func (*RunProgress) ProtoMessage()

func (*RunProgress) ProtoReflect

func (x *RunProgress) ProtoReflect() protoreflect.Message

func (*RunProgress) Reset

func (x *RunProgress) Reset()

func (*RunProgress) String

func (x *RunProgress) String() string

type Selection

type Selection struct {

	// Name of function to run.
	Function string `protobuf:"bytes,1,opt,name=function,proto3" json:"function,omitempty"`
	// Name of platform to retrieve results from.
	Platform Platform_Name `protobuf:"varint,2,opt,name=platform,proto3,enum=tricium.Platform_Name" json:"platform,omitempty"`
	// contains filtered or unexported fields
}

Selection of function implementations to run for a project.

func (*Selection) Descriptor deprecated

func (*Selection) Descriptor() ([]byte, []int)

Deprecated: Use Selection.ProtoReflect.Descriptor instead.

func (*Selection) GetFunction

func (x *Selection) GetFunction() string

func (*Selection) GetPlatform

func (x *Selection) GetPlatform() Platform_Name

func (*Selection) ProtoMessage

func (*Selection) ProtoMessage()

func (*Selection) ProtoReflect

func (x *Selection) ProtoReflect() protoreflect.Message

func (*Selection) Reset

func (x *Selection) Reset()

func (*Selection) String

func (x *Selection) String() string

type ServiceConfig

type ServiceConfig struct {

	// Supported platforms.
	Platforms []*Platform_Details `protobuf:"bytes,1,rep,name=platforms,proto3" json:"platforms,omitempty"`
	// Supported data types.
	DataDetails []*Data_TypeDetails `protobuf:"bytes,2,rep,name=data_details,json=dataDetails,proto3" json:"data_details,omitempty"`
	// List of shared functions.
	Functions []*Function `protobuf:"bytes,3,rep,name=functions,proto3" json:"functions,omitempty"`
	// Buildbucket server to use for this service instance.
	//
	// This should be a hostname, no schema or trailing slash.
	BuildbucketServerHost string `` /* 126-byte string literal not displayed */
	// contains filtered or unexported fields
}

Tricium service configuration.

Listing supported platforms and analyzers shared between projects connected to Tricium.

func (*ServiceConfig) Descriptor deprecated

func (*ServiceConfig) Descriptor() ([]byte, []int)

Deprecated: Use ServiceConfig.ProtoReflect.Descriptor instead.

func (*ServiceConfig) FromProperty

func (p *ServiceConfig) FromProperty(prop datastore.Property) error

FromProperty implements datastore.PropertyConverter. It parses a '[]byte' into an embedded 'ServiceConfig' when used with the "go.chromium.org/luci/gae" library.

func (*ServiceConfig) GetBuildbucketServerHost

func (x *ServiceConfig) GetBuildbucketServerHost() string

func (*ServiceConfig) GetDataDetails

func (x *ServiceConfig) GetDataDetails() []*Data_TypeDetails

func (*ServiceConfig) GetFunctions

func (x *ServiceConfig) GetFunctions() []*Function

func (*ServiceConfig) GetPlatforms

func (x *ServiceConfig) GetPlatforms() []*Platform_Details

func (*ServiceConfig) ProtoMessage

func (*ServiceConfig) ProtoMessage()

func (*ServiceConfig) ProtoReflect

func (x *ServiceConfig) ProtoReflect() protoreflect.Message

func (*ServiceConfig) Reset

func (x *ServiceConfig) Reset()

func (*ServiceConfig) String

func (x *ServiceConfig) String() string

func (*ServiceConfig) ToProperty

func (p *ServiceConfig) ToProperty() (prop datastore.Property, err error)

ToProperty implements datastore.PropertyConverter. It causes an embedded 'ServiceConfig' to serialize to an unindexed '[]byte' when used with the "go.chromium.org/luci/gae" library.

type State

type State int32
const (
	// Pending is for when an analysis request has been received but the
	// corresponding workflow, function, or workers are not running yet.
	State_PENDING State = 0
	// Running is for when the workflow, function, or workers of a request have
	// been launched, but have not finished.
	State_RUNNING State = 1
	// Success is for a workflow, function, or worker that successfully completed.
	//
	// Success of workflows and functions is aggregated from underlying
	// functions and workers, where full success means success is aggregated.
	State_SUCCESS State = 2
	// Failure is for a workflow, function, or worker that completed with failure.
	//
	// Failure of workflows and functions is aggregated from underlying functions
	// and workers, where any occurrence of failure means failure is aggregated.
	State_FAILURE State = 3
	// Aborted is for workers aborted due to a failing worker dependency.
	//
	// For instance, the worker providing the data needed by a worker may have
	// failed.
	State_ABORTED State = 6
)

func (State) Descriptor

func (State) Descriptor() protoreflect.EnumDescriptor

func (State) Enum

func (x State) Enum() *State

func (State) EnumDescriptor deprecated

func (State) EnumDescriptor() ([]byte, []int)

Deprecated: Use State.Descriptor instead.

func (State) Number

func (x State) Number() protoreflect.EnumNumber

func (State) String

func (x State) String() string

func (State) Type

func (State) Type() protoreflect.EnumType

type TriciumClient

type TriciumClient interface {
	// Analyze requests analysis of a list of paths.
	//
	// An analysis request for a list of paths in a project connected to Tricium
	// via the Tricium configuration. On success, the ID of the resulting run is
	// returned.
	Analyze(ctx context.Context, in *AnalyzeRequest, opts ...grpc.CallOption) (*AnalyzeResponse, error)
	// Progress requests progress information for a run.
	//
	// A run corresponds to an analyze request and is identified with a run ID.
	Progress(ctx context.Context, in *ProgressRequest, opts ...grpc.CallOption) (*ProgressResponse, error)
	// ProjectProgress requests progress information for a project.
	//
	// A list of runs, connected to the project, will be returned together with their status.
	// The provided project must be known to the queried Tricium instance.
	ProjectProgress(ctx context.Context, in *ProjectProgressRequest, opts ...grpc.CallOption) (*ProjectProgressResponse, error)
	// Results requests analysis results from a run.
	//
	// A run corresponds to an analyze request and is identified with a run ID.
	Results(ctx context.Context, in *ResultsRequest, opts ...grpc.CallOption) (*ResultsResponse, error)
	// Feedback requests feedback for an analyzer category.
	Feedback(ctx context.Context, in *FeedbackRequest, opts ...grpc.CallOption) (*FeedbackResponse, error)
	// ReportNotUseful reports not useful feedback for a robot comment.
	ReportNotUseful(ctx context.Context, in *ReportNotUsefulRequest, opts ...grpc.CallOption) (*ReportNotUsefulResponse, error)
}

TriciumClient is the client API for Tricium service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewTriciumClient

func NewTriciumClient(cc grpc.ClientConnInterface) TriciumClient

func NewTriciumPRPCClient

func NewTriciumPRPCClient(client *prpc.Client) TriciumClient

type TriciumServer

type TriciumServer interface {
	// Analyze requests analysis of a list of paths.
	//
	// An analysis request for a list of paths in a project connected to Tricium
	// via the Tricium configuration. On success, the ID of the resulting run is
	// returned.
	Analyze(context.Context, *AnalyzeRequest) (*AnalyzeResponse, error)
	// Progress requests progress information for a run.
	//
	// A run corresponds to an analyze request and is identified with a run ID.
	Progress(context.Context, *ProgressRequest) (*ProgressResponse, error)
	// ProjectProgress requests progress information for a project.
	//
	// A list of runs, connected to the project, will be returned together with their status.
	// The provided project must be known to the queried Tricium instance.
	ProjectProgress(context.Context, *ProjectProgressRequest) (*ProjectProgressResponse, error)
	// Results requests analysis results from a run.
	//
	// A run corresponds to an analyze request and is identified with a run ID.
	Results(context.Context, *ResultsRequest) (*ResultsResponse, error)
	// Feedback requests feedback for an analyzer category.
	Feedback(context.Context, *FeedbackRequest) (*FeedbackResponse, error)
	// ReportNotUseful reports not useful feedback for a robot comment.
	ReportNotUseful(context.Context, *ReportNotUsefulRequest) (*ReportNotUsefulResponse, error)
}

TriciumServer is the server API for Tricium service.

type UnimplementedTriciumServer

type UnimplementedTriciumServer struct {
}

UnimplementedTriciumServer can be embedded to have forward compatible implementations.

func (*UnimplementedTriciumServer) Analyze

func (*UnimplementedTriciumServer) Feedback

func (*UnimplementedTriciumServer) Progress

func (*UnimplementedTriciumServer) ProjectProgress

func (*UnimplementedTriciumServer) ReportNotUseful

func (*UnimplementedTriciumServer) Results

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL