server: go.chromium.org/goma/server/proto/command Index | Files

package command

import "go.chromium.org/goma/server/proto/command"

Index

Package Files

command.pb.go command_service.pb.go package_opts.pb.go setup.pb.go

Variables

var (
    CmdDescriptor_PathType_name = map[int32]string{
        0:  "UNKNOWN_PATH_TYPE",
        1:  "POSIX",
        2:  "WINDOWS",
    }
    CmdDescriptor_PathType_value = map[string]int32{
        "UNKNOWN_PATH_TYPE": 0,
        "POSIX":             1,
        "WINDOWS":           2,
    }
)

Enum value maps for CmdDescriptor_PathType.

var (
    Install_PrefixStyle_name = map[int32]string{
        0:  "ASIS",
        1:  "REGEXP",
        2:  "REGEXP_MAY_SKIP_BINARY_HASH_MISSING",
    }
    Install_PrefixStyle_value = map[string]int32{
        "ASIS":                                0,
        "REGEXP":                              1,
        "REGEXP_MAY_SKIP_BINARY_HASH_MISSING": 2,
    }
)

Enum value maps for Install_PrefixStyle.

var File_command_command_proto protoreflect.FileDescriptor
var File_command_command_service_proto protoreflect.FileDescriptor
var File_command_package_opts_proto protoreflect.FileDescriptor
var File_command_setup_proto protoreflect.FileDescriptor

type BuildInfo Uses

