build

package module
v0.0.0-...-f8637a9 Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2016 License: BSD-3-Clause Imports: 6 Imported by: 0

README

This subrepository holds the source for various packages and tools that support
development of the Go programming language.

To submit changes to this repository, see http://golang.org/doc/contribute.html.

app/: a.k.a the "dashboard"; the App Engine code that runs https://build.golang.org/

cmd/:

  buildlet/: HTTP server that runs on a VM and is told what to write to disk
           and what command to run. This is cross-compiled to different architectures
           and is the first program run when a builder VM comes up. It then
           is contacted by the coordinator to do a build. Not all builders use
           the buildlet (at least not yet).

  builder/: gobuilder, a Go continuous build client. The original Go builder program.

  coordinator/: daemon that runs on CoreOS on Google Compute Engine and manages
          builds using Docker containers and/or VMs as needed.

  retrybuilds/: a Go client program to delete build results from the dashboard (app)

  upload/:  a Go program to upload to Google Cloud Storage. used by Makefiles elsewhere.

  watcher/: a daemon that watches for new commits to the Go repository and
          its sub-repositories, and notifies the dashboard of those commits.

env/:     configuration files describing the environment of builders and related
          binaries. Many builders are still configured ad-hoc, without a hermetic
          environment.

types/:   a Go package contain common types used by other pieces.


If you wish to run a Go builder, please email golang-dev@googlegroups.com first.
There is documentation at https://golang.org/wiki/DashboardBuilders but
depending on the type of builder, we may want to run it ourselves, after you
prepare an environment description (resulting in a VM image) of it. See the env
directory.

Documentation

Overview

Package build contains constants for the Go continous build system.

Index

Constants

View Source
const DevCoordinatorCA = `` /* 955-byte string literal not displayed */

DevCoordinatorCA is the cert used by the coordinator and buildlet in development mode. (Not to be confused with the staging "dev" instance under GCE project "go-dashboard-dev")

View Source
const DevCoordinatorKey = `` /* 1674-byte string literal not displayed */

DevCoordinatorKey is the key used by the coordinator and buildlet in development mode. (Not to be confused with the staging "dev" instance under GCE project "go-dashboard-dev")

View Source
const ProdCoordinatorCA = `` /* 1114-byte string literal not displayed */

ProdCoordinatorCA is the production CA cert for farmer.golang.org.

View Source
const StagingCoordinatorCA = `` /* 1073-byte string literal not displayed */

StagingCoordinatorCA is the cert used on GCE for the go-dashboard-dev project.

Variables

This section is empty.

Functions

This section is empty.

Types

type CoordinatorInstance

type CoordinatorInstance string

CoordinatorInstance is either "prod", "staging", or "localhost:<port>".

const (
	ProdCoordinator    CoordinatorInstance = "prod"
	StagingCoordinator CoordinatorInstance = "staging"
)

func (CoordinatorInstance) CACert

func (ci CoordinatorInstance) CACert() string

CACert returns the public certificate of the CA used to sign this coordinator instance's certificate.

func (CoordinatorInstance) TLSDialer

func (ci CoordinatorInstance) TLSDialer() func(network, addr string) (net.Conn, error)

func (CoordinatorInstance) TLSHostPort

func (ci CoordinatorInstance) TLSHostPort() (string, error)

Directories

