bot_configs

package
v0.0.0-...-fcfcbe3 Latest Latest
Warning

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

Go to latest
Published: Oct 31, 2024 License: BSD-3-Clause Imports: 9 Imported by: 0

Documentation

Overview

Package bot_configs defines the configurations used by all bots in Pinpoint.

When building Chrome, the configurations define which builder to use. When running tests, the configurations define the command to give Swarming and directs the device pool to use.

This package also runs some rudimentary validation tests. You can self validate with:

bazelisk test //bisection/go/bot_configs/...

The bot configurations are also defined here. They were copied over on Dec 11, 2023.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetIsolateTarget

func GetIsolateTarget(bot, benchmark string) (string, error)

GetIsolateTarget retrieves the CAS target for chrome builds using the benchmark and bot as inputs Most isolate targets are device specific but there is one benchmark specific target.

Types

type BotConfig

type BotConfig struct {
	// Alias defines another bot that uses the same
	// configuration as this one.
	Alias string `json:"alias"`
	// Browser is the name of the Chrome browser to run
	// when testing benchmarks
	Browser string `json:"browser"`
	// Bucket refers to the LUCI pool to build Chrome,
	// typically luci.chrome.try
	Bucket string `json:"bucket"`
	// Builder refers to the LUCI builder used to build Chrome,
	// usually a compile builder.
	Builder string `json:"builder"`
	// Dimensions are used by Swarming to find the
	// device pool to test benchmarks
	Dimensions []map[string]string `json:"dimensions"`
	// Repo is the repository to run tests on,
	// typically chromium
	Repo string `json:"repository"`
	// SwarmingServer is almost always
	// https://chrome-swarming.appspot.com
	SwarmingServer string `json:"swarming_server"`
	// Bot is the original key used for this config.
	Bot string
}

A BotConfig contains the parameters that make up the configuration. Configurations should either include an alias or all other fields.

func GetBotConfig

func GetBotConfig(bot string, externalOnly bool) (BotConfig, error)

GetBotConfig gets the config for a bot. Will only check internal data if externalOnly = false.

type TargetMaps

type TargetMaps struct {
	Benchmark map[string]string `yaml:"BenchmarkTargets"`
	Exact     map[string]string `yaml:"BotExactTargets"`
	Regex     map[string]string `yaml:"BotRegexTargets"`
}

Jump to

Keyboard shortcuts

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