type BuildInfo struct {

    // who build this toolchain.
    Creator string `protobuf:"bytes,2,opt,name=creator,proto3" json:"creator,omitempty"`
    // hostname where the toolchain was built.
    Hostname string `protobuf:"bytes,3,opt,name=hostname,proto3" json:"hostname,omitempty"`
    // current working directory of toolchain build.
    Directory string `protobuf:"bytes,4,opt,name=directory,proto3" json:"directory,omitempty"`
    // when this toolchain was built.
    Timestamp *timestamp.Timestamp `protobuf:"bytes,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
    // full image name of cmd_server container.
    CmdServer string `protobuf:"bytes,7,opt,name=cmd_server,json=cmdServer,proto3" json:"cmd_server,omitempty"`
    // full qualified toolchain name (separated by space)
    Toolchain string `protobuf:"bytes,8,opt,name=toolchain,proto3" json:"toolchain,omitempty"`
    // contains filtered or unexported fields
}

BuildInfo is image build info.

func (*BuildInfo) Descriptor Uses

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

Deprecated: Use BuildInfo.ProtoReflect.Descriptor instead.

func (*BuildInfo) GetCmdServer Uses

func (x *BuildInfo) GetCmdServer() string

func (*BuildInfo) GetCreator Uses

func (x *BuildInfo) GetCreator() string

func (*BuildInfo) GetDirectory Uses

func (x *BuildInfo) GetDirectory() string

func (*BuildInfo) GetHostname Uses

func (x *BuildInfo) GetHostname() string

func (*BuildInfo) GetTimestamp Uses

func (x *BuildInfo) GetTimestamp() *timestamp.Timestamp

func (*BuildInfo) GetToolchain Uses

func (x *BuildInfo) GetToolchain() string

func (*BuildInfo) ProtoMessage Uses

func (*BuildInfo) ProtoMessage()

func (*BuildInfo) ProtoReflect Uses

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

func (*BuildInfo) Reset Uses

func (x *BuildInfo) Reset()

func (*BuildInfo) String Uses

func (x *BuildInfo) String() string

type CmdDescriptor Uses

type CmdDescriptor struct {
    Selector      *Selector                    `protobuf:"bytes,1,opt,name=selector,proto3" json:"selector,omitempty"`
    Setup         *CmdDescriptor_Setup         `protobuf:"bytes,2,opt,name=setup,proto3" json:"setup,omitempty"`
    Cross         *CmdDescriptor_Cross         `protobuf:"bytes,3,opt,name=cross,proto3" json:"cross,omitempty"`
    EmulationOpts *CmdDescriptor_EmulationOpts `protobuf:"bytes,6,opt,name=emulation_opts,json=emulationOpts,proto3" json:"emulation_opts,omitempty"`
    // contains filtered or unexported fields
}

CmdDescriptor is a command descriptor. NEXT ID TO USE: 7

func (*CmdDescriptor) Descriptor Uses

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

Deprecated: Use CmdDescriptor.ProtoReflect.Descriptor instead.

func (*CmdDescriptor) GetCross Uses

func (x *CmdDescriptor) GetCross() *CmdDescriptor_Cross

func (*CmdDescriptor) GetEmulationOpts Uses

func (x *CmdDescriptor) GetEmulationOpts() *CmdDescriptor_EmulationOpts

func (*CmdDescriptor) GetSelector Uses

func (x *CmdDescriptor) GetSelector() *Selector

func (*CmdDescriptor) GetSetup Uses

func (x *CmdDescriptor) GetSetup() *CmdDescriptor_Setup

func (*CmdDescriptor) ProtoMessage Uses

func (*CmdDescriptor) ProtoMessage()

func (*CmdDescriptor) ProtoReflect Uses

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

func (*CmdDescriptor) Reset Uses

func (x *CmdDescriptor) Reset()

func (*CmdDescriptor) String Uses

func (x *CmdDescriptor) String() string

type CmdDescriptor_Cross Uses

type CmdDescriptor_Cross struct {

    // If clang_need_target is true, exec_service adds -target <arch>
    // in args if args does not have -target option.
    // note: it is clang/clang++ specific.
    ClangNeedTarget bool `protobuf:"varint,1,opt,name=clang_need_target,json=clangNeedTarget,proto3" json:"clang_need_target,omitempty"`
    // contains filtered or unexported fields
}

cross options (when user's platform and cmd_server's platform differs)

func (*CmdDescriptor_Cross) Descriptor Uses

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

Deprecated: Use CmdDescriptor_Cross.ProtoReflect.Descriptor instead.

func (*CmdDescriptor_Cross) GetClangNeedTarget Uses

func (x *CmdDescriptor_Cross) GetClangNeedTarget() bool

func (*CmdDescriptor_Cross) ProtoMessage Uses

func (*CmdDescriptor_Cross) ProtoMessage()

func (*CmdDescriptor_Cross) ProtoReflect Uses

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

func (*CmdDescriptor_Cross) Reset Uses

func (x *CmdDescriptor_Cross) Reset()

func (*CmdDescriptor_Cross) String Uses

func (x *CmdDescriptor_Cross) String() string

type CmdDescriptor_EmulationOpts Uses

type CmdDescriptor_EmulationOpts struct {

    // respect_client_include_paths is true if we need to append
    // include directories sent from goma client to command line.
    // For example, when we choose a binary is not relocatable, we need to
    // specify -isystem, -imsvc (or equivalent)
    RespectClientIncludePaths bool `protobuf:"varint,1,opt,name=respect_client_include_paths,json=respectClientIncludePaths,proto3" json:"respect_client_include_paths,omitempty"`
    // contains filtered or unexported fields
}

EmulationOpts is used when goma backend cannot fully emulate client environment.

func (*CmdDescriptor_EmulationOpts) Descriptor Uses

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

Deprecated: Use CmdDescriptor_EmulationOpts.ProtoReflect.Descriptor instead.

func (*CmdDescriptor_EmulationOpts) GetRespectClientIncludePaths Uses

func (x *CmdDescriptor_EmulationOpts) GetRespectClientIncludePaths() bool

func (*CmdDescriptor_EmulationOpts) ProtoMessage Uses

func (*CmdDescriptor_EmulationOpts) ProtoMessage()

func (*CmdDescriptor_EmulationOpts) ProtoReflect Uses

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

func (*CmdDescriptor_EmulationOpts) Reset Uses

func (x *CmdDescriptor_EmulationOpts) Reset()

func (*CmdDescriptor_EmulationOpts) String Uses

func (x *CmdDescriptor_EmulationOpts) String() string

type CmdDescriptor_PathType Uses

type CmdDescriptor_PathType int32
const (
    CmdDescriptor_UNKNOWN_PATH_TYPE CmdDescriptor_PathType = 0
    CmdDescriptor_POSIX             CmdDescriptor_PathType = 1 // unix-style, slash separated.
    CmdDescriptor_WINDOWS           CmdDescriptor_PathType = 2 // windows-style. backslash separated.
)

func (CmdDescriptor_PathType) Descriptor Uses

func (CmdDescriptor_PathType) Descriptor() protoreflect.EnumDescriptor

func (CmdDescriptor_PathType) Enum Uses

func (x CmdDescriptor_PathType) Enum() *CmdDescriptor_PathType

func (CmdDescriptor_PathType) EnumDescriptor Uses

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

Deprecated: Use CmdDescriptor_PathType.Descriptor instead.

func (CmdDescriptor_PathType) Number Uses

func (x CmdDescriptor_PathType) Number() protoreflect.EnumNumber

func (CmdDescriptor_PathType) String Uses

func (x CmdDescriptor_PathType) String() string

func (CmdDescriptor_PathType) Type Uses

func (CmdDescriptor_PathType) Type() protoreflect.EnumType

type CmdDescriptor_Setup Uses

type CmdDescriptor_Setup struct {

    // If cmd_file.Path is abs path, then this command binary is installed
    // in image at the path, and no need to setup. when run command, use
    // this path instead of local_compiler_path.  files would be empty.
    //
    // If cmd_file.Path is relative path from cmd_dir, then this command
    // binary is installed at local_compiler_path as cmd run setup.  files
    // would be also installed.
    CmdFile  *FileSpec              `protobuf:"bytes,1,opt,name=cmd_file,json=cmdFile,proto3" json:"cmd_file,omitempty"`
    CmdDir   string                 `protobuf:"bytes,2,opt,name=cmd_dir,json=cmdDir,proto3" json:"cmd_dir,omitempty"`
    Files    []*FileSpec            `protobuf:"bytes,3,rep,name=files,proto3" json:"files,omitempty"` // relative to cmd path or absolute.
    PathType CmdDescriptor_PathType `protobuf:"varint,4,opt,name=path_type,json=pathType,proto3,enum=command.CmdDescriptor_PathType" json:"path_type,omitempty"`
    // contains filtered or unexported fields
}

command binaries to run. it includes driver program (e.g. gcc), and subprograms (e.g. cc1, cc1plus, as, objcopy etc). note: shared objects in standard dirs (/lib, /usr/lib, etc) will be included in image, so no need to install in each run. shared objects specified by RPATH (i.e. $ORIGIN/../lib, e.g. libstdc++.so.6 in chromium-clang) should be specified in files below.

path is represented in path type.

func (*CmdDescriptor_Setup) Descriptor Uses

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

Deprecated: Use CmdDescriptor_Setup.ProtoReflect.Descriptor instead.

func (*CmdDescriptor_Setup) GetCmdDir Uses

func (x *CmdDescriptor_Setup) GetCmdDir() string

func (*CmdDescriptor_Setup) GetCmdFile Uses

func (x *CmdDescriptor_Setup) GetCmdFile() *FileSpec

func (*CmdDescriptor_Setup) GetFiles Uses

func (x *CmdDescriptor_Setup) GetFiles() []*FileSpec

func (*CmdDescriptor_Setup) GetPathType Uses

func (x *CmdDescriptor_Setup) GetPathType() CmdDescriptor_PathType

func (*CmdDescriptor_Setup) ProtoMessage Uses

func (*CmdDescriptor_Setup) ProtoMessage()

func (*CmdDescriptor_Setup) ProtoReflect Uses

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

func (*CmdDescriptor_Setup) Reset Uses

func (x *CmdDescriptor_Setup) Reset()

func (*CmdDescriptor_Setup) String Uses

func (x *CmdDescriptor_Setup) String() string

type Config Uses

type Config struct {
    Target             *Target             `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"`
    BuildInfo          *BuildInfo          `protobuf:"bytes,3,opt,name=build_info,json=buildInfo,proto3" json:"build_info,omitempty"`
    CmdDescriptor      *CmdDescriptor      `protobuf:"bytes,4,opt,name=cmd_descriptor,json=cmdDescriptor,proto3" json:"cmd_descriptor,omitempty"`
    RemoteexecPlatform *RemoteexecPlatform `protobuf:"bytes,5,opt,name=remoteexec_platform,json=remoteexecPlatform,proto3" json:"remoteexec_platform,omitempty"`
    // If this config is configured for arbitrary toolchain support,
    // set dimensions of the config. Otherwise, this should be nil.
    Dimensions []string `protobuf:"bytes,6,rep,name=dimensions,proto3" json:"dimensions,omitempty"`
    // contains filtered or unexported fields
}