Path Synopsis
Package auth contains shared code related to OAuth2 and obtaining tokens for a project.
Package auth contains shared code related to OAuth2 and obtaining tokens for a project.
Package buildenv contains definitions for the environments the Go build system can run in.
Package buildenv contains definitions for the environments the Go build system can run in.
Package buildlet contains client tools for working with a buildlet server.
Package buildlet contains client tools for working with a buildlet server.
cmd
builder
Go Builder is a continuous build client for the Go project.
Go Builder is a continuous build client for the Go project.
buildlet
The buildlet is an HTTP server that untars content to disk and runs commands it has untarred, streaming their output back over HTTP.
The buildlet is an HTTP server that untars content to disk and runs commands it has untarred, streaming their output back over HTTP.
buildlet/stage0
The stage0 command looks up the buildlet's URL from its environment (GCE metadata service, scaleway, etc), downloads it, and runs it.
The stage0 command looks up the buildlet's URL from its environment (GCE metadata service, scaleway, etc), downloads it, and runs it.
buildstats
The buildstats command syncs build logs from Datastore to Bigquery.
The buildstats command syncs build logs from Datastore to Bigquery.
cl
CL prints a list of open Go code reviews (also known as change lists, or CLs).
CL prints a list of open Go code reviews (also known as change lists, or CLs).
coordinator
The coordinator runs the majority of the Go build system.
The coordinator runs the majority of the Go build system.
docker2boot
The docker2boot command converts a Docker image into a bootable GCE VM image.
The docker2boot command converts a Docker image into a bootable GCE VM image.
fetchlogs
Fetchlogs downloads build failure logs from the Go dashboard so they can be accessed and searched from the local file system.
Fetchlogs downloads build failure logs from the Go dashboard so they can be accessed and searched from the local file system.
genbootstrap
The genbootstrap command prepares GO_BOOTSTRAP tarballs suitable for use on builders.
The genbootstrap command prepares GO_BOOTSTRAP tarballs suitable for use on builders.
godash
Godash generates Go dashboards about issues and CLs.
Godash generates Go dashboards about issues and CLs.
gomote
The gomote command is a client for the Go builder infrastructure.
The gomote command is a client for the Go builder infrastructure.
issuelock
Command issuelock locks Github issues.
Command issuelock locks Github issues.
makemac
The makemac command starts OS X VMs for the builders.
The makemac command starts OS X VMs for the builders.
perfrun
perfrun interacts with the buildlet coordinator to run the go1 benchmarks on a buildlet slave for the most recent successful commits according to the build dashboard.
perfrun interacts with the buildlet coordinator to run the go1 benchmarks on a buildlet slave for the most recent successful commits according to the build dashboard.
pushback
Command pushback is a service that monitors a set of GitHub repositories for incoming Pull Requests, replies with contribution instructions, and closes the request.
Command pushback is a service that monitors a set of GitHub repositories for incoming Pull Requests, replies with contribution instructions, and closes the request.
racebuild
racebuild builds the race runtime (syso files) on all supported OSes using gomote.
racebuild builds the race runtime (syso files) on all supported OSes using gomote.
release
Command release builds a Go release.
Command release builds a Go release.
retrybuilds
The retrybuilds command clears build failures from the build.golang.org dashboard to force them to be rebuilt.
The retrybuilds command clears build failures from the build.golang.org dashboard to force them to be rebuilt.
scaleway
The scaleway command creates ARM servers on Scaleway.com.
The scaleway command creates ARM servers on Scaleway.com.
upload
The upload command writes a file to Google Cloud Storage.
The upload command writes a file to Google Cloud Storage.
Package dashboard contains shared configuration and logic used by various pieces of the Go continuous build system.
Package dashboard contains shared configuration and logic used by various pieces of the Go continuous build system.
Package devapp implements a simple App Engine app for generating and serving Go project release dashboards using the godash command/library.
Package devapp implements a simple App Engine app for generating and serving Go project release dashboards using the godash command/library.
Package envutil provides utilities for working with environment variables.
Package envutil provides utilities for working with environment variables.
Package gerrit contains code to interact with Gerrit servers.
Package gerrit contains code to interact with Gerrit servers.
Package godash generates dashboards about issues and CLs in the Go Github and Gerrit projects.
Package godash generates dashboards about issues and CLs in the Go Github and Gerrit projects.
internal
httpdl
Package httpdl downloads things from HTTP to local disk.
Package httpdl downloads things from HTTP to local disk.
loghash
Package loghash provides the shared information for computing a log hash (as in https://build.golang.org/log/HASH).
Package loghash provides the shared information for computing a log hash (as in https://build.golang.org/log/HASH).
lru
Package lru implements an LRU cache.
Package lru implements an LRU cache.
singleflight
Package singleflight provides a duplicate function call suppression mechanism.
Package singleflight provides a duplicate function call suppression mechanism.
Package kubernetes contains a minimal client for the Kubernetes API.
Package kubernetes contains a minimal client for the Kubernetes API.
api
Package api contains the Kubernetes v1 API types.
Package api contains the Kubernetes v1 API types.
Package livelog provides a buffer that can be simultaneously written to by one writer and read from by many readers.
Package livelog provides a buffer that can be simultaneously written to by one writer and read from by many readers.
Package pargzip contains a parallel gzip writer implementation.
Package pargzip contains a parallel gzip writer implementation.
Package revdial implements a Dialer and Listener which work together to turn an accepted connection (for instance, a Hijacked HTTP request) into a Dialer which can then create net.Conns connecting back to the original dialer, which then gets a net.Listener accepting those conns.
Package revdial implements a Dialer and Listener which work together to turn an accepted connection (for instance, a Hijacked HTTP request) into a Dialer which can then create net.Conns connecting back to the original dialer, which then gets a net.Listener accepting those conns.
Package tarutil contains utilities for working with tar archives.
Package tarutil contains utilities for working with tar archives.
Package types contains common types used by the Go continuous build system.
Package types contains common types used by the Go continuous build system.

Jump to

Keyboard shortcuts

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