configpb

package
v0.0.0-...-1643519 Latest Latest
Warning

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

Go to latest
Published: Jul 16, 2024 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Acl_Role_name = map[int32]string{
	0: "READER",
	1: "SCHEDULER",
	2: "WRITER",
}
View Source
var Acl_Role_value = map[string]int32{
	"READER":    0,
	"SCHEDULER": 1,
	"WRITER":    2,
}
View Source
var Toggle_name = map[int32]string{
	0: "UNSET",
	1: "YES",
	2: "NO",
}
View Source
var Toggle_value = map[string]int32{
	"UNSET": 0,
	"YES":   1,
	"NO":    2,
}

Functions

This section is empty.

Types

type Acl

type Acl struct {
	// Role denotes a list of actions that an identity can perform.
	Role Acl_Role `protobuf:"varint,1,opt,name=role,proto3,enum=buildbucket.Acl_Role" json:"role,omitempty"`
	// Name of the group defined in the auth service.
	Group string `protobuf:"bytes,2,opt,name=group,proto3" json:"group,omitempty"`
	// An email address or a full identity string "kind:name". See auth service
	// on kinds of identities. Anonymous users are "anonymous:anonymous".
	// Either identity or group must be present, not both.
	Identity             string   `protobuf:"bytes,3,opt,name=identity,proto3" json:"identity,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

A single access control rule.

func (*Acl) Descriptor

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

func (*Acl) GetGroup

func (m *Acl) GetGroup() string

func (*Acl) GetIdentity

func (m *Acl) GetIdentity() string

func (*Acl) GetRole

func (m *Acl) GetRole() Acl_Role

func (*Acl) ProtoMessage

func (*Acl) ProtoMessage()

func (*Acl) Reset

func (m *Acl) Reset()

func (*Acl) String

func (m *Acl) String() string

func (*Acl) XXX_DiscardUnknown

func (m *Acl) XXX_DiscardUnknown()

func (*Acl) XXX_Marshal

func (m *Acl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Acl) XXX_Merge

func (m *Acl) XXX_Merge(src proto.Message)

func (*Acl) XXX_Size

func (m *Acl) XXX_Size() int

func (*Acl) XXX_Unmarshal

func (m *Acl) XXX_Unmarshal(b []byte) error

type AclSet

type AclSet struct {
	// A name of the ACL set. Required. Must match regex '^[a-z0-9_]+$'.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// List of access control rules.
	// The order does not matter.
	Acls                 []*Acl   `protobuf:"bytes,2,rep,name=acls,proto3" json:"acls,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

A set of Acl messages. Can be referenced in a bucket by name.

func (*AclSet) Descriptor

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

func (*AclSet) GetAcls

func (m *AclSet) GetAcls() []*Acl

func (*AclSet) GetName

func (m *AclSet) GetName() string

func (*AclSet) ProtoMessage

func (*AclSet) ProtoMessage()

func (*AclSet) Reset

func (m *AclSet) Reset()

func (*AclSet) String

func (m *AclSet) String() string

func (*AclSet) XXX_DiscardUnknown

func (m *AclSet) XXX_DiscardUnknown()

func (*AclSet) XXX_Marshal

func (m *AclSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AclSet) XXX_Merge

func (m *AclSet) XXX_Merge(src proto.Message)

func (*AclSet) XXX_Size

func (m *AclSet) XXX_Size() int

func (*AclSet) XXX_Unmarshal

func (m *AclSet) XXX_Unmarshal(b []byte) error

type Acl_Role

type Acl_Role int32

A buiildbucket user role. Defines what a user can do.

The order of enum member tags is important. A role with a higher tag number can perform any action that a role with a lower tag number can perform.

const (
	// Can do read-only operations, such as search for builds.
	Acl_READER Acl_Role = 0
	// Same as READER + can schedule and cancel builds.
	Acl_SCHEDULER Acl_Role = 1
	// Can do all write operations.
	Acl_WRITER Acl_Role = 2
)

func (Acl_Role) EnumDescriptor

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

func (Acl_Role) String

func (x Acl_Role) String() string

type Bucket

type Bucket struct {
	// Name of the bucket. Names are unique within one instance of buildbucket.
	// If another project already uses this name, a config will be rejected.
	// Name reservation is first-come first-serve.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// List of access control rules for the bucket.
	// The order does not matter.
	Acls []*Acl `protobuf:"bytes,2,rep,name=acls,proto3" json:"acls,omitempty"`
	// A list of ACL set names. Each ACL in each referenced ACL set will be
	// included in this bucket.
	// The order does not matter.
	AclSets []string `protobuf:"bytes,4,rep,name=acl_sets,json=aclSets,proto3" json:"acl_sets,omitempty"`
	// Buildbucket-swarming integration.
	Swarming             *Swarming `protobuf:"bytes,3,opt,name=swarming,proto3" json:"swarming,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

Defines one bucket in buildbucket.cfg

func (*Bucket) Descriptor

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

func (*Bucket) GetAclSets

func (m *Bucket) GetAclSets() []string

func (*Bucket) GetAcls

func (m *Bucket) GetAcls() []*Acl

func (*Bucket) GetName

func (m *Bucket) GetName() string

func (*Bucket) GetSwarming

func (m *Bucket) GetSwarming() *Swarming

func (*Bucket) ProtoMessage

func (*Bucket) ProtoMessage()

func (*Bucket) Reset

func (m *Bucket) Reset()

func (*Bucket) String

func (m *Bucket) String() string

func (*Bucket) XXX_DiscardUnknown

func (m *Bucket) XXX_DiscardUnknown()

func (*Bucket) XXX_Marshal

func (m *Bucket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Bucket) XXX_Merge

func (m *Bucket) XXX_Merge(src proto.Message)

func (*Bucket) XXX_Size

func (m *Bucket) XXX_Size() int

func (*Bucket) XXX_Unmarshal

func (m *Bucket) XXX_Unmarshal(b []byte) error

type BuildbucketCfg

type BuildbucketCfg struct {
	// All buckets defined for this project.
	Buckets []*Bucket `protobuf:"bytes,1,rep,name=buckets,proto3" json:"buckets,omitempty"`
	// A list of ACL sets. Names must be unique.
	AclSets []*AclSet `protobuf:"bytes,2,rep,name=acl_sets,json=aclSets,proto3" json:"acl_sets,omitempty"`
	// A list of builder mixin definitions.
	// A mixin can be referenced in any builder defined within the BuildbucketCfg.
	// See also Buider.mixins field.
	BuilderMixins        []*Builder `protobuf:"bytes,3,rep,name=builder_mixins,json=builderMixins,proto3" json:"builder_mixins,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

Schema of buildbucket.cfg file, a project config.

func (*BuildbucketCfg) Descriptor

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

func (*BuildbucketCfg) GetAclSets

func (m *BuildbucketCfg) GetAclSets() []*AclSet

func (*BuildbucketCfg) GetBuckets

func (m *BuildbucketCfg) GetBuckets() []*Bucket

func (*BuildbucketCfg) GetBuilderMixins

func (m *BuildbucketCfg) GetBuilderMixins() []*Builder

func (*BuildbucketCfg) ProtoMessage

func (*BuildbucketCfg) ProtoMessage()

func (*BuildbucketCfg) Reset

func (m *BuildbucketCfg) Reset()

func (*BuildbucketCfg) String

func (m *BuildbucketCfg) String() string

func (*BuildbucketCfg) XXX_DiscardUnknown

func (m *BuildbucketCfg) XXX_DiscardUnknown()

func (*BuildbucketCfg) XXX_Marshal

func (m *BuildbucketCfg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*BuildbucketCfg) XXX_Merge

func (m *BuildbucketCfg) XXX_Merge(src proto.Message)

func (*BuildbucketCfg) XXX_Size

func (m *BuildbucketCfg) XXX_Size() int

func (*BuildbucketCfg) XXX_Unmarshal

func (m *BuildbucketCfg) XXX_Unmarshal(b []byte) error

type Builder

type Builder struct {
	// Name of the builder or builder mixin.
	//
	// If a builder name, will be propagated to "builder" build tag and
	// "buildername" recipe property.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Names of mixins to apply to this builder definition.
	//
	// FLATTENING
	//
	// Final builder/mixin values are computed as follows:
	// - start with an empty builder definition.
	// - if this is a builder, apply values in a bucket's builder_defaults,
	//   flattened in advance.
	// - apply each mixin, flattened in advance, in the same order.
	// - apply values in this builder/mixin.
	//
	// EXAMPLE
	//
	//   A definition
	//
	//     builder_mixins {
	//       name: "foo"
	//       dimensions: "os:Linux"
	//       dimensions: "cpu:x86"
	//       recipe {
	//         repository: "https://example.com"
	//         name: "x"
	//       }
	//     }
	//     builder_mixins {
	//       name: "bar"
	//       dimensions: "cores:8"
	//       dimensions: "cpu:x86-64"
	//     }
	//     bucket {
	//       name: "luci.x.try"
	//       swarming {
	//         builders {
	//           name: "release"
	//           mixins: "foo"
	//           mixins: "bar"
	//           recipe {
	//             name: "y"
	//           }
	//         }
	//       }
	//     }
	//
	//   is equivalent to
	//
	//     bucket {
	//      name: "luci.x.try"
	//      swarming {
	//         builders {
	//           name: "release"
	//           dimensions: "os:Linux"
	//           dimensions: "cpu:x86-64"
	//           dimensions: "cores:8"
	//           recipe {
	//             repository: "https://example.com"
	//             name: "y"
	//           }
	//         }
	//       }
	//     }
	//
	// A NOTE ON DIAMOND MERGES
	//
	// Given
	//   B mixes in A and overrides some values defined in A
	//   C mixes in A
	//   D mixes in B and C
	// B's overrides won't affect D because D mixes in C after B.
	//
	//   builder_mixins {
	//     name: "A"
	//     dimensions: "dim:a"
	//   }
	//   builder_mixins {
	//     name: "B"
	//     mixins: "A"
	//     dimensions: "dim:b"
	//   }
	//   builder_mixins {
	//     name: "C"
	//     mixins: "A"
	//   }
	//   ...
	//   builders {
	//     name: "D"
	//     mixins: "B"
	//     mixins: "C"
	//   }
	//
	// D's dim will be "a", not "b" because it is "a" in C which is applied after
	// B.
	//
	// OTHER
	//
	// Circular references are prohibited.
	Mixins []string `protobuf:"bytes,10,rep,name=mixins,proto3" json:"mixins,omitempty"`
	// Builder category. Will be used for visual grouping, for example in Code Review.
	Category string `protobuf:"bytes,6,opt,name=category,proto3" json:"category,omitempty"`
	// Will be become to swarming task tags.
	// Each tag will end up in "swarming_tag" buildbucket tag, for example
	// "swarming_tag:builder:release"
	SwarmingTags []string `protobuf:"bytes,2,rep,name=swarming_tags,json=swarmingTags,proto3" json:"swarming_tags,omitempty"`
	// A requirement for a bot to execute the build.
	//
	// Supports 3 forms:
	// - "<key>:" - exclude the defaults for the key.
	//   Mutually exclusive with other forms.
	// - "<key>:<value>" - require a bot with this dimension.
	//   This is a shortcut for "0:<key>:<value>", see below.
	// - "<expiration_secs>:<key>:<value>" - wait for up to expiration_secs.
	//   for a bot with the dimension.
	//   Supports mutliple values for different keys and expiration_secs.
	//   expiration_secs must be a multiple of 60.
	//
	// When merging a set of dimensions S1 into S2, all dimensions in S1 with a
	// key K replace all dimensions in S2 with K. This logic is used when applying
	// builder mixins and dimensions specified in a build request.
	//
	// If this builder is defined in a bucket, dimension "pool" is defaulted
	// to the name of the bucket. See Bucket message below.
	Dimensions []string `protobuf:"bytes,3,rep,name=dimensions,proto3" json:"dimensions,omitempty"`
	// Specifies that a recipe to run.
	Recipe *Builder_Recipe `protobuf:"bytes,4,opt,name=recipe,proto3" json:"recipe,omitempty"`
	// Swarming task priority.
	Priority uint32 `protobuf:"varint,5,opt,name=priority,proto3" json:"priority,omitempty"`
	// Maximum build execution time. Not to be confused with pending time.
	ExecutionTimeoutSecs uint32 `protobuf:"varint,7,opt,name=execution_timeout_secs,json=executionTimeoutSecs,proto3" json:"execution_timeout_secs,omitempty"`
	// Maximum build pending time.
	ExpirationSecs uint32 `protobuf:"varint,20,opt,name=expiration_secs,json=expirationSecs,proto3" json:"expiration_secs,omitempty"`
	// Caches that should be present on the bot.
	Caches []*Builder_CacheEntry `protobuf:"bytes,9,rep,name=caches,proto3" json:"caches,omitempty"`
	// If YES, generate monotonically increasing contiguous numbers for each
	// build, unique within the builder.
	// Note: this limits the build creation rate in this builder to 5 per second.
	BuildNumbers Toggle `protobuf:"varint,16,opt,name=build_numbers,json=buildNumbers,proto3,enum=buildbucket.Toggle" json:"build_numbers,omitempty"`
	// Email of a service account to run the build as or literal 'bot' string to
	// use Swarming bot's account (if available). Passed directly to Swarming.
	// Subject to Swarming's ACLs.
	ServiceAccount string `protobuf:"bytes,12,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"`
	// If YES, each builder will get extra dimension "builder:<builder name>"
	// added. Default is UNSET.
	//
	// For example, this config
	//
	//   builder {
	//     name: "linux-compiler"
	//     dimension: "builder:linux-compiler"
	//   }
	//
	// is equivalent to this:
	//
	//   builders {
	//     name: "linux-compiler"
	//     auto_builder_dimension: YES
	//   }
	//
	// We've considered providing interpolation like this
	//   builder_defaults {
	//     dimensions: "builder:${BUILDER}"
	//   }
	// (see also http://docs.buildbot.net/0.8.9/manual/cfg-properties.html#interpolate)
	// but are currently against complicating config with this.
	AutoBuilderDimension Toggle `` /* 149-byte string literal not displayed */
	// If YES, by default a new build in this builder will be marked as
	// experimental.
	// This is useful for inherently experimental builders that use production
	// recipes.
	// See also luci_migration_host field.
	Experimental Toggle `protobuf:"varint,18,opt,name=experimental,proto3,enum=buildbucket.Toggle" json:"experimental,omitempty"`
	// If not empty and not "-", and a build request is not marked as
	// experimental/prod explicitly and has "mastername" property, buildbucket
	// will contact this instance of luci-migration app to determine whether the
	// builder is experimental.
	// On success, this takes precedence over Builder.experimental proto field
	// (above).
	//
	// Special value "-" means no luci_migration_host specified.
	// Useful in a builder that wants to override luci_migration_host
	// specified in builder_defaults or mixin.
	LuciMigrationHost    string   `protobuf:"bytes,19,opt,name=luci_migration_host,json=luciMigrationHost,proto3" json:"luci_migration_host,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Defines a swarmbucket builder or a builder mixin. A builder has a name, a category and specifies what should happen if a build is scheduled to that builder.

SECURITY WARNING: if adding more fields to this message, keep in mind that a user that has permissions to schedule a build to the bucket, can override this config.

Next tag: 21.

func (*Builder) Descriptor

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

func (*Builder) GetAutoBuilderDimension

func (m *Builder) GetAutoBuilderDimension() Toggle

func (*Builder) GetBuildNumbers

func (m *Builder) GetBuildNumbers() Toggle

func (*Builder) GetCaches

func (m *Builder) GetCaches() []*Builder_CacheEntry

func (*Builder) GetCategory

func (m *Builder) GetCategory() string

func (*Builder) GetDimensions

func (m *Builder) GetDimensions() []string

func (*Builder) GetExecutionTimeoutSecs

func (m *Builder) GetExecutionTimeoutSecs() uint32

func (*Builder) GetExperimental

func (m *Builder) GetExperimental() Toggle

func (*Builder) GetExpirationSecs

func (m *Builder) GetExpirationSecs() uint32

func (*Builder) GetLuciMigrationHost

func (m *Builder) GetLuciMigrationHost() string

func (*Builder) GetMixins

func (m *Builder) GetMixins() []string

func (*Builder) GetName

func (m *Builder) GetName() string

func (*Builder) GetPriority

func (m *Builder) GetPriority() uint32

func (*Builder) GetRecipe

func (m *Builder) GetRecipe() *Builder_Recipe

func (*Builder) GetServiceAccount

func (m *Builder) GetServiceAccount() string

func (*Builder) GetSwarmingTags

func (m *Builder) GetSwarmingTags() []string

func (*Builder) ProtoMessage

func (*Builder) ProtoMessage()

func (*Builder) Reset

func (m *Builder) Reset()

func (*Builder) String

func (m *Builder) String() string

func (*Builder) XXX_DiscardUnknown

func (m *Builder) XXX_DiscardUnknown()

func (*Builder) XXX_Marshal

func (m *Builder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Builder) XXX_Merge

func (m *Builder) XXX_Merge(src proto.Message)

func (*Builder) XXX_Size

func (m *Builder) XXX_Size() int

func (*Builder) XXX_Unmarshal

func (m *Builder) XXX_Unmarshal(b []byte) error

type Builder_CacheEntry

type Builder_CacheEntry struct {
	// Identifier of the cache. Required. Length is limited to 128.
	//
	// If the pool of swarming bots is shared among multiple LUCI projects and
	// projects use same cache name, the cache will be shared across projects.
	// To avoid affecting and being affected by other projects, prefix the cache
	// name with something project-specific, e.g. "v8-".
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Relative path where the cache in mapped into. Required.
	// Must use POSIX format (forward slashes).
	// In most cases, it does not need slashes at all.
	// Must be unique in the given builder.
	Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	// Number of seconds to wait for a bot with a warm cache to pick up the
	// task, before falling back to a bot with a cold (non-existent) cache.
	//
	// The default is 0, which means that no preference will be chosen for a bot
	// with this or without this cache, and a bot without this cache may be
	// chosen instead.
	//
	// If no bot has this cache warm, the task will skip this wait and will
	// immediately fallback to a cold cache request.
	//
	// The value must be multiples of 60 seconds.
	WaitForWarmCacheSecs int32    `` /* 128-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Describes a cache directory persisted on a bot.

If a build requested a cache, a cache directory is available on build startup. If the cache was present on the bot, the directory contains files from the previous run. The build can read/write to the cache directory while it runs. After build completes, the cache directory is persisted. Next time another build requests the same cache and runs on the same bot, if the cache wasn't evicted, the files will still be there.

One bot can keep multiple caches at the same time and one build can request multiple different caches. A cache is identified by its name and mapped to a path. In recipes-based builds, the path is relative to api.paths['cache'] dir. For example, a cache {"name": "foo", "path": "bar"} maps foo to bar and the cache dir is available at

my_cache = api.path['cache'].join('bar')

If the bot is running out of space, caches are evicted in LRU manner.

Renaming a cache is equivalent to clearing it from the builder perspective. The files will still be there, but eventually will be purged by GC.

Builder cache.

Buildbucket implicitly declares cache

{"name": "<hash(bucket/builder)>", "path": "builder"}.

This means that any LUCI builder has a "personal disk space" on the bot. Builder cache is often a good start before customizing caching. In recipes, it is available at api.path['cache'].join('builder').

In order to share the builder cache among multiple builders, it can be overridden:

builders {
  name: "a"
  caches {
    path: "builder"
    name: "my_shared_cache"
  }
}
builders {
  name: "b"
  caches {
    path: "builder"
    name: "my_shared_cache"
  }
}

Builders "a" and "b" share their builder cache. If an "a" build ran on a bot and left some files in the builder cache and then a "b" build runs on the same bot, the same files will be available in the builder cache.

func (*Builder_CacheEntry) Descriptor

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

func (*Builder_CacheEntry) GetName

func (m *Builder_CacheEntry) GetName() string

func (*Builder_CacheEntry) GetPath

func (m *Builder_CacheEntry) GetPath() string

func (*Builder_CacheEntry) GetWaitForWarmCacheSecs

func (m *Builder_CacheEntry) GetWaitForWarmCacheSecs() int32

func (*Builder_CacheEntry) ProtoMessage

func (*Builder_CacheEntry) ProtoMessage()

func (*Builder_CacheEntry) Reset

func (m *Builder_CacheEntry) Reset()

func (*Builder_CacheEntry) String

func (m *Builder_CacheEntry) String() string

func (*Builder_CacheEntry) XXX_DiscardUnknown

func (m *Builder_CacheEntry) XXX_DiscardUnknown()

func (*Builder_CacheEntry) XXX_Marshal

func (m *Builder_CacheEntry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Builder_CacheEntry) XXX_Merge

func (m *Builder_CacheEntry) XXX_Merge(src proto.Message)

func (*Builder_CacheEntry) XXX_Size

func (m *Builder_CacheEntry) XXX_Size() int

func (*Builder_CacheEntry) XXX_Unmarshal

func (m *Builder_CacheEntry) XXX_Unmarshal(b []byte) error

type Builder_Recipe

type Builder_Recipe struct {
	// Repository URL of the recipe package.
	// Value "-" is treated as unset.
	Repository string `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
	// Name of the recipe to run.
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// If set, will use CIPD to fetch the recipes, rather than using git. This
	// obsoletes the `repository` parameter.
	//
	// Typically the package will look like:
	//
	//   infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build
	//
	// Recipes bundled from internal repositories are typically under
	// `infra_internal/recipe_bundles/...`.
	//
	// But if you're building your own recipe bundles, they could be located
	// elsewhere.
	CipdPackage string `protobuf:"bytes,6,opt,name=cipd_package,json=cipdPackage,proto3" json:"cipd_package,omitempty"`
	// The CIPD version to fetch. This can be a lower-cased git ref (like
	// `refs/heads/master` or `head`), or it can be a cipd tag (like
	// `git_revision:dead...beef`).
	//
	// The default is `head`, which corresponds to the git repo's HEAD ref. This
	// is typically (but not always) a symbolic ref for `refs/heads/master`.
	CipdVersion string `protobuf:"bytes,5,opt,name=cipd_version,json=cipdVersion,proto3" json:"cipd_version,omitempty"`
	// Colon-separated build properties to set.
	// A property can be overriden by "properties" build parameter.
	//
	// Use this field for string properties and use properties_j for other
	// types.
	Properties []string `protobuf:"bytes,3,rep,name=properties,proto3" json:"properties,omitempty"`
	// Same as properties, but the value must valid JSON. For example
	//   properties_j: "a:1"
	// means property a is a number 1, not string "1".
	//
	// If null, it means no property must be defined. In particular, it removes
	// a default value for the property, if any.
	//
	// Fields properties and properties_j can be used together, but cannot both
	// specify values for same property.
	PropertiesJ          []string `protobuf:"bytes,4,rep,name=properties_j,json=propertiesJ,proto3" json:"properties_j,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Specifies a recipe to run.

func (*Builder_Recipe) Descriptor

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

func (*Builder_Recipe) GetCipdPackage

func (m *Builder_Recipe) GetCipdPackage() string

func (*Builder_Recipe) GetCipdVersion

func (m *Builder_Recipe) GetCipdVersion() string

func (*Builder_Recipe) GetName

func (m *Builder_Recipe) GetName() string

func (*Builder_Recipe) GetProperties

func (m *Builder_Recipe) GetProperties() []string

func (*Builder_Recipe) GetPropertiesJ

func (m *Builder_Recipe) GetPropertiesJ() []string

func (*Builder_Recipe) GetRepository

func (m *Builder_Recipe) GetRepository() string

func (*Builder_Recipe) ProtoMessage

func (*Builder_Recipe) ProtoMessage()

func (*Builder_Recipe) Reset

func (m *Builder_Recipe) Reset()

func (*Builder_Recipe) String

func (m *Builder_Recipe) String() string

func (*Builder_Recipe) XXX_DiscardUnknown

func (m *Builder_Recipe) XXX_DiscardUnknown()

func (*Builder_Recipe) XXX_Marshal

func (m *Builder_Recipe) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Builder_Recipe) XXX_Merge

func (m *Builder_Recipe) XXX_Merge(src proto.Message)

func (*Builder_Recipe) XXX_Size

func (m *Builder_Recipe) XXX_Size() int

func (*Builder_Recipe) XXX_Unmarshal

func (m *Builder_Recipe) XXX_Unmarshal(b []byte) error

type SettingsCfg

type SettingsCfg struct {
	// Swarmbucket settings.
	Swarming             *SwarmingSettings `protobuf:"bytes,1,opt,name=swarming,proto3" json:"swarming,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

Schema of settings.cfg file, a service config.

func (*SettingsCfg) Descriptor

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

func (*SettingsCfg) GetSwarming

func (m *SettingsCfg) GetSwarming() *SwarmingSettings

func (*SettingsCfg) ProtoMessage

func (*SettingsCfg) ProtoMessage()

func (*SettingsCfg) Reset

func (m *SettingsCfg) Reset()

func (*SettingsCfg) String

func (m *SettingsCfg) String() string

func (*SettingsCfg) XXX_DiscardUnknown

func (m *SettingsCfg) XXX_DiscardUnknown()

func (*SettingsCfg) XXX_Marshal

func (m *SettingsCfg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SettingsCfg) XXX_Merge

func (m *SettingsCfg) XXX_Merge(src proto.Message)

func (*SettingsCfg) XXX_Size

func (m *SettingsCfg) XXX_Size() int

func (*SettingsCfg) XXX_Unmarshal

func (m *SettingsCfg) XXX_Unmarshal(b []byte) error

type Swarming

type Swarming struct {
	// Hostname of the swarming instance, e.g. "chromium-swarm.appspot.com".
	Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	// DEPRECATED, IGNORED.
	// Used to generate a URL for Build, may contain parameters
	// {swarming_hostname}, {task_id}, {bucket} and {builder}. Defaults to:
	// https://{swarming_hostname}/user/task/{task_id}
	UrlFormat string `protobuf:"bytes,2,opt,name=url_format,json=urlFormat,proto3" json:"url_format,omitempty"`
	// Defines default values for builders.
	BuilderDefaults *Builder `protobuf:"bytes,3,opt,name=builder_defaults,json=builderDefaults,proto3" json:"builder_defaults,omitempty"`
	// Configuration for each builder.
	// Swarming tasks are created only for builds for builders that are not
	// explicitly specified.
	Builders []*Builder `protobuf:"bytes,4,rep,name=builders,proto3" json:"builders,omitempty"`
	// Percentage of builds that should use a canary swarming task template.
	// A value from 0 to 100.
	// If omitted, default percentage is used.
	TaskTemplateCanaryPercentage *wrappers.UInt32Value `` /* 149-byte string literal not displayed */
	XXX_NoUnkeyedLiteral         struct{}              `json:"-"`
	XXX_unrecognized             []byte                `json:"-"`
	XXX_sizecache                int32                 `json:"-"`
}

Configuration of buildbucket-swarming integration for one bucket.

func (*Swarming) Descriptor

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

func (*Swarming) GetBuilderDefaults

func (m *Swarming) GetBuilderDefaults() *Builder

func (*Swarming) GetBuilders

func (m *Swarming) GetBuilders() []*Builder

func (*Swarming) GetHostname

func (m *Swarming) GetHostname() string

func (*Swarming) GetTaskTemplateCanaryPercentage

func (m *Swarming) GetTaskTemplateCanaryPercentage() *wrappers.UInt32Value

func (*Swarming) GetUrlFormat

func (m *Swarming) GetUrlFormat() string

func (*Swarming) ProtoMessage

func (*Swarming) ProtoMessage()

func (*Swarming) Reset

func (m *Swarming) Reset()

func (*Swarming) String

func (m *Swarming) String() string

func (*Swarming) XXX_DiscardUnknown

func (m *Swarming) XXX_DiscardUnknown()

func (*Swarming) XXX_Marshal

func (m *Swarming) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Swarming) XXX_Merge

func (m *Swarming) XXX_Merge(src proto.Message)

func (*Swarming) XXX_Size

func (m *Swarming) XXX_Size() int

func (*Swarming) XXX_Unmarshal

func (m *Swarming) XXX_Unmarshal(b []byte) error

type SwarmingSettings

type SwarmingSettings struct {
	// Swarmbucket build URLs will point to this Milo instance.
	MiloHostname string `protobuf:"bytes,2,opt,name=milo_hostname,json=miloHostname,proto3" json:"milo_hostname,omitempty"`
	// Default value of swarming.task_template_canary_percentage field in
	// cr-buildbucket.cfg files.
	DefaultTaskTemplateCanaryPercentage int32    `` /* 173-byte string literal not displayed */
	XXX_NoUnkeyedLiteral                struct{} `json:"-"`
	XXX_unrecognized                    []byte   `json:"-"`
	XXX_sizecache                       int32    `json:"-"`
}

Swarmbucket settings.

func (*SwarmingSettings) Descriptor

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

func (*SwarmingSettings) GetDefaultTaskTemplateCanaryPercentage

func (m *SwarmingSettings) GetDefaultTaskTemplateCanaryPercentage() int32

func (*SwarmingSettings) GetMiloHostname

func (m *SwarmingSettings) GetMiloHostname() string

func (*SwarmingSettings) ProtoMessage

func (*SwarmingSettings) ProtoMessage()

func (*SwarmingSettings) Reset

func (m *SwarmingSettings) Reset()

func (*SwarmingSettings) String

func (m *SwarmingSettings) String() string

func (*SwarmingSettings) XXX_DiscardUnknown

func (m *SwarmingSettings) XXX_DiscardUnknown()

func (*SwarmingSettings) XXX_Marshal

func (m *SwarmingSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SwarmingSettings) XXX_Merge

func (m *SwarmingSettings) XXX_Merge(src proto.Message)

func (*SwarmingSettings) XXX_Size

func (m *SwarmingSettings) XXX_Size() int

func (*SwarmingSettings) XXX_Unmarshal

func (m *SwarmingSettings) XXX_Unmarshal(b []byte) error

type Toggle

type Toggle int32

Toggle is a boolean with an extra state UNSET. When protobuf messages are merged, UNSET does not overwrite an existing value. TODO(nodir): replace with Trinary in ../common.proto.

const (
	Toggle_UNSET Toggle = 0
	Toggle_YES   Toggle = 1
	Toggle_NO    Toggle = 2
)

func (Toggle) EnumDescriptor

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

func (Toggle) String

func (x Toggle) String() string

Jump to

Keyboard shortcuts

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