Config is a command config; mapping from selector.

func (*Config) Descriptor Uses

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

Deprecated: Use Config.ProtoReflect.Descriptor instead.

func (*Config) GetBuildInfo Uses

func (x *Config) GetBuildInfo() *BuildInfo

func (*Config) GetCmdDescriptor Uses

func (x *Config) GetCmdDescriptor() *CmdDescriptor

func (*Config) GetDimensions Uses

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

func (*Config) GetRemoteexecPlatform Uses

func (x *Config) GetRemoteexecPlatform() *RemoteexecPlatform

func (*Config) GetTarget Uses

func (x *Config) GetTarget() *Target

func (*Config) ProtoMessage Uses

func (*Config) ProtoMessage()

func (*Config) ProtoReflect Uses

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

func (*Config) Reset Uses

func (x *Config) Reset()

func (*Config) String Uses

func (x *Config) String() string

type ConfigMap Uses

type ConfigMap struct {
    Runtimes []*RuntimeConfig `protobuf:"bytes,1,rep,name=runtimes,proto3" json:"runtimes,omitempty"`
    // contains filtered or unexported fields
}

ConfigMap is a config map; data source of Config. admin creates/updates the file in <bucket>/<config>.config and ConfigMapBucket will read the info.

func (*ConfigMap) Descriptor Uses

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

Deprecated: Use ConfigMap.ProtoReflect.Descriptor instead.

func (*ConfigMap) GetRuntimes Uses

func (x *ConfigMap) GetRuntimes() []*RuntimeConfig

func (*ConfigMap) ProtoMessage Uses

func (*ConfigMap) ProtoMessage()

func (*ConfigMap) ProtoReflect Uses

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

func (*ConfigMap) Reset Uses

func (x *ConfigMap) Reset()

func (*ConfigMap) String Uses

func (x *ConfigMap) String() string

type ConfigResp Uses

