Documentation
¶
Overview ¶
Package config contains service configuration endpoints and data definition for crosskylabadmin.
Index ¶
- Variables
- func Import(c context.Context) error
- func Middleware(c *router.Context, next router.Handler)
- func Use(c context.Context, cfg *Config) context.Context
- type Config
- func (*Config) Descriptor() ([]byte, []int)deprecated
- func (x *Config) GetAccessGroup() string
- func (x *Config) GetKarte() *KarteConfig
- func (x *Config) GetParis() *Paris
- func (x *Config) GetRpcControl() *RPCControl
- func (x *Config) GetStableVersionConfig() *StableVersionConfig
- func (x *Config) GetSwarming() *Swarming
- func (x *Config) GetTasker() *Tasker
- func (x *Config) GetUFS() *UFSConfig
- func (*Config) ProtoMessage()
- func (x *Config) ProtoReflect() protoreflect.Message
- func (x *Config) Reset()
- func (x *Config) String() string
- type KarteConfig
- type Paris
- func (*Paris) Descriptor() ([]byte, []int)deprecated
- func (x *Paris) GetAuditRpm() *RolloutConfig
- func (x *Paris) GetAuditStorage() *RolloutConfig
- func (x *Paris) GetAuditUsb() *RolloutConfig
- func (x *Paris) GetDutRepair() *RolloutConfig
- func (x *Paris) GetDutRepairOnNeedsManualRepair() *RolloutConfig
- func (x *Paris) GetDutRepairOnRepairFailed() *RolloutConfig
- func (x *Paris) GetDutVerify() *RolloutConfig
- func (x *Paris) GetLabstationRepair() *RolloutConfig
- func (*Paris) ProtoMessage()
- func (x *Paris) ProtoReflect() protoreflect.Message
- func (x *Paris) Reset()
- func (x *Paris) String() string
- type PermilleData
- type RPCControl
- func (*RPCControl) Descriptor() ([]byte, []int)deprecated
- func (x *RPCControl) GetDisableDumpStableVersionToDatastore() bool
- func (x *RPCControl) GetDisablePushBotsForAdminTasks() bool
- func (x *RPCControl) GetDisablePushDutsForAdminAudit() bool
- func (x *RPCControl) GetDisablePushLabstationsForRepair() bool
- func (*RPCControl) ProtoMessage()
- func (x *RPCControl) ProtoReflect() protoreflect.Message
- func (x *RPCControl) Reset()
- func (x *RPCControl) String() string
- type RolloutConfig
- func (x *RolloutConfig) ComputePermilleData(ctx context.Context, hostname string) *PermilleData
- func (*RolloutConfig) Descriptor() ([]byte, []int)deprecated
- func (x *RolloutConfig) GetEnable() bool
- func (x *RolloutConfig) GetLatestPermille() int32
- func (x *RolloutConfig) GetOptinAllDuts() bool
- func (x *RolloutConfig) GetOptinDutPool() []string
- func (x *RolloutConfig) GetPattern() []*RolloutConfig_Pattern
- func (x *RolloutConfig) GetProdPermille() int32
- func (x *RolloutConfig) GetSkipHosts() []string
- func (*RolloutConfig) ProtoMessage()
- func (x *RolloutConfig) ProtoReflect() protoreflect.Message
- func (x *RolloutConfig) Reset()
- func (x *RolloutConfig) String() string
- func (x *RolloutConfig) ValidateNoRepairOnlyFields() error
- type RolloutConfig_Pattern
- func (*RolloutConfig_Pattern) Descriptor() ([]byte, []int)deprecated
- func (x *RolloutConfig_Pattern) GetLatestPermille() int32
- func (x *RolloutConfig_Pattern) GetPattern() string
- func (x *RolloutConfig_Pattern) GetProdPermille() int32
- func (*RolloutConfig_Pattern) ProtoMessage()
- func (x *RolloutConfig_Pattern) ProtoReflect() protoreflect.Message
- func (x *RolloutConfig_Pattern) Reset()
- func (x *RolloutConfig_Pattern) String() string
- type SmartSchedulingConfig
- func (*SmartSchedulingConfig) Descriptor() ([]byte, []int)deprecated
- func (x *SmartSchedulingConfig) GetEnabled() bool
- func (x *SmartSchedulingConfig) GetMaximumDevices() int32
- func (x *SmartSchedulingConfig) GetRolloutPermille() int32
- func (*SmartSchedulingConfig) ProtoMessage()
- func (x *SmartSchedulingConfig) ProtoReflect() protoreflect.Message
- func (x *SmartSchedulingConfig) Reset()
- func (x *SmartSchedulingConfig) String() string
- type StableVersionConfig
- func (*StableVersionConfig) Descriptor() ([]byte, []int)deprecated
- func (x *StableVersionConfig) GetBranch() string
- func (x *StableVersionConfig) GetGerritHost() string
- func (x *StableVersionConfig) GetGitilesHost() string
- func (x *StableVersionConfig) GetProject() string
- func (x *StableVersionConfig) GetStableVersionDataPath() string
- func (*StableVersionConfig) ProtoMessage()
- func (x *StableVersionConfig) ProtoReflect() protoreflect.Message
- func (x *StableVersionConfig) Reset()
- func (x *StableVersionConfig) String() string
- type Swarming
- func (*Swarming) Descriptor() ([]byte, []int)deprecated
- func (x *Swarming) GetBotPool() string
- func (x *Swarming) GetFleetAdminTaskTag() string
- func (x *Swarming) GetHost() string
- func (x *Swarming) GetLuciProjectTag() string
- func (x *Swarming) GetPoolCfgs() []*Swarming_PoolCfg
- func (*Swarming) ProtoMessage()
- func (x *Swarming) ProtoReflect() protoreflect.Message
- func (x *Swarming) Reset()
- func (x *Swarming) String() string
- type Swarming_PoolCfg
- func (x *Swarming_PoolCfg) BotIDToDUTName(botId string) string
- func (*Swarming_PoolCfg) Descriptor() ([]byte, []int)deprecated
- func (x *Swarming_PoolCfg) GetAuditEnabled() bool
- func (x *Swarming_PoolCfg) GetBotPrefix() string
- func (x *Swarming_PoolCfg) GetBuilderBucket() string
- func (x *Swarming_PoolCfg) GetPoolName() string
- func (x *Swarming_PoolCfg) GetUfsNamespace() string
- func (*Swarming_PoolCfg) ProtoMessage()
- func (x *Swarming_PoolCfg) ProtoReflect() protoreflect.Message
- func (x *Swarming_PoolCfg) Reset()
- func (x *Swarming_PoolCfg) String() string
- func (x *Swarming_PoolCfg) UFSCtxNamespace() string
- type Tasker
- type UFSConfig
Constants ¶
This section is empty.
Variables ¶
var File_go_chromium_org_infra_appengine_crosskylabadmin_internal_app_config_config_proto protoreflect.FileDescriptor
Functions ¶
func Import ¶
Import fetches the most recent config and stores it in the datastore.
Must be called periodically to make sure Get and Middleware use the freshest config.
func Middleware ¶
Middleware loads the service config and installs it into the context.
Types ¶
type Config ¶
type Config struct { // AccessGroup is the luci-auth group controlling access to admin app APIs. AccessGroup string `protobuf:"bytes,1,opt,name=access_group,json=accessGroup,proto3" json:"access_group,omitempty"` // Swarming contains information about the Swarming instance that hosts the // bots managed by this app. Swarming *Swarming `protobuf:"bytes,2,opt,name=swarming,proto3" json:"swarming,omitempty"` // Tasker contains configuration data specific to the Tasker API endpoints. Tasker *Tasker `protobuf:"bytes,3,opt,name=tasker,proto3" json:"tasker,omitempty"` // RPCcontrol controls rpc traffic. RpcControl *RPCControl `protobuf:"bytes,7,opt,name=rpc_control,json=rpcControl,proto3" json:"rpc_control,omitempty"` // StableVersionConfig determines the location of stable version related // information StableVersionConfig *StableVersionConfig `protobuf:"bytes,8,opt,name=stable_version_config,json=stableVersionConfig,proto3" json:"stable_version_config,omitempty"` // Paris is the configuration settings for paris (the new repair &c flow). Paris *Paris `protobuf:"bytes,10,opt,name=paris,proto3" json:"paris,omitempty"` // UFS is the configuration settings for UFS. UFS *UFSConfig `protobuf:"bytes,11,opt,name=UFS,proto3" json:"UFS,omitempty"` // karte is the configuration settings for Karte. Karte *KarteConfig `protobuf:"bytes,12,opt,name=karte,proto3" json:"karte,omitempty"` // contains filtered or unexported fields }
Config is the configuration data served by luci-config for this app.
func (*Config) Descriptor
deprecated
func (*Config) GetAccessGroup ¶
func (*Config) GetKarte ¶
func (x *Config) GetKarte() *KarteConfig
func (*Config) GetRpcControl ¶
func (x *Config) GetRpcControl() *RPCControl
func (*Config) GetStableVersionConfig ¶
func (x *Config) GetStableVersionConfig() *StableVersionConfig
func (*Config) GetSwarming ¶
func (*Config) ProtoMessage ¶
func (*Config) ProtoMessage()
func (*Config) ProtoReflect ¶
func (x *Config) ProtoReflect() protoreflect.Message
type KarteConfig ¶
type KarteConfig struct { // Host is the host of the Karte service. // // Sample values: // - chrome-fleet-karte.appspot.com // - chrome-fleet-karte-dev.appspot.com Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"` // contains filtered or unexported fields }
KarteConfig contains information about Karte, such as its hostname.
func (*KarteConfig) Descriptor
deprecated
func (*KarteConfig) Descriptor() ([]byte, []int)
Deprecated: Use KarteConfig.ProtoReflect.Descriptor instead.
func (*KarteConfig) GetHost ¶
func (x *KarteConfig) GetHost() string
func (*KarteConfig) ProtoMessage ¶
func (*KarteConfig) ProtoMessage()
func (*KarteConfig) ProtoReflect ¶
func (x *KarteConfig) ProtoReflect() protoreflect.Message
func (*KarteConfig) Reset ¶
func (x *KarteConfig) Reset()
func (*KarteConfig) String ¶
func (x *KarteConfig) String() string
type Paris ¶
type Paris struct { // DUT_repair controls the repair task for DUTs. // For expected state needs_repair. DutRepair *RolloutConfig `protobuf:"bytes,5,opt,name=dut_repair,json=dutRepair,proto3" json:"dut_repair,omitempty"` // DUT_repair controls the repair task for DUTs. // For expected state repair_failed. DutRepairOnRepairFailed *RolloutConfig `` /* 136-byte string literal not displayed */ // DUT_repair controls the repair task for DUTs. // For expected state needs_manual_repair. DutRepairOnNeedsManualRepair *RolloutConfig `` /* 154-byte string literal not displayed */ // AuditRPM controls the rollout settings for audit RPM tasks. AuditRpm *RolloutConfig `protobuf:"bytes,11,opt,name=audit_rpm,json=auditRpm,proto3" json:"audit_rpm,omitempty"` // AuditStorage controls the rollout settings for audit storage tasks. AuditStorage *RolloutConfig `protobuf:"bytes,12,opt,name=audit_storage,json=auditStorage,proto3" json:"audit_storage,omitempty"` // AuditUSB controls the rollout settings for audit USB tasks. AuditUsb *RolloutConfig `protobuf:"bytes,13,opt,name=audit_usb,json=auditUsb,proto3" json:"audit_usb,omitempty"` // DUT_verify controls the verify task for DUTs. DutVerify *RolloutConfig `protobuf:"bytes,6,opt,name=dut_verify,json=dutVerify,proto3" json:"dut_verify,omitempty"` // Labstation_repair controls the rollout of repair for labstations. LabstationRepair *RolloutConfig `protobuf:"bytes,8,opt,name=labstation_repair,json=labstationRepair,proto3" json:"labstation_repair,omitempty"` // contains filtered or unexported fields }
Paris controls whether the Paris is enabled for tasks like repair and audit. It also supports slow rollouts.
Note that there are a few levels of checks before we actually use the Paris flow. For example, if we are considering repairing a labstation with Paris, we will consult the configuration in the following way.
func (*Paris) Descriptor
deprecated
func (*Paris) GetAuditRpm ¶
func (x *Paris) GetAuditRpm() *RolloutConfig
func (*Paris) GetAuditStorage ¶
func (x *Paris) GetAuditStorage() *RolloutConfig
func (*Paris) GetAuditUsb ¶
func (x *Paris) GetAuditUsb() *RolloutConfig
func (*Paris) GetDutRepair ¶
func (x *Paris) GetDutRepair() *RolloutConfig
func (*Paris) GetDutRepairOnNeedsManualRepair ¶
func (x *Paris) GetDutRepairOnNeedsManualRepair() *RolloutConfig
func (*Paris) GetDutRepairOnRepairFailed ¶
func (x *Paris) GetDutRepairOnRepairFailed() *RolloutConfig
func (*Paris) GetDutVerify ¶
func (x *Paris) GetDutVerify() *RolloutConfig
func (*Paris) GetLabstationRepair ¶
func (x *Paris) GetLabstationRepair() *RolloutConfig
func (*Paris) ProtoMessage ¶
func (*Paris) ProtoMessage()
func (*Paris) ProtoReflect ¶
func (x *Paris) ProtoReflect() protoreflect.Message
type PermilleData ¶
PermilleData contains information on what portion of traffic to opt into Prod and Latest.
func (*PermilleData) ChooseImplementation ¶
func (d *PermilleData) ChooseImplementation(ctx context.Context, randFloat float64) (heuristics.TaskType, error)
ChooseImplementation picks an implementation for the task. It fails if and only if randFloat is out of range.
type RPCControl ¶
type RPCControl struct { // Configuration of if disabling some rpc calls. It's used in experimental // stage. Once an RPC call is verified to be working/useless, it will be // added/deleted. DisablePushBotsForAdminTasks bool `` /* 154-byte string literal not displayed */ DisablePushLabstationsForRepair bool `` /* 161-byte string literal not displayed */ DisableDumpStableVersionToDatastore bool `` /* 175-byte string literal not displayed */ DisablePushDutsForAdminAudit bool `` /* 155-byte string literal not displayed */ // contains filtered or unexported fields }
next tag: 11
func (*RPCControl) Descriptor
deprecated
func (*RPCControl) Descriptor() ([]byte, []int)
Deprecated: Use RPCControl.ProtoReflect.Descriptor instead.
func (*RPCControl) GetDisableDumpStableVersionToDatastore ¶
func (x *RPCControl) GetDisableDumpStableVersionToDatastore() bool
func (*RPCControl) GetDisablePushBotsForAdminTasks ¶
func (x *RPCControl) GetDisablePushBotsForAdminTasks() bool
func (*RPCControl) GetDisablePushDutsForAdminAudit ¶
func (x *RPCControl) GetDisablePushDutsForAdminAudit() bool
func (*RPCControl) GetDisablePushLabstationsForRepair ¶
func (x *RPCControl) GetDisablePushLabstationsForRepair() bool
func (*RPCControl) ProtoMessage ¶
func (*RPCControl) ProtoMessage()
func (*RPCControl) ProtoReflect ¶
func (x *RPCControl) ProtoReflect() protoreflect.Message
func (*RPCControl) Reset ¶
func (x *RPCControl) Reset()
func (*RPCControl) String ¶
func (x *RPCControl) String() string
type RolloutConfig ¶
type RolloutConfig struct { // Enable is set to true when recovery is enabled at all. If it is set to // false, the entire DUT recovery flow for PARIS is skipped and the legacy // flow is used instead. Enable bool `protobuf:"varint,1,opt,name=enable,proto3" json:"enable,omitempty"` // Optin_all_duts opts in every DUT (regardless of optin_dut_prefix) if set to // true. OptinAllDuts bool `protobuf:"varint,2,opt,name=optin_all_duts,json=optinAllDuts,proto3" json:"optin_all_duts,omitempty"` // Optin_dut_pool controls on a per-bool basis. OptinDutPool []string `protobuf:"bytes,3,rep,name=optin_dut_pool,json=optinDutPool,proto3" json:"optin_dut_pool,omitempty"` // prod_permille is the probability (multiplied by 1000) that we use the new // flow for a DUT if we are permitted to repair the device in question by the // other settings in the config file. ProdPermille int32 `protobuf:"varint,6,opt,name=prod_permille,json=prodPermille,proto3" json:"prod_permille,omitempty"` // latest_permille is the probability (multiplied by 1000) that we use the new // flow for a DUT at the "latest" label. The "latest" label is automatically // marched forward to the latest version of paris that has been build, as // opposed to "prod" which is manually updated after validation. // // Note that latest_permille and prod_permille are alternatives. // latest_permille + prod_permille is the chance of using Paris at all. // 1000 - latest_permille - prod_permille is the chance of using the legacy // flow. // // For example, if prod is 500 and latest is 200, then legacy is implicitly // 300. If prod is 20 and legacy is 1, then legacy is implicitly 979. LatestPermille int32 `protobuf:"varint,7,opt,name=latest_permille,json=latestPermille,proto3" json:"latest_permille,omitempty"` // skip_hosts contains a pool of hostnames. SkipHosts []string `protobuf:"bytes,9,rep,name=skip_hosts,json=skipHosts,proto3" json:"skip_hosts,omitempty"` // pattern is a list of regex patterns that are associated with prod and // latest permilles. // // The patterns are tried LAST to FIRST. // The reason for this is to allow more general patterns to come first and // more specific overrides to come later. // // For example, the following is a reasonable sequence of patterns. // - ^satlab // - ^satlab-555555 // - ^satlab-555555-host1 // // Organizing these patterns more specific to less specific reads better than // organizing them in another way. Pattern []*RolloutConfig_Pattern `protobuf:"bytes,8,rep,name=pattern,proto3" json:"pattern,omitempty"` // contains filtered or unexported fields }
RolloutConfig controls the rollout of a new feature.
For example, the following config rolls out a new feature at the 5% (50/1000) level for devices in the pools "a" and "b". Devices not in these pools are rolled out at the 0% level.
{ "enable": True, "optin_all_duts": False, "optin_dut_pool": [ "a", "b" ], "prod_permille": 50, }
func (*RolloutConfig) ComputePermilleData ¶
func (x *RolloutConfig) ComputePermilleData(ctx context.Context, hostname string) *PermilleData
ComputeProdPermille computes the most applicable prod permille for a device.
func (*RolloutConfig) Descriptor
deprecated
func (*RolloutConfig) Descriptor() ([]byte, []int)
Deprecated: Use RolloutConfig.ProtoReflect.Descriptor instead.
func (*RolloutConfig) GetEnable ¶
func (x *RolloutConfig) GetEnable() bool
func (*RolloutConfig) GetLatestPermille ¶
func (x *RolloutConfig) GetLatestPermille() int32
func (*RolloutConfig) GetOptinAllDuts ¶
func (x *RolloutConfig) GetOptinAllDuts() bool
func (*RolloutConfig) GetOptinDutPool ¶
func (x *RolloutConfig) GetOptinDutPool() []string
func (*RolloutConfig) GetPattern ¶
func (x *RolloutConfig) GetPattern() []*RolloutConfig_Pattern
func (*RolloutConfig) GetProdPermille ¶
func (x *RolloutConfig) GetProdPermille() int32
func (*RolloutConfig) GetSkipHosts ¶
func (x *RolloutConfig) GetSkipHosts() []string
func (*RolloutConfig) ProtoMessage ¶
func (*RolloutConfig) ProtoMessage()
func (*RolloutConfig) ProtoReflect ¶
func (x *RolloutConfig) ProtoReflect() protoreflect.Message
func (*RolloutConfig) Reset ¶
func (x *RolloutConfig) Reset()
func (*RolloutConfig) String ¶
func (x *RolloutConfig) String() string
func (*RolloutConfig) ValidateNoRepairOnlyFields ¶
func (x *RolloutConfig) ValidateNoRepairOnlyFields() error
ValidateNoRepairOnlyFields is intended to be called on a rollout config for an audit task. It checks whether there are any repair-only fields set.
type RolloutConfig_Pattern ¶
type RolloutConfig_Pattern struct { // A pattern is a regex like "^satlab-555555". Pattern string `protobuf:"bytes,1,opt,name=pattern,proto3" json:"pattern,omitempty"` // prod_permille is the probability multiplied by 1000 of using prod. ProdPermille int32 `protobuf:"varint,2,opt,name=prod_permille,json=prodPermille,proto3" json:"prod_permille,omitempty"` // latest_permille is the probability multiplied by 1000 of using latest. // // In the event that latest + prod > 1000, latest is treated as if it were // (1000 - prod). LatestPermille int32 `protobuf:"varint,3,opt,name=latest_permille,json=latestPermille,proto3" json:"latest_permille,omitempty"` // contains filtered or unexported fields }
A Pattern associates a regex identifier to a prod_permille and latest_permille.
func (*RolloutConfig_Pattern) Descriptor
deprecated
func (*RolloutConfig_Pattern) Descriptor() ([]byte, []int)
Deprecated: Use RolloutConfig_Pattern.ProtoReflect.Descriptor instead.
func (*RolloutConfig_Pattern) GetLatestPermille ¶
func (x *RolloutConfig_Pattern) GetLatestPermille() int32
func (*RolloutConfig_Pattern) GetPattern ¶
func (x *RolloutConfig_Pattern) GetPattern() string
func (*RolloutConfig_Pattern) GetProdPermille ¶
func (x *RolloutConfig_Pattern) GetProdPermille() int32
func (*RolloutConfig_Pattern) ProtoMessage ¶
func (*RolloutConfig_Pattern) ProtoMessage()
func (*RolloutConfig_Pattern) ProtoReflect ¶
func (x *RolloutConfig_Pattern) ProtoReflect() protoreflect.Message
func (*RolloutConfig_Pattern) Reset ¶
func (x *RolloutConfig_Pattern) Reset()
func (*RolloutConfig_Pattern) String ¶
func (x *RolloutConfig_Pattern) String() string
type SmartSchedulingConfig ¶
type SmartSchedulingConfig struct { Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` // rollout permille is an amount out of 1000 that controls. RolloutPermille int32 `protobuf:"varint,2,opt,name=rollout_permille,json=rolloutPermille,proto3" json:"rollout_permille,omitempty"` // maximum devices controls how many devices total can use the new flow to limit the rollout. MaximumDevices int32 `protobuf:"varint,3,opt,name=maximum_devices,json=maximumDevices,proto3" json:"maximum_devices,omitempty"` // contains filtered or unexported fields }
SmartSchedulingConfig controls whether the smart scheduling feature is enabled or disabled and controls its rollout.
func (*SmartSchedulingConfig) Descriptor
deprecated
func (*SmartSchedulingConfig) Descriptor() ([]byte, []int)
Deprecated: Use SmartSchedulingConfig.ProtoReflect.Descriptor instead.
func (*SmartSchedulingConfig) GetEnabled ¶
func (x *SmartSchedulingConfig) GetEnabled() bool
func (*SmartSchedulingConfig) GetMaximumDevices ¶
func (x *SmartSchedulingConfig) GetMaximumDevices() int32
func (*SmartSchedulingConfig) GetRolloutPermille ¶
func (x *SmartSchedulingConfig) GetRolloutPermille() int32
func (*SmartSchedulingConfig) ProtoMessage ¶
func (*SmartSchedulingConfig) ProtoMessage()
func (*SmartSchedulingConfig) ProtoReflect ¶
func (x *SmartSchedulingConfig) ProtoReflect() protoreflect.Message
func (*SmartSchedulingConfig) Reset ¶
func (x *SmartSchedulingConfig) Reset()
func (*SmartSchedulingConfig) String ¶
func (x *SmartSchedulingConfig) String() string
type StableVersionConfig ¶
type StableVersionConfig struct { // The Gerrit Server for the stable version data file's repo // example: "chrome-internal-review.googlesource.com" GerritHost string `protobuf:"bytes,1,opt,name=gerrit_host,json=gerritHost,proto3" json:"gerrit_host,omitempty"` // The Gitiles Server for the stable version data file's repo // example: "chrome-internal.googlesource.com" GitilesHost string `protobuf:"bytes,2,opt,name=gitiles_host,json=gitilesHost,proto3" json:"gitiles_host,omitempty"` // The project name for the stable version data file's repo // example: "chromeos/infra/config" Project string `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"` // The branch that the stable version data file is on // example: "main" Branch string `protobuf:"bytes,4,opt,name=branch,proto3" json:"branch,omitempty"` // The path, relative to the repo root, of the stable version data file // example: "lab_platform/stable_version_data/stable_versions.cfg" StableVersionDataPath string `` /* 128-byte string literal not displayed */ // contains filtered or unexported fields }
func (*StableVersionConfig) Descriptor
deprecated
func (*StableVersionConfig) Descriptor() ([]byte, []int)
Deprecated: Use StableVersionConfig.ProtoReflect.Descriptor instead.
func (*StableVersionConfig) GetBranch ¶
func (x *StableVersionConfig) GetBranch() string
func (*StableVersionConfig) GetGerritHost ¶
func (x *StableVersionConfig) GetGerritHost() string
func (*StableVersionConfig) GetGitilesHost ¶
func (x *StableVersionConfig) GetGitilesHost() string
func (*StableVersionConfig) GetProject ¶
func (x *StableVersionConfig) GetProject() string
func (*StableVersionConfig) GetStableVersionDataPath ¶
func (x *StableVersionConfig) GetStableVersionDataPath() string
func (*StableVersionConfig) ProtoMessage ¶
func (*StableVersionConfig) ProtoMessage()
func (*StableVersionConfig) ProtoReflect ¶
func (x *StableVersionConfig) ProtoReflect() protoreflect.Message
func (*StableVersionConfig) Reset ¶
func (x *StableVersionConfig) Reset()
func (*StableVersionConfig) String ¶
func (x *StableVersionConfig) String() string
type Swarming ¶
type Swarming struct { // Host is the swarming instance hosting skylab bots. Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"` // BotPool is the swarming pool containing skylab bots. BotPool string `protobuf:"bytes,2,opt,name=bot_pool,json=botPool,proto3" json:"bot_pool,omitempty"` // FleetAdminTaskTag identifies all tasks created by the fleet admin app. FleetAdminTaskTag string `protobuf:"bytes,3,opt,name=fleet_admin_task_tag,json=fleetAdminTaskTag,proto3" json:"fleet_admin_task_tag,omitempty"` // LuciProjectTag is the swarming tag that associates the task with a // luci project, allowing milo to work with the swarming UI. LuciProjectTag string `protobuf:"bytes,4,opt,name=luci_project_tag,json=luciProjectTag,proto3" json:"luci_project_tag,omitempty"` // PoolCfgs contains all configs required for the admin jobs of a particular pool. PoolCfgs []*Swarming_PoolCfg `protobuf:"bytes,5,rep,name=pool_cfgs,json=poolCfgs,proto3" json:"pool_cfgs,omitempty"` // contains filtered or unexported fields }
Swarming contains information about the Swarming instance that hosts the bots managed by this app.
func (*Swarming) Descriptor
deprecated
func (*Swarming) GetBotPool ¶
func (*Swarming) GetFleetAdminTaskTag ¶
func (*Swarming) GetLuciProjectTag ¶
func (*Swarming) GetPoolCfgs ¶
func (x *Swarming) GetPoolCfgs() []*Swarming_PoolCfg
func (*Swarming) ProtoMessage ¶
func (*Swarming) ProtoMessage()
func (*Swarming) ProtoReflect ¶
func (x *Swarming) ProtoReflect() protoreflect.Message
type Swarming_PoolCfg ¶
type Swarming_PoolCfg struct { // The pool containing the skylab bots PoolName string `protobuf:"bytes,1,opt,name=pool_name,json=poolName,proto3" json:"pool_name,omitempty"` // The builder bucket specifies the bucket to use to run swarming task. BuilderBucket string `protobuf:"bytes,2,opt,name=builder_bucket,json=builderBucket,proto3" json:"builder_bucket,omitempty"` // BotPrefix specified the prefix used or set for the swarming bots. // Please note, PoolName is used to get the list of all swarming bots // from the pool, and BotPrefix is the prefix used by each bot set in // the bot config. BotPrefix string `protobuf:"bytes,3,opt,name=bot_prefix,json=botPrefix,proto3" json:"bot_prefix,omitempty"` // UfsNamespace specifies the namespace to be used to fetch DUT information. UfsNamespace string `protobuf:"bytes,4,opt,name=ufs_namespace,json=ufsNamespace,proto3" json:"ufs_namespace,omitempty"` // AuditEnabled specified is audit tasks is enabled to be scheduled. AuditEnabled bool `protobuf:"varint,5,opt,name=audit_enabled,json=auditEnabled,proto3" json:"audit_enabled,omitempty"` // contains filtered or unexported fields }
func (*Swarming_PoolCfg) BotIDToDUTName ¶
func (x *Swarming_PoolCfg) BotIDToDUTName(botId string) string
BotIDToDUTName converts botID to DUT-name populated on swarming.
func (*Swarming_PoolCfg) Descriptor
deprecated
func (*Swarming_PoolCfg) Descriptor() ([]byte, []int)
Deprecated: Use Swarming_PoolCfg.ProtoReflect.Descriptor instead.
func (*Swarming_PoolCfg) GetAuditEnabled ¶
func (x *Swarming_PoolCfg) GetAuditEnabled() bool
func (*Swarming_PoolCfg) GetBotPrefix ¶
func (x *Swarming_PoolCfg) GetBotPrefix() string
func (*Swarming_PoolCfg) GetBuilderBucket ¶
func (x *Swarming_PoolCfg) GetBuilderBucket() string
func (*Swarming_PoolCfg) GetPoolName ¶
func (x *Swarming_PoolCfg) GetPoolName() string
func (*Swarming_PoolCfg) GetUfsNamespace ¶
func (x *Swarming_PoolCfg) GetUfsNamespace() string
func (*Swarming_PoolCfg) ProtoMessage ¶
func (*Swarming_PoolCfg) ProtoMessage()
func (*Swarming_PoolCfg) ProtoReflect ¶
func (x *Swarming_PoolCfg) ProtoReflect() protoreflect.Message
func (*Swarming_PoolCfg) Reset ¶
func (x *Swarming_PoolCfg) Reset()
func (*Swarming_PoolCfg) String ¶
func (x *Swarming_PoolCfg) String() string
func (*Swarming_PoolCfg) UFSCtxNamespace ¶
func (x *Swarming_PoolCfg) UFSCtxNamespace() string
UFSCtxNamespace provides namespace value to connect with UFS for device in particular swarming-pool.
type Tasker ¶
type Tasker struct { // EnableSmartScheduling is a kill switch for the smart-scheduling feature. // Setting it to false or not setting it prevents the smart-scheduling logic from // affecting the behavior of CrOSSkylabAdmin. EnableSmartScheduling bool `` /* 127-byte string literal not displayed */ // contains filtered or unexported fields }
Tasker contains configuration data specific to the Tasker API endpoints.
func (*Tasker) Descriptor
deprecated
func (*Tasker) GetEnableSmartScheduling ¶
func (*Tasker) ProtoMessage ¶
func (*Tasker) ProtoMessage()
func (*Tasker) ProtoReflect ¶
func (x *Tasker) ProtoReflect() protoreflect.Message
type UFSConfig ¶
type UFSConfig struct { // Host is the host of the UFS service. // // Sample values: // - "ufs.api.cr.dev" // - "staging.ufs.api.cr.dev", Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"` // contains filtered or unexported fields }
UFSConfig contains information about UFS, such as its hostname.
func (*UFSConfig) Descriptor
deprecated
func (*UFSConfig) ProtoMessage ¶
func (*UFSConfig) ProtoMessage()
func (*UFSConfig) ProtoReflect ¶
func (x *UFSConfig) ProtoReflect() protoreflect.Message