type ConfigResp struct {
    VersionId string    `protobuf:"bytes,2,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"`
    Configs   []*Config `protobuf:"bytes,1,rep,name=configs,proto3" json:"configs,omitempty"`
    // contains filtered or unexported fields
}

TODO: remove ConfigResp.

func (*ConfigResp) Descriptor Uses

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

Deprecated: Use ConfigResp.ProtoReflect.Descriptor instead.

func (*ConfigResp) GetConfigs Uses

func (x *ConfigResp) GetConfigs() []*Config

func (*ConfigResp) GetVersionId Uses

func (x *ConfigResp) GetVersionId() string

func (*ConfigResp) ProtoMessage Uses

func (*ConfigResp) ProtoMessage()

func (*ConfigResp) ProtoReflect Uses

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

func (*ConfigResp) Reset Uses

func (x *ConfigResp) Reset()

func (*ConfigResp) String Uses

func (x *ConfigResp) String() string

type FileSpec Uses

type FileSpec struct {

    // path in client file system.
    // may be relative.
    // for cmd descriptor, it is relative to command binary directory.
    // (e.g. /usr/bin for /usr/bin/gcc).
    // for CmdReq, it is relative to working directory specified in cmd.Dir.
    Path         string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
    Size         int64  `protobuf:"varint,2,opt,name=size,proto3" json:"size,omitempty"`
    Hash         string `protobuf:"bytes,3,opt,name=hash,proto3" json:"hash,omitempty"` // hash is empty, if file is symlink, or dir.
    IsExecutable bool   `protobuf:"varint,4,opt,name=is_executable,json=isExecutable,proto3" json:"is_executable,omitempty"`
    Symlink      string `protobuf:"bytes,5,opt,name=symlink,proto3" json:"symlink,omitempty"` // hash is empty.
    // used for goma api.
    HashKey string        `protobuf:"bytes,6,opt,name=hash_key,json=hashKey,proto3" json:"hash_key,omitempty"`
    Blob    *api.FileBlob `protobuf:"bytes,7,opt,name=blob,proto3" json:"blob,omitempty"`
    // contains filtered or unexported fields
}

FileSpec is a file metadata. content is identified by hash. NEXT_ID_TO_USE: 9

func (*FileSpec) Descriptor Uses

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

Deprecated: Use FileSpec.ProtoReflect.Descriptor instead.

func (*FileSpec) GetBlob Uses

func (x *FileSpec) GetBlob() *api.FileBlob

func (*FileSpec) GetHash Uses

func (x *FileSpec) GetHash() string

func (*FileSpec) GetHashKey Uses

func (x *FileSpec) GetHashKey() string

func (*FileSpec) GetIsExecutable Uses

func (x *FileSpec) GetIsExecutable() bool

func (*FileSpec) GetPath Uses

func (x *FileSpec) GetPath() string

func (*FileSpec) GetSize Uses

func (x *FileSpec) GetSize() int64
func (x *FileSpec) GetSymlink() string

func (*FileSpec) ProtoMessage Uses

func (*FileSpec) ProtoMessage()

func (*FileSpec) ProtoReflect Uses

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

func (*FileSpec) Reset Uses

func (x *FileSpec) Reset()

func (*FileSpec) String Uses

func (x *FileSpec) String() string

type Install Uses

type Install struct {

    // command key (e.g. "gcc", "clang++")
    // note that this value will be Selector name in command.proto.
    // in other words, this value must be the same with matching CommandSpec name
    // in api/goma_data.proto if the install is a compiler.
    // i.e. equivalent CompilerFlags::GetCompilerName.
    //
    // followings are known compiler keys (as of Jun 2017):
    // gcc, g++, clang, clang++, cl.exe, clang-cl, javac, ps3ppusnc.exe
    //
    // for subprogram etc, it should be basename
    // e.g. "libFindBadConstructs.so".
    Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
    // prefix dir (or toolchain root).
    Prefix string `protobuf:"bytes,2,opt,name=prefix,proto3" json:"prefix,omitempty"`
    // prefix_style represents how prefix need to be handled.
    PrefixStyle Install_PrefixStyle `protobuf:"varint,7,opt,name=prefix_style,json=prefixStyle,proto3,enum=command.Install_PrefixStyle" json:"prefix_style,omitempty"`
    // path in prefix dir.
    // actual binary should be found in "prefix/path".
    Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
    // glob for additional files (i.e. wrapper scripts, libs etc).
    // glob syntax is filepath.Match's.
    // relative to prefix dir.
    // if it ends with '/', all files under this dir will be added.
    Files       []string             `protobuf:"bytes,4,rep,name=files,proto3" json:"files,omitempty"`
    ForSelector *Install_ForSelector `protobuf:"bytes,5,opt,name=for_selector,json=forSelector,proto3" json:"for_selector,omitempty"`
    // clang_need_target is true if --target option is always needed
    // to run command.
    // https://clang.llvm.org/docs/CrossCompilation.html#target-triple
    // this can be also true if exec_server want to use client's raw target.
    // e.g. set --target x86_64-apple-darwin-10.8.0 sent by client.
    // note: this is clang/clang++ only.
    ClangNeedTarget bool `protobuf:"varint,6,opt,name=clang_need_target,json=clangNeedTarget,proto3" json:"clang_need_target,omitempty"`
    // contains filtered or unexported fields
}

Install describes which command to be installed. path is represented as server path (posix style), and converted to client path in CmdDescriptor.Setup.

NEXT ID TO USE: 8

func (*Install) Descriptor Uses

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

Deprecated: Use Install.ProtoReflect.Descriptor instead.

func (*Install) GetClangNeedTarget Uses

func (x *Install) GetClangNeedTarget() bool

func (*Install) GetFiles Uses

func (x *Install) GetFiles() []string

func (*Install) GetForSelector Uses

func (x *Install) GetForSelector() *Install_ForSelector

func (*Install) GetKey Uses

func (x *Install) GetKey() string

func (*Install) GetPath Uses

func (x *Install) GetPath() string

func (*Install) GetPrefix Uses

func (x *Install) GetPrefix() string

func (*Install) GetPrefixStyle Uses

func (x *Install) GetPrefixStyle() Install_PrefixStyle

func (*Install) ProtoMessage Uses

func (*Install) ProtoMessage()

func (*Install) ProtoReflect Uses

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

func (*Install) Reset Uses

func (x *Install) Reset()

func (*Install) String Uses

func (x *Install) String() string

type Install_ForSelector Uses

type Install_ForSelector struct {

    // target of this cross compile.
    // this is used for dispatching a compiler as a build target.
    // note that target must be normalized.
    // e.g. x86_64-darwin
    Target string `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"`
    // binary_hash_from represents a filename to calculate hash when selector is
    // made.
    // e.g. darwin/third_party/llvm-build/Release+Asserts/bin/clang
    //
    // if prefix_style above is either of REGEXP or
    // REGEXP_MAY_SKIP_BINARY_HASH_MISSING, you can use regexp grouping variable
    // here.
    // e.g. if prefix_style is REGEXP, prefix is linux/clang-([0-9]+) and
    // found clang-12345, binary_hash_from darwin/clang-$1/bin/clang is
    // automatically converted to darwin/clang-12345/bin/clang when this
    // field is used.
    // if prefix_style is REGEXP_MAY_SKIP_BINARY_HASH_MISSING and
    // darwin/clang-12345/bin/clang does not exist, setup_cmd just skip
    // to proceed setup of the command without error.
    BinaryHashFrom string `protobuf:"bytes,2,opt,name=binary_hash_from,json=binaryHashFrom,proto3" json:"binary_hash_from,omitempty"`
    // contains filtered or unexported fields
}

ForSelector is used for setting selector for cross compile. selector's name and version is set by compiler specified by prefix and path above. note that setup_cmd in cmd_server is responsible for setting version and equivalent hash, and setting cross option in CmdDescriptor. for compilers, the result of --version option must be the same between ForSelector and Install. for subprograms, the behavior must be the same between ForSelector and Install. ForSelector and Install are expected to be made from the same source code.

func (*Install_ForSelector) Descriptor Uses

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

Deprecated: Use Install_ForSelector.ProtoReflect.Descriptor instead.

func (*Install_ForSelector) GetBinaryHashFrom Uses

func (x *Install_ForSelector) GetBinaryHashFrom() string

func (*Install_ForSelector) GetTarget Uses

func (x *Install_ForSelector) GetTarget() string

func (*Install_ForSelector) ProtoMessage Uses

func (*Install_ForSelector) ProtoMessage()

func (*Install_ForSelector) ProtoReflect Uses

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

func (*Install_ForSelector) Reset Uses

func (x *Install_ForSelector) Reset()

func (*Install_ForSelector) String Uses

func (x *Install_ForSelector) String() string

type Install_PrefixStyle Uses

type Install_PrefixStyle int32

PrefixStyle represents a style of prefix. if it is ASIS, prefix parameter is read as-is. if it is REGEXP, prefix parameter is read as a regular expression. the install is automatically extended to all matching directories. e.g. if there is directory named clang-r123 and clang-r234, and clang-r[0-9]+ is set in prefix, install for both clang-r123 and clang-r234 are made. in this case, you can use grouping i.e. parentheses, and you can use the variables in binary_hash_from field in ForSelector. if it is REGEXP_MAY_OMIT_BINARY_HASH_MISSING, then apply REGEXP rule but skip if a file specified with binary_hash_from is missing.

const (
    Install_ASIS                                Install_PrefixStyle = 0
    Install_REGEXP                              Install_PrefixStyle = 1
    Install_REGEXP_MAY_SKIP_BINARY_HASH_MISSING Install_PrefixStyle = 2
)

func (Install_PrefixStyle) Descriptor Uses

func (Install_PrefixStyle) Descriptor() protoreflect.EnumDescriptor

func (Install_PrefixStyle) Enum Uses

func (x Install_PrefixStyle) Enum() *Install_PrefixStyle

func (Install_PrefixStyle) EnumDescriptor Uses

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

Deprecated: Use Install_PrefixStyle.Descriptor instead.

func (Install_PrefixStyle) Number Uses

func (x Install_PrefixStyle) Number() protoreflect.EnumNumber

func (Install_PrefixStyle) String Uses

func (x Install_PrefixStyle) String() string

func (Install_PrefixStyle) Type Uses

func (Install_PrefixStyle) Type() protoreflect.EnumType

type PackageOpts Uses

type PackageOpts struct {

    // emulation_command specifies which emulation layer is necessary for this package.
    // If empty, it means no emulation layer is necessary.
    EmulationCommand string `protobuf:"bytes,7,opt,name=emulation_command,json=emulationCommand,proto3" json:"emulation_command,omitempty"`
    // output_file_filters is a set of regexp to filter output files.
    OutputFileFilters []string `protobuf:"bytes,5,rep,name=output_file_filters,json=outputFileFilters,proto3" json:"output_file_filters,omitempty"`
    // contains filtered or unexported fields
}

PackageOpts is a package option. NEXT_ID_TO_USE: 8

func (*PackageOpts) Descriptor Uses

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

Deprecated: Use PackageOpts.ProtoReflect.Descriptor instead.

func (*PackageOpts) GetEmulationCommand Uses

func (x *PackageOpts) GetEmulationCommand() string

func (*PackageOpts) GetOutputFileFilters Uses

func (x *PackageOpts) GetOutputFileFilters() []string

func (*PackageOpts) ProtoMessage Uses

func (*PackageOpts) ProtoMessage()

func (*PackageOpts) ProtoReflect Uses

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

func (*PackageOpts) Reset Uses

func (x *PackageOpts) Reset()

func (*PackageOpts) String Uses

func (x *PackageOpts) String() string

type Platform Uses

type Platform struct {
    Properties []*Platform_Property `protobuf:"bytes,1,rep,name=properties,proto3" json:"properties,omitempty"`
    // contains filtered or unexported fields
}

Platform is a set of requirements, such as haredware, operting system for RBE backend. matched with build.bazel.remote.execution.v2.Platform.

func (*Platform) Descriptor Uses

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

Deprecated: Use Platform.ProtoReflect.Descriptor instead.

func (*Platform) GetProperties Uses

func (x *Platform) GetProperties() []*Platform_Property

func (*Platform) ProtoMessage Uses

func (*Platform) ProtoMessage()

func (*Platform) ProtoReflect Uses

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

func (*Platform) Reset Uses

func (x *Platform) Reset()

func (*Platform) String Uses

func (x *Platform) String() string

type PlatformRuntimeConfig Uses

type PlatformRuntimeConfig struct {
    Dimensions []string `protobuf:"bytes,1,rep,name=dimensions,proto3" json:"dimensions,omitempty"`
    // Set true if nsjail is available in the platform image.
    HasNsjail bool `protobuf:"varint,2,opt,name=has_nsjail,json=hasNsjail,proto3" json:"has_nsjail,omitempty"`
    // contains filtered or unexported fields
}

PlatformRuntimeConfig is a config to use the runtime. NEXT ID TO USE: 3

func (*PlatformRuntimeConfig) Descriptor Uses

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

Deprecated: Use PlatformRuntimeConfig.ProtoReflect.Descriptor instead.

func (*PlatformRuntimeConfig) GetDimensions Uses

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

func (*PlatformRuntimeConfig) GetHasNsjail Uses

func (x *PlatformRuntimeConfig) GetHasNsjail() bool

func (*PlatformRuntimeConfig) ProtoMessage Uses

func (*PlatformRuntimeConfig) ProtoMessage()

func (*PlatformRuntimeConfig) ProtoReflect Uses

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

func (*PlatformRuntimeConfig) Reset Uses

func (x *PlatformRuntimeConfig) Reset()

func (*PlatformRuntimeConfig) String Uses

func (x *PlatformRuntimeConfig) String() string

type Platform_Property Uses

type Platform_Property struct {
    Name  string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
    Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
    // contains filtered or unexported fields
}

func (*Platform_Property) Descriptor Uses

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

Deprecated: Use Platform_Property.ProtoReflect.Descriptor instead.

func (*Platform_Property) GetName Uses

func (x *Platform_Property) GetName() string

func (*Platform_Property) GetValue Uses

func (x *Platform_Property) GetValue() string

func (*Platform_Property) ProtoMessage Uses

func (*Platform_Property) ProtoMessage()

func (*Platform_Property) ProtoReflect Uses

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

func (*Platform_Property) Reset Uses

func (x *Platform_Property) Reset()

func (*Platform_Property) String Uses

func (x *Platform_Property) String() string

type RemoteexecPlatform Uses

type RemoteexecPlatform struct {
    Properties []*RemoteexecPlatform_Property `protobuf:"bytes,1,rep,name=properties,proto3" json:"properties,omitempty"`
    // Basename of RBE instance to use. e.g. "default_instance" or "windows".
    RbeInstanceBasename string `protobuf:"bytes,2,opt,name=rbe_instance_basename,json=rbeInstanceBasename,proto3" json:"rbe_instance_basename,omitempty"`
    // Set true if nsjail is available in the platform image.
    // TODO: deprecated. always requires najail on linux platform.
    HasNsjail bool `protobuf:"varint,3,opt,name=has_nsjail,json=hasNsjail,proto3" json:"has_nsjail,omitempty"`
    // contains filtered or unexported fields
}

RemoteexecPlatform is a set of requirements, such as hardware, operating system, for an remoteexec API.

func (*RemoteexecPlatform) Descriptor Uses

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

Deprecated: Use RemoteexecPlatform.ProtoReflect.Descriptor instead.

func (*RemoteexecPlatform) GetHasNsjail Uses

func (x *RemoteexecPlatform) GetHasNsjail() bool

func (*RemoteexecPlatform) GetProperties Uses

func (x *RemoteexecPlatform) GetProperties() []*RemoteexecPlatform_Property

func (*RemoteexecPlatform) GetRbeInstanceBasename Uses

func (x *RemoteexecPlatform) GetRbeInstanceBasename() string

func (*RemoteexecPlatform) ProtoMessage Uses

func (*RemoteexecPlatform) ProtoMessage()

func (*RemoteexecPlatform) ProtoReflect Uses

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

func (*RemoteexecPlatform) Reset Uses

func (x *RemoteexecPlatform) Reset()

func (*RemoteexecPlatform) String Uses

func (x *RemoteexecPlatform) String() string

type RemoteexecPlatform_Property Uses

type RemoteexecPlatform_Property struct {

    // The property name.
    Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
    // The property value.
    Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
    // contains filtered or unexported fields
}

func (*RemoteexecPlatform_Property) Descriptor Uses

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

Deprecated: Use RemoteexecPlatform_Property.ProtoReflect.Descriptor instead.

func (*RemoteexecPlatform_Property) GetName Uses

func (x *RemoteexecPlatform_Property) GetName() string

func (*RemoteexecPlatform_Property) GetValue Uses

func (x *RemoteexecPlatform_Property) GetValue() string

func (*RemoteexecPlatform_Property) ProtoMessage Uses

func (*RemoteexecPlatform_Property) ProtoMessage()

func (*RemoteexecPlatform_Property) ProtoReflect Uses

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

func (*RemoteexecPlatform_Property) Reset Uses

func (x *RemoteexecPlatform_Property) Reset()

func (*RemoteexecPlatform_Property) String Uses

func (x *RemoteexecPlatform_Property) String() string

type RuntimeConfig Uses

type RuntimeConfig struct {

    // name of runtime.
    //
    // if this runtime config found in a bucket,
    // the following files will be detected in this name directory in the bucket:
    //   seq
    //   <prebuilt-item>/descriptors/<descriptorHash>
    Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
    // service address for the runtime. i.e. RBE address.
    ServiceAddr string `protobuf:"bytes,2,opt,name=service_addr,json=serviceAddr,proto3" json:"service_addr,omitempty"`
    // If not nil, this runtime config will be also configured
    // for arbitrary toolchain support.
    // This is selector to use this runtime. i.e. if client request contains
    // the dimentions, this runtime config will be selected.
    PlatformRuntimeConfig *PlatformRuntimeConfig `protobuf:"bytes,6,opt,name=platform_runtime_config,json=platformRuntimeConfig,proto3" json:"platform_runtime_config,omitempty"`
    // Platform is a set of requirements, such as hardware, operating system
    // for RBE backend.
    Platform *Platform `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform,omitempty"`
    // prebuilts prefix to allow.
    // if allowed_prebuilts specified, only prebuilts that are matched
    // by allowed_prebuilts is allowed. other prebuilts are disallowed.
    // if no allowed_prebuilts specified, any prebuilts are allowed
    // if it is not disallowed by disallowed_prebuilts.
    AllowedPrebuilts []string `protobuf:"bytes,3,rep,name=allowed_prebuilts,json=allowedPrebuilts,proto3" json:"allowed_prebuilts,omitempty"`
    // prebuilts prefix to disallow.
    // if no disallowed_prebuilts specified, only allowed_prebuilts is used.
    // if both are not specified, all prebuilts are allowed.
    DisallowedPrebuilts []string `protobuf:"bytes,4,rep,name=disallowed_prebuilts,json=disallowedPrebuilts,proto3" json:"disallowed_prebuilts,omitempty"`
    // commands that is disallowed in the runtime.
    // selector field is used for exact match, if it is specified.
    // selector field that is not specified in disallowed_commands will
    // match any selector.
    DisallowedCommands []*Selector `protobuf:"bytes,5,rep,name=disallowed_commands,json=disallowedCommands,proto3" json:"disallowed_commands,omitempty"`
    // contains filtered or unexported fields
}

RuntimeConfig is config for runtime. NEXT ID TO USE: 9

func (*RuntimeConfig) Descriptor Uses

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

Deprecated: Use RuntimeConfig.ProtoReflect.Descriptor instead.

func (*RuntimeConfig) GetAllowedPrebuilts Uses

func (x *RuntimeConfig) GetAllowedPrebuilts() []string

func (*RuntimeConfig) GetDisallowedCommands Uses

func (x *RuntimeConfig) GetDisallowedCommands() []*Selector

func (*RuntimeConfig) GetDisallowedPrebuilts Uses

func (x *RuntimeConfig) GetDisallowedPrebuilts() []string

func (*RuntimeConfig) GetName Uses

func (x *RuntimeConfig) GetName() string

func (*RuntimeConfig) GetPlatform Uses

func (x *RuntimeConfig) GetPlatform() *Platform

func (*RuntimeConfig) GetPlatformRuntimeConfig Uses

func (x *RuntimeConfig) GetPlatformRuntimeConfig() *PlatformRuntimeConfig

func (*RuntimeConfig) GetServiceAddr Uses

func (x *RuntimeConfig) GetServiceAddr() string

func (*RuntimeConfig) ProtoMessage Uses

func (*RuntimeConfig) ProtoMessage()

func (*RuntimeConfig) ProtoReflect Uses

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

func (*RuntimeConfig) Reset Uses

func (x *RuntimeConfig) Reset()

func (*RuntimeConfig) String Uses

func (x *RuntimeConfig) String() string

type Selector Uses

type Selector struct {

    // command name.
    // name is command base name without version number and architecture.
    // i.e. it should be equivalent CompilerFlags::GetCompilerName.
    // e.g. "gcc", "g++", "clang", "libFindBadConstructs.so",
    // "libFindBadConstructs.dylib".
    Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
    // version. e.g. "4.4.3[Ubuntu 4.4.3-4ubuntu5]"
    Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
    // compiler's target machine. e.g. gcc -dumpmachine.
    Target string `protobuf:"bytes,3,opt,name=target,proto3" json:"target,omitempty"`
    // binary hash of the command (sha256, hexencoded)
    BinaryHash string `protobuf:"bytes,4,opt,name=binary_hash,json=binaryHash,proto3" json:"binary_hash,omitempty"`
    // contains filtered or unexported fields
}

Selector is a command selector. it is used to select a compiler or a subprogram/plugin to run on cmd_server by matching it with CommandSpec or SubprogramSpec in a request from goma client. a subprogram/plugin use name and binary_hash for matching. basename of path in SubprogramSpec should match with name in Selector. TODO: consider also using target.

func (*Selector) Descriptor Uses

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

Deprecated: Use Selector.ProtoReflect.Descriptor instead.

func (*Selector) GetBinaryHash Uses

func (x *Selector) GetBinaryHash() string

func (*Selector) GetName Uses

func (x *Selector) GetName() string

func (*Selector) GetTarget Uses

func (x *Selector) GetTarget() string

func (*Selector) GetVersion Uses

func (x *Selector) GetVersion() string

func (*Selector) ProtoMessage Uses

func (*Selector) ProtoMessage()

func (*Selector) ProtoReflect Uses

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

func (*Selector) Reset Uses

func (x *Selector) Reset()

func (*Selector) String Uses

func (x *Selector) String() string

type Setup Uses

type Setup struct {
    Installs []*Install `protobuf:"bytes,1,rep,name=installs,proto3" json:"installs,omitempty"`
    // contains filtered or unexported fields
}

func (*Setup) Descriptor Uses

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

Deprecated: Use Setup.ProtoReflect.Descriptor instead.

func (*Setup) GetInstalls Uses

func (x *Setup) GetInstalls() []*Install

func (*Setup) ProtoMessage Uses

func (*Setup) ProtoMessage()

func (*Setup) ProtoReflect Uses

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

func (*Setup) Reset Uses

func (x *Setup) Reset()

func (*Setup) String Uses

func (x *Setup) String() string

type Target Uses

type Target struct {
    Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"` // TBD: dial option?
    // contains filtered or unexported fields
}

Target is a target address.

func (*Target) Descriptor Uses

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

Deprecated: Use Target.ProtoReflect.Descriptor instead.

func (*Target) GetAddr Uses

func (x *Target) GetAddr() string

func (*Target) ProtoMessage Uses

func (*Target) ProtoMessage()

func (*Target) ProtoReflect Uses

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

func (*Target) Reset Uses

func (x *Target) Reset()

func (*Target) String Uses

func (x *Target) String() string

Package command imports 7 packages (graph) and is imported by 7 packages. Updated 2020-08-05. Refresh now. Tools for package owners.