luci

module
v0.0.0-...-0a5c94e Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2024 License: Apache-2.0

README

luci-go: LUCI services and tools in Go

Go Reference

Installing

LUCI Go code is meant to be worked on from an Chromium infra.git checkout, which enforces packages versions and Go toolchain version. First get fetch via depot_tools.git then run:

fetch infra
cd infra/go
eval `./env.py`
cd src/go.chromium.org/luci

It is now possible to directly install tools with go install:

go install go.chromium.org/luci/auth/client/cmd/...@latest
go install go.chromium.org/luci/buildbucket/cmd/...@latest
go install go.chromium.org/luci/cipd/client/cmd/...@latest
go install go.chromium.org/luci/client/cmd/...@latest
go install go.chromium.org/luci/cv/cmd/...@latest
go install go.chromium.org/luci/gce/cmd/...@latest
go install go.chromium.org/luci/grpc/cmd/...@latest
go install go.chromium.org/luci/logdog/client/cmd/...@latest
go install go.chromium.org/luci/luci_notify/cmd/...@latest
go install go.chromium.org/luci/lucicfg/cmd/...@latest
go install go.chromium.org/luci/luciexe/legacy/cmd/...@latest
go install go.chromium.org/luci/mailer/cmd/...@latest
go install go.chromium.org/luci/mmutex/cmd/...@latest
go install go.chromium.org/luci/resultdb/cmd/...@latest
go install go.chromium.org/luci/server/cmd/...@latest
go install go.chromium.org/luci/swarming/cmd/...@latest
go install go.chromium.org/luci/tokenserver/cmd/...@latest
go install go.chromium.org/luci/tools/cmd/...@latest

Contributing

Contributing uses the same flow as Chromium contributions.

Directories

Path Synopsis
analysis
app
Package app contains pub/sub handlers.
Package app contains pub/sub handlers.
internal/admin
Package admin contains RPCs used to manage the LUCI Analysis service.
Package admin contains RPCs used to manage the LUCI Analysis service.
internal/admin/proto
Package adminpb defines the LUCI Analysis management interface.
Package adminpb defines the LUCI Analysis management interface.
internal/aip
Package aip contains utilities used to comply with API Improvement Proposals (AIPs) from https://google.aip.dev/.
Package aip contains utilities used to comply with API Improvement Proposals (AIPs) from https://google.aip.dev/.
internal/analysis
Package analysis contains methods to query cluster analysis maintained in BigQuery, and to add/update clustered failures used by the analysis.
Package analysis contains methods to query cluster analysis maintained in BigQuery, and to add/update clustered failures used by the analysis.
internal/analysis/metrics
Package metrics provides a framework for cluster-based metrics.
Package metrics provides a framework for cluster-based metrics.
internal/bqutil
Package bqutil provides utility functions to interact with BigQuery.
Package bqutil provides utility functions to interact with BigQuery.
internal/bugs/buganizer
Package buganizer contains methods to manage issues in Issue Tracker linked to failure association rules.
Package buganizer contains methods to manage issues in Issue Tracker linked to failure association rules.
internal/bugs/cron
Package cron defines the update-analysis-and-bugs cron job handler.
Package cron defines the update-analysis-and-bugs cron job handler.
internal/bugs/updater
Package updater contains methods to orchestrate automatic bug management, including automatic bug filing and automatic priority updates/auto-closure.
Package updater contains methods to orchestrate automatic bug management, including automatic bug filing and automatic priority updates/auto-closure.
internal/buildbucket
Package buildbucket contains logic of interacting with Buildbucket.
Package buildbucket contains logic of interacting with Buildbucket.
internal/changepoints
Package changepoints handles change point detection and analysis.
Package changepoints handles change point detection and analysis.
internal/changepoints/analyzer
Package analyzer converts the input buffer into segments using changepoint analysis, and synthesises those segments with the segments in the output buffer to produce a logical segementation of the test history.
Package analyzer converts the input buffer into segments using changepoint analysis, and synthesises those segments with the segments in the output buffer to produce a logical segementation of the test history.
internal/changepoints/bayesian
Package bayesian implements bayesian analysis for detecting change points.
Package bayesian implements bayesian analysis for detecting change points.
internal/changepoints/bqexporter
Package bqexporter handles the export of test variant analysis results to BigQuery.
Package bqexporter handles the export of test variant analysis results to BigQuery.
internal/changepoints/bqupdater
Package bqupdator handles the update of bigquery tables related to changepoint analysis.
Package bqupdator handles the update of bigquery tables related to changepoint analysis.
internal/changepoints/groupexporter
Package groupexporter provides functions to export grouped changepoints to BigQuery.
Package groupexporter provides functions to export grouped changepoints to BigQuery.
internal/changepoints/groupscheduler
Package groupscheduler schedules group changepoints tasks.
Package groupscheduler schedules group changepoints tasks.
internal/changepoints/inputbuffer
Package inputbuffer handles the input buffer of change point analysis.
Package inputbuffer handles the input buffer of change point analysis.
internal/changepoints/model
Package model contains common types used in changepoint analysis.
Package model contains common types used in changepoint analysis.
internal/changepoints/sorbet
Package sorbet implements analysis for test changepoint culprits.
Package sorbet implements analysis for test changepoint culprits.
internal/changepoints/sources
Package sources handles sources information.
Package sources handles sources information.
internal/changepoints/testutil
Package testutil contains utility functions for tests.
Package testutil contains utility functions for tests.
internal/changepoints/testvariantbranch
Package testvariantbranch handles test variant branch of change point analysis.
Package testvariantbranch handles test variant branch of change point analysis.
internal/checkpoints
Package checkpoints contains methods for maintaining and using process checkpoints to ensure processes run once only.
Package checkpoints contains methods for maintaining and using process checkpoints to ensure processes run once only.
internal/clustering/algorithms/failurereason
Package failurereason contains the failure reason clustering algorithm for LUCI Analysis.
Package failurereason contains the failure reason clustering algorithm for LUCI Analysis.
internal/clustering/algorithms/testname
Package testname contains the test name-based clustering algorithm for LUCI Analysis.
Package testname contains the test name-based clustering algorithm for LUCI Analysis.
internal/clustering/algorithms/testname/rules
Package rules provides methods to evaluate test name clustering rules.
Package rules provides methods to evaluate test name clustering rules.
internal/clustering/rules
Package rules contains methods to read and write failure association rules.
Package rules contains methods to read and write failure association rules.
internal/clustering/rules/exporter
Package exporter provides methods to interact with the failure_assocation_rules BigQuery table.
Package exporter provides methods to interact with the failure_assocation_rules BigQuery table.
internal/clustering/rules/lang
Package lang parses failure association rule predicates.
Package lang parses failure association rule predicates.
internal/clustering/shards
Package shards provides methods to access the ReclusteringShards Spanner table.
Package shards provides methods to access the ReclusteringShards Spanner table.
internal/config
Package config implements app-level configs for LUCI Analysis.
Package config implements app-level configs for LUCI Analysis.
internal/config/compiledcfg
Package compiledcfg contains compiled versions of the LUCI Analysis config.
Package compiledcfg contains compiled versions of the LUCI Analysis config.
internal/cv
Package cv contains logic of interacting with CV (LUCI Change Verifier).
Package cv contains logic of interacting with CV (LUCI Change Verifier).
internal/failureattributes
Package failureattributes supports computing and recording additional attributes of a test failure.
Package failureattributes supports computing and recording additional attributes of a test failure.
internal/gerrit
Package gerrit contains logic for interacting with Gerrit.
Package gerrit contains logic for interacting with Gerrit.
internal/gerritchangelists
Package gerritchangelists contains methods for maintaining a cache of whether gerrit changelists were authored by humans or automation.
Package gerritchangelists contains methods for maintaining a cache of whether gerrit changelists were authored by humans or automation.
internal/gitiles
Package gitiles contains logic for interacting with gitiles.
Package gitiles contains logic for interacting with gitiles.
internal/hosts
Package hosts defines a LUCI Server module used to configure the hostnames of the services LUCI Analysis communicates with in a deplpoyment.
Package hosts defines a LUCI Server module used to configure the hostnames of the services LUCI Analysis communicates with in a deplpoyment.
internal/ingestion/control
Package control provides methods to read and write records used to:
Package control provides methods to read and write records used to:
internal/ingestion/join
Package join contains methods for joining buildbucket build completions with LUCI CV completions and ResultDB invocation finalizations.
Package join contains methods for joining buildbucket build completions with LUCI CV completions and ResultDB invocation finalizations.
internal/perms
Package perms defines permissions used to control access to LUCI Analysis resources, and related methods.
Package perms defines permissions used to control access to LUCI Analysis resources, and related methods.
internal/resultdb
Package resultdb contains logic of interacting with resultdb.
Package resultdb contains logic of interacting with resultdb.
internal/scopedauth
Package scopedauth defines a LUCI Server module used to configure how LUCI Analysis authenticates to buildbucket, resultdb and gerrit.
Package scopedauth defines a LUCI Server module used to configure how LUCI Analysis authenticates to buildbucket, resultdb and gerrit.
internal/services/backfill
Package backfill implements tasks to backfill data in BigQuery.
Package backfill implements tasks to backfill data in BigQuery.
internal/services/bugupdater
Package bugupdater defines a task for updating a project's LUCI Analysis bugs in response to the latest cluster metrics.
Package bugupdater defines a task for updating a project's LUCI Analysis bugs in response to the latest cluster metrics.
internal/services/buildjoiner
Package buildjoiner defines a task to join a completed build with the other context (presubmit run and/or ResultDB invocation) required for ingestion.
Package buildjoiner defines a task to join a completed build with the other context (presubmit run and/or ResultDB invocation) required for ingestion.
internal/services/changepointgrouper
Package changepointgrouper defines the top-level task queue which groups changepoints from changepoint analysis and export it BigQuery table.
Package changepointgrouper defines the top-level task queue which groups changepoints from changepoint analysis and export it BigQuery table.
internal/services/resultingester
Package resultingester defines the task queue which ingests test results from ResultDB and pushes it into: - Test results table (for exoneration analysis) - Test results BigQuery export - Changepoint analysis
Package resultingester defines the task queue which ingests test results from ResultDB and pushes it into: - Test results table (for exoneration analysis) - Test results BigQuery export - Changepoint analysis
internal/services/verdictingester
Package verdictingester defines the top-level task queue which ingests test verdicts from ResultDB and pushes it into LUCI Analysis's analysis and BigQuery export pipelines.
Package verdictingester defines the top-level task queue which ingests test verdicts from ResultDB and pushes it into LUCI Analysis's analysis and BigQuery export pipelines.
internal/span
Package span contains utility functions to interact with the underlying Spanner storage.
Package span contains utility functions to interact with the underlying Spanner storage.
internal/testresults
Package testresults contains methods for accessing test results in Spanner.
Package testresults contains methods for accessing test results in Spanner.
internal/testresults/exporter
Package exporter contains methods to export test results to BigQuery.
Package exporter contains methods to export test results to BigQuery.
internal/testresults/lowlatency
Package lowlatency contains methods for accessing the low-latency test results table in Spanner.
Package lowlatency contains methods for accessing the low-latency test results table in Spanner.
internal/testresults/stability
Package stability implements the test stability analysis used by the QueryStability RPC.
Package stability implements the test stability analysis used by the QueryStability RPC.
internal/testverdicts
Package testverdicts handles read and write test verdicts to BigQuery.
Package testverdicts handles read and write test verdicts to BigQuery.
internal/tracing
Package tracing contains helper for reporting OpenTelemetry tracing spans.
Package tracing contains helper for reporting OpenTelemetry tracing spans.
internal/views
Package views contains methods to interact with BigQuery views.
Package views contains methods to interact with BigQuery views.
pbutil
Package pbutil contains methods for manipulating LUCI Analysis protos.
Package pbutil contains methods for manipulating LUCI Analysis protos.
proto/v1
Package analysispb defines the API of the LUCI Analysis service.
Package analysispb defines the API of the LUCI Analysis service.
rpc
Package rpc contains implementations for remote proceedure calls exposed by LUCI Analysis.
Package rpc contains implementations for remote proceedure calls exposed by LUCI Analysis.
server
Package server contains shared server initialisation logic for LUCI Analysis services.
Package server contains shared server initialisation logic for LUCI Analysis services.
Package appengine contains helper packages targeting the GAE first-gen runtime.
Package appengine contains helper packages targeting the GAE first-gen runtime.
bqlog
Package bqlog provides a mechanism to asynchronously log rows to BigQuery.
Package bqlog provides a mechanism to asynchronously log rows to BigQuery.
gaeauth/client
Package client implements OAuth2 authentication for outbound connections from Appengine using the application services account.
Package client implements OAuth2 authentication for outbound connections from Appengine using the application services account.
gaeauth/server
Package server implements authentication for inbound HTTP requests on GAE.
Package server implements authentication for inbound HTTP requests on GAE.
gaeauth/server/gaesigner
Package gaesigner implements signing.Signer interface using GAE App Identity API.
Package gaesigner implements signing.Signer interface using GAE App Identity API.
gaeauth/server/internal/authdbimpl
Package authdbimpl implements datastore-based storage and update of AuthDB snapshots used for authorization decisions by server/auth/*.
Package authdbimpl implements datastore-based storage and update of AuthDB snapshots used for authorization decisions by server/auth/*.
gaemiddleware
Package gaemiddleware provides a standard middleware for first-gen Appengine apps.
Package gaemiddleware provides a standard middleware for first-gen Appengine apps.
gaemiddleware/standard
Package standard exposes a gaemiddleware Environment for Classic AppEngine.
Package standard exposes a gaemiddleware Environment for Classic AppEngine.
gaesecrets
Package gaesecrets implements storage of secret blobs on top of datastore.
Package gaesecrets implements storage of secret blobs on top of datastore.
gaesettings
Package gaesettings implements settings.Storage interface on top of GAE datastore.
Package gaesettings implements settings.Storage interface on top of GAE datastore.
gaetesting
Package gaetesting is DEPRECATED.
Package gaetesting is DEPRECATED.
tq
Package tq implements simple routing layer for task queue tasks.
Package tq implements simple routing layer for task queue tasks.
tq/tqtesting
Package tqtesting can be used in unit tests to simulate task queue calls produced by tq.Dispatcher.
Package tqtesting can be used in unit tests to simulate task queue calls produced by tq.Dispatcher.
tsmon
Package tsmon adapts common/tsmon library to GAE environment.
Package tsmon adapts common/tsmon library to GAE environment.
Package auth implements a wrapper around golang.org/x/oauth2.
Package auth implements a wrapper around golang.org/x/oauth2.
authctx
Package authctx allows to run subprocesses in an environment with ambient auth.
Package authctx allows to run subprocesses in an environment with ambient auth.
client/authcli
Package authcli implements authentication related flags parsing and CLI subcommands.
Package authcli implements authentication related flags parsing and CLI subcommands.
client/cmd/authdb-dump
Command authdb-dump can dump AuthDB proto served by an Auth Service.
Command authdb-dump can dump AuthDB proto served by an Auth Service.
client/cmd/luci-auth
Command luci-auth can be used to interact with OAuth2 token cache on disk.
Command luci-auth can be used to interact with OAuth2 token cache on disk.
identity
Package identity defines Identity type and related types and constants.
Package identity defines Identity type and related types and constants.
integration/authtest
Package authtest implements authentication related test helpers.
Package authtest implements authentication related test helpers.
integration/devshell
Package devshell implements Devshell protocol for locally getting auth token.
Package devshell implements Devshell protocol for locally getting auth token.
integration/firebase
Package firebase implements an auth server that allows firebase-tools to use an exposed OAuth2 TokenSource for auth.
Package firebase implements an auth server that allows firebase-tools to use an exposed OAuth2 TokenSource for auth.
integration/gcemeta
Package gcemeta implements a subset of GCE metadata server protocol.
Package gcemeta implements a subset of GCE metadata server protocol.
integration/gsutil
Package gsutil implements a hacky shim that makes gsutil use LUCI local auth.
Package gsutil implements a hacky shim that makes gsutil use LUCI local auth.
integration/internal/localsrv
Package localsrv provides helpers for running local TCP servers.
Package localsrv provides helpers for running local TCP servers.
integration/localauth
Package localauth implements localhost HTTP server that hands out tokens to local LUCI-aware processes.
Package localauth implements localhost HTTP server that hands out tokens to local LUCI-aware processes.
integration/localauth/rpcs
Package rpcs implements request/response used to get auth token via RPCs.
Package rpcs implements request/response used to get auth token via RPCs.
internal
Package internal contains code used internally by auth/integration.
Package internal contains code used internally by auth/integration.
jwt
Package jwt contains low-level utilities for verifying JSON Web Tokens.
Package jwt contains low-level utilities for verifying JSON Web Tokens.
loginsessionspb
Package loginsessionspb contains protocol buffers for Login Sessions service.
Package loginsessionspb contains protocol buffers for Login Sessions service.
auth_service
api/configspb
Package configspb defines configs that are used by auth service.
Package configspb defines configs that are used by auth service.
api/internalspb
Package internalspb defines RPCs used internally by the auth service UI.
Package internalspb defines RPCs used internally by the auth service UI.
api/rpcpb
Package rpcpb defines RPCs exposed by the auth service.
Package rpcpb defines RPCs exposed by the auth service.
api/taskspb
Package taskspb defines tasks used by auth service.
Package taskspb defines tasks used by auth service.
constants
Package constants holds constants that are commonly used in Auth Service.
Package constants holds constants that are commonly used in Auth Service.
impl
Package impl contains code shared by `frontend` and `backend` services.
Package impl contains code shared by `frontend` and `backend` services.
impl/info
Package info facilitates adding global application info to a context.
Package info facilitates adding global application info to a context.
impl/model
Package model contains datastore model definitions.
Package model contains datastore model definitions.
impl/model/graph
Package graph contains groups graph definitions and operations.
Package graph contains groups graph definitions and operations.
impl/servers/accounts
Package accounts contains Accounts server implementation.
Package accounts contains Accounts server implementation.
impl/servers/allowlists
Package allowlists contains Allowlists server implementation.
Package allowlists contains Allowlists server implementation.
impl/servers/authdb
Package authdb contains methods to work with authdb.
Package authdb contains methods to work with authdb.
impl/servers/changelogs
Package changelogs contains ChangeLogs server implementation.
Package changelogs contains ChangeLogs server implementation.
impl/servers/groups
Package groups contains Groups server implementation.
Package groups contains Groups server implementation.
impl/servers/imports
Package imports contains Imports endpoints implementation.
Package imports contains Imports endpoints implementation.
impl/servers/internals
Package internals contains Internals server implementation.
Package internals contains Internals server implementation.
impl/servers/oauth
Package oauth contains methods to work with oauth endpoint.
Package oauth contains methods to work with oauth endpoint.
impl/servers/replicas
Package replicas contains Replicas server implementation.
Package replicas contains Replicas server implementation.
impl/util/zlib
Package zlib contains functions for zlib encoding and decoding.
Package zlib contains functions for zlib encoding and decoding.
internal/configs/srvcfg/allowlistcfg
Package allowlistcfg contains code to work with ip_allowlist.cfg.
Package allowlistcfg contains code to work with ip_allowlist.cfg.
internal/configs/srvcfg/importscfg
Package importscfg contains code to work with imports.cfg.
Package importscfg contains code to work with imports.cfg.
internal/configs/srvcfg/oauthcfg
Package oauthcfg contains code to work with oauth.cfg.
Package oauthcfg contains code to work with oauth.cfg.
internal/configs/srvcfg/permissionscfg
Package permissionscfg contains code to work with permissions.cfg
Package permissionscfg contains code to work with permissions.cfg
internal/configs/srvcfg/realmscfg
Package realmscfg contains code to work with realms.cfg
Package realmscfg contains code to work with realms.cfg
internal/configs/srvcfg/securitycfg
Package securitycfg contains code to work with security.cfg.
Package securitycfg contains code to work with security.cfg.
internal/configs/srvcfg/settingscfg
Package settingscfg contains code to work with settings.cfg.
Package settingscfg contains code to work with settings.cfg.
internal/configs/validation
Package validation contains code to validate the configs used by auth service.
Package validation contains code to validate the configs used by auth service.
internal/gs
Package gs is a generated GoMock package.
Package gs is a generated GoMock package.
internal/permissions
Package permissions contains functions for working with permissionsDB, used when generating internal realms representation for authDB.
Package permissions contains functions for working with permissionsDB, used when generating internal realms representation for authDB.
internal/permissions/proto
Package permissions contains the internal code for working with realms permissions.
Package permissions contains the internal code for working with realms permissions.
internal/pubsub
Package pubsub is a generated GoMock package.
Package pubsub is a generated GoMock package.
internal/realmsinternals
Package realmsinternals contains code for converting realms to internal representation (what is sent to clients through AuthDB).
Package realmsinternals contains code for converting realms to internal representation (what is sent to clients through AuthDB).
internal/replicas
Package replicas contains functionality to communicate with legacy services that rely on the "direct push" method of AuthDB replication.
Package replicas contains functionality to communicate with legacy services that rely on the "direct push" method of AuthDB replication.
services/backend
Package main is the main point of entry for the backend module.
Package main is the main point of entry for the backend module.
services/frontend
Package main is the main point of entry for the frontend module.
Package main is the main point of entry for the frontend module.
services/frontend/subscription
Package subscription contains functionality to handle AuthDB access, including authorization to subscribe to the Pubsub topic for AuthDB change notifications, and updating ACLs to the AuthDB in Google Cloud Storage.
Package subscription contains functionality to handle AuthDB access, including authorization to subscribe to the Pubsub topic for AuthDB change notifications, and updating ACLs to the AuthDB in Google Cloud Storage.
testsupport
Package testsupport contains helper functions for testing auth service.
Package testsupport contains helper functions for testing auth service.
Package main implements the App Engine based HTTP server to handle request to LUCI Bisection
Package main implements the App Engine based HTTP server to handle request to LUCI Bisection
analysis
Package analysis provides a client for interacting with LUCI Analysis, and providing fake data for testing.
Package analysis provides a client for interacting with LUCI Analysis, and providing fake data for testing.
bqexporter
Package bqexporter handles export to BigQuery.
Package bqexporter handles export to BigQuery.
compilefailureanalysis
Package compilefailureanalysis is the component for analyzing compile failures.
Package compilefailureanalysis is the component for analyzing compile failures.
compilefailureanalysis/cancelanalysis
Package cancelanalysis handles cancelation of existing analyses.
Package cancelanalysis handles cancelation of existing analyses.
compilefailureanalysis/compilelog
Package compilelogs handles downloading logs for compile failures
Package compilelogs handles downloading logs for compile failures
compilefailureanalysis/nthsection
Package nthsection performs nthsection analysis.
Package nthsection performs nthsection analysis.
compilefailureanalysis/statusupdater
Package statusupdater updates analysis status based on the data in datastore.
Package statusupdater updates analysis status based on the data in datastore.
compilefailuredetection
Package compilefailuredetection analyses a failed build and determines if it needs to trigger a new analysis for it.
Package compilefailuredetection analyses a failed build and determines if it needs to trigger a new analysis for it.
culpritaction/revertculprit
Package revertculprit contains the logic to revert culprits
Package revertculprit contains the logic to revert culprits
culpritverification
Package culpritverification performs culprit verification for test failures.
Package culpritverification performs culprit verification for test failures.
culpritverification/task
Package task handle task scheduling for culprit verification.
Package task handle task scheduling for culprit verification.
hosts
Package hosts defines a LUCI Server module used to configure the hostnames of the services LUCI Analysis communicates with in a deplpoyment.
Package hosts defines a LUCI Server module used to configure the hostnames of the services LUCI Analysis communicates with in a deplpoyment.
internal/buildbucket
Package buildbucket contains logic of interacting with Buildbucket.
Package buildbucket contains logic of interacting with Buildbucket.
internal/config
Package config implements config validation for LUCI Bisection
Package config implements config validation for LUCI Bisection
internal/gerrit
Package gerrit contains logic for interacting with Gerrit
Package gerrit contains logic for interacting with Gerrit
internal/gitiles
Package gitiles contains logic of interacting with Gitiles.
Package gitiles contains logic of interacting with Gitiles.
internal/logdog
Package logdog contains logic of interacting with Logdog.
Package logdog contains logic of interacting with Logdog.
internal/lucianalysis
Package lucianalysis contains methods to query test failures maintained in BigQuery.
Package lucianalysis contains methods to query test failures maintained in BigQuery.
internal/lucinotify
Package lucinotify contains logic of interacting with LUCI Notify.
Package lucinotify contains logic of interacting with LUCI Notify.
internal/rotationproxy
Package rotationproxy contains the logic to query for the on-call arborists from the Chrome Ops Rotation Proxy
Package rotationproxy contains the logic to query for the on-call arborists from the Chrome Ops Rotation Proxy
internal/tracing
Package tracing contains helper for reporting OpenTelemetry tracing spans.
Package tracing contains helper for reporting OpenTelemetry tracing spans.
metrics
Package metrics handles sending metrics to tsmon.
Package metrics handles sending metrics to tsmon.
model
Package model contains the datastore model for LUCI Bisection.
Package model contains the datastore model for LUCI Bisection.
nthsectionsnapshot
Package nthsectionsnapshot contains the logic for getting the current state for nthsection analysis and get the next commits to run.
Package nthsectionsnapshot contains the logic for getting the current state for nthsection analysis and get the next commits to run.
proto/bq
Package bqpb contains protos for BigQuery.
Package bqpb contains protos for BigQuery.
proto/config
Package configpb contains protos for service-wide configuration data for LUCI Bisection
Package configpb contains protos for service-wide configuration data for LUCI Bisection
proto/v1
Package bisectionpb contains the proto definitions for LUCI Bisection.
Package bisectionpb contains the proto definitions for LUCI Bisection.
pubsub
Package pubsub handles pub/sub messages
Package pubsub handles pub/sub messages
rerun
Package rerun handles rerun for a build.
Package rerun handles rerun for a build.
server
Package server implements the LUCI Bisection servers to handle pRPC requests.
Package server implements the LUCI Bisection servers to handle pRPC requests.
server/updatetestrerun
Package updatetestrerun updates test failure analysis when we got test results from recipes.
Package updatetestrerun updates test failure analysis when we got test results from recipes.
testfailureanalysis
Package testfailureanalysis handles test failure analysis.
Package testfailureanalysis handles test failure analysis.
testfailureanalysis/bisection
Package bisection performs bisection for test failures.
Package bisection performs bisection for test failures.
testfailureanalysis/bisection/analysis
Package analysis contains the interface to LUCI Analysis for bisector.
Package analysis contains the interface to LUCI Analysis for bisector.
testfailureanalysis/bisection/chromium
Package chromium performs bisection for test failures for Chromium project.
Package chromium performs bisection for test failures for Chromium project.
testfailureanalysis/bisection/projectbisector
Package projectbisector declare the interface that each individual project bisector needs to implement.
Package projectbisector declare the interface that each individual project bisector needs to implement.
testfailuredetection
Package testfailuredetection analyses recent test failures with the changepoint analysis from LUCI analysis, and select test failures to bisect.
Package testfailuredetection analyses recent test failures with the changepoint analysis from LUCI analysis, and select test failures to bisect.
throttle
Package throttle analysis current running reruns and send task to test failure detector.
Package throttle analysis current running reruns and send task to test failure detector.
util
Package util contains utility functions
Package util contains utility functions
util/bqutil
Package bqutil contains utility functions for BigQuery.
Package bqutil contains utility functions for BigQuery.
util/changelogutil
Package changelogutil contains utility functions for changelogs.
Package changelogutil contains utility functions for changelogs.
util/datastoreutil
Package datastoreutil contains utility functions related to datastore entities
Package datastoreutil contains utility functions related to datastore entities
util/loggingutil
Package loggingutil contains utility functions for logging.
Package loggingutil contains utility functions for logging.
util/protoutil
Package protoutil contains the utility functions to convert to protobuf.
Package protoutil contains the utility functions to convert to protobuf.
util/testutil
Package testutil contains utility functions for test.
Package testutil contains utility functions for test.
Package buildbucket is a client library for Buildbucket service.
Package buildbucket is a client library for Buildbucket service.
appengine/common
Package common contains common code used throughout buildbucket appengine code.
Package common contains common code used throughout buildbucket appengine code.
appengine/common/buildcel
Package buildcel provides go/cel support for Build proto.
Package buildcel provides go/cel support for Build proto.
appengine/frontend
Package main is the main entry point for the app.
Package main is the main entry point for the app.
appengine/internal/buildcron
Package buildcron implements various cron handlers for build entities.
Package buildcron implements various cron handlers for build entities.
appengine/internal/buildercron
Package buildercron implements cron handlers for Builder entities
Package buildercron implements cron handlers for Builder entities
appengine/internal/buildid
Package buildid provides the build id computation related functions.
Package buildid provides the build id computation related functions.
appengine/internal/buildstatus
Package buildstatus provides the build status computation related functions.
Package buildstatus provides the build status computation related functions.
appengine/internal/buildtoken
Package buildtoken provide related functions for dealing with build tokens.
Package buildtoken provide related functions for dealing with build tokens.
appengine/internal/clients
Package clients contains wrappers for client side bindings for APIs used by Buildbucket.
Package clients contains wrappers for client side bindings for APIs used by Buildbucket.
appengine/internal/compression
Package compression provides different compression and decompression functions for the usages in the buildbucket.
Package compression provides different compression and decompression functions for the usages in the buildbucket.
appengine/internal/config
Package config contains the interactions with the configuration service for global configuration files including reading, validating, etc.
Package config contains the interactions with the configuration service for global configuration files including reading, validating, etc.
appengine/internal/internalcontext
Package internalcontext contains a function to store custom metrics in context.
Package internalcontext contains a function to store custom metrics in context.
appengine/internal/metrics
Package metrics defines metrics for various build events, and utility functions to be used in other modules for the metric updates.
Package metrics defines metrics for various build events, and utility functions to be used in other modules for the metric updates.
appengine/internal/perm
Package perm implements permission checks.
Package perm implements permission checks.
appengine/internal/redirect
Package redirect handles the URLs which need a redirection.
Package redirect handles the URLs which need a redirection.
appengine/model
Package model contains datastore model implementation.
Package model contains datastore model implementation.
appengine/model/defs
Package modeldefs contains messages used by Buildbucket data model.
Package modeldefs contains messages used by Buildbucket data model.
appengine/monitor
Package main is the main entry point for the app.
Package main is the main entry point for the app.
appengine/rpc
Package rpc contains rpc service implementation.
Package rpc contains rpc service implementation.
appengine/rpc/testutil
Package testutil contains util functions for testing buildbucket RPCs.
Package testutil contains util functions for testing buildbucket RPCs.
appengine/taskbackendlite
Package main is the main entry point for the app.
Package main is the main entry point for the app.
appengine/tasks
Package tasks contains task queue implementations.
Package tasks contains task queue implementations.
appengine/tasks/defs
Package taskdefs contains task queue task definitions.
Package taskdefs contains task queue task definitions.
bbperms
Package bbperms contains a list of registered buildbucket Realm permissions.
Package bbperms contains a list of registered buildbucket Realm permissions.
cli
Package cli implements CLI client for buildbucket service.
Package cli implements CLI client for buildbucket service.
cmd/bbagent
Command bbagent is Buildbucket's agent running in swarming.
Command bbagent is Buildbucket's agent running in swarming.
cmd/dump_build
Command dump_build is a simple CLI debugging toolV which reads a binary Build message (with optional zlib compression) and then dumps the decoded build as JSONPB to stdout.
Command dump_build is a simple CLI debugging toolV which reads a binary Build message (with optional zlib compression) and then dumps the decoded build as JSONPB to stdout.
metrics
Package bbmetrics contains metric related models shared between LUCI services.
Package bbmetrics contains metric related models shared between LUCI services.
proto
Package buildbucketpb is generated from Buildbucket .proto files.
Package buildbucketpb is generated from Buildbucket .proto files.
protoutil
Package protoutil provides utility functions for protobuf messages in ../proto package.
Package protoutil provides utility functions for protobuf messages in ../proto package.
cipd
api/admin/v1
Package api contains CIPD backend API definitions.
Package api contains CIPD backend API definitions.
api/cipd/v1
Package api contains CIPD backend API definitions.
Package api contains CIPD backend API definitions.
api/config/v1
Package api contains CIPD backend API definitions.
Package api contains CIPD backend API definitions.
appengine/backend
Binary backend implements HTTP server that handles task queues and crons.
Binary backend implements HTTP server that handles task queues and crons.
appengine/frontend
Binary frontend implements HTTP server that handles requests to 'default' module.
Binary frontend implements HTTP server that handles requests to 'default' module.
appengine/impl
Package impl instantiates the full implementation of the CIPD backend services.
Package impl instantiates the full implementation of the CIPD backend services.
appengine/impl/accesslog
Package accesslog implements an gRPC interceptor that logs calls to a BigQuery table.
Package accesslog implements an gRPC interceptor that logs calls to a BigQuery table.
appengine/impl/admin
Package admin contains implementation of cipd.Admin RPC service.
Package admin contains implementation of cipd.Admin RPC service.
appengine/impl/bootstrap
Package bootstrap contains utilities for "bootstrap packages" feature.
Package bootstrap contains utilities for "bootstrap packages" feature.
appengine/impl/cas
Package cas contains implementation of cipd.Storage service RPC service.
Package cas contains implementation of cipd.Storage service RPC service.
appengine/impl/cas/tasks
Package tasks contains task queue tasks definitions.
Package tasks contains task queue tasks definitions.
appengine/impl/gs
Package gs implement Google Storage API wrapper used by CIPD backend.
Package gs implement Google Storage API wrapper used by CIPD backend.
appengine/impl/metadata
Package metadata implements handling of prefix metadata.
Package metadata implements handling of prefix metadata.
appengine/impl/model
Package model contains core CIPD datastore entities.
Package model contains core CIPD datastore entities.
appengine/impl/model/tasks
Package tasks contains task queue tasks definitions.
Package tasks contains task queue tasks definitions.
appengine/impl/monitoring
Package monitoring implements monitoring used by CIPD backend.
Package monitoring implements monitoring used by CIPD backend.
appengine/impl/repo
Package repo contains implementation of cipd.Repository service RPC service.
Package repo contains implementation of cipd.Repository service RPC service.
appengine/impl/repo/processing
Package processing contains code related to post-registration instance processing.
Package processing contains code related to post-registration instance processing.
appengine/impl/repo/tasks
Package tasks contains task queue tasks definitions.
Package tasks contains task queue tasks definitions.
appengine/impl/rpcacl
Package rpcacl contains helpers for checking ACLs of individual RPCs.
Package rpcacl contains helpers for checking ACLs of individual RPCs.
appengine/impl/settings
Package settings contains definition of global CIPD backend settings.
Package settings contains definition of global CIPD backend settings.
appengine/impl/testutil
Package testutil contains helpers used from CIPD backend unit tests.
Package testutil contains helpers used from CIPD backend unit tests.
appengine/ui
Package ui implements request handlers that serve user facing HTML pages.
Package ui implements request handlers that serve user facing HTML pages.
appengine/verification
Binary verification implements HTTP server that handles verification tasks.
Binary verification implements HTTP server that handles verification tasks.
client/cipd
Package cipd implements client side of Chrome Infra Package Deployer.
Package cipd implements client side of Chrome Infra Package Deployer.
client/cipd/builder
Package builder holds functionality for building CIPD packages.
Package builder holds functionality for building CIPD packages.
client/cipd/configpb
Package configpb contains definition of CIPD client config schema.
Package configpb contains definition of CIPD client config schema.
client/cipd/deployer
Package deployer holds functionality for deploying CIPD packages.
Package deployer holds functionality for deploying CIPD packages.
client/cipd/digests
Package digests holds types used by selfupdate mechanism to pin client hashes.
Package digests holds types used by selfupdate mechanism to pin client hashes.
client/cipd/ensure
Package ensure contains methods and types for interacting with the 'ensure file format'.
Package ensure contains methods and types for interacting with the 'ensure file format'.
client/cipd/fs
Package fs is file-system related utilities used internally by CIPD.
Package fs is file-system related utilities used internally by CIPD.
client/cipd/internal/retry
Package retry contains helpers for doing tight retry loops.
Package retry contains helpers for doing tight retry loops.
client/cipd/pkg
Package pkg contains interfaces and struct related to CIPD package files.
Package pkg contains interfaces and struct related to CIPD package files.
client/cipd/platform
Package platform contains definition of what ${os} and ${arch} mean for the current platform.
Package platform contains definition of what ${os} and ${arch} mean for the current platform.
client/cipd/plugin
Package plugin contains public API of the plugin system.
Package plugin contains public API of the plugin system.
client/cipd/plugin/host
Package host implements the plugin hosting functionality.
Package host implements the plugin hosting functionality.
client/cipd/plugin/plugins
Package plugins contains shared plugin-side functionality.
Package plugins contains shared plugin-side functionality.
client/cipd/plugin/plugins/admission
Package admission contains API for writing admission plugins.
Package admission contains API for writing admission plugins.
client/cipd/plugin/protocol
Package protocol hosts protobuf messages for the CIPD plugin system.
Package protocol hosts protobuf messages for the CIPD plugin system.
client/cipd/reader
Package reader implements reading contents of a CIPD package.
Package reader implements reading contents of a CIPD package.
client/cipd/template
Package template implements handling of package name templates.
Package template implements handling of package name templates.
client/cli
Package cli implements command line interface for CIPD client.
Package cli implements command line interface for CIPD client.
client/cmd/cipd
Package main contains CIPD CLI implementation that uses Chrome Infrastructure defaults.
Package main contains CIPD CLI implementation that uses Chrome Infrastructure defaults.
common/cipderr
Package cipderr contains an enumeration with possible CIPD error categories.
Package cipderr contains an enumeration with possible CIPD error categories.
version
Package version provides a way for CIPD packaged Go binaries to discover their current package instance ID.
Package version provides a way for CIPD packaged Go binaries to discover their current package instance ID.
cipkg
base/actions
Package actions includes: 1.
Package actions includes: 1.
base/generators
Package generator includes a set of default generators for cipkg actions:
Package generator includes a set of default generators for cipkg actions:
base/workflow
Package workflow includes utilities for common cipkg workflow:
Package workflow includes utilities for common cipkg workflow:
core
Package core includes some of the core concepts of cipkg.
Package core includes some of the core concepts of cipkg.
internal/testutils
Package testutils is a library containing helpers for testing cipkg.
Package testutils is a library containing helpers for testing cipkg.
client
casclient
Package casclient provides remote-apis-sdks client with luci integration.
Package casclient provides remote-apis-sdks client with luci integration.
cmd/cas
Binary main is a CAS client.
Binary main is a CAS client.
cmd/cas/casimpl
Package casimpl is used to implement the parent package main.
Package casimpl is used to implement the parent package main.
cmd/docker-credential-luci
Command docker-credential-luci is a Docker credential helper.
Command docker-credential-luci is a Docker credential helper.
cmd/git-credential-luci
Command git-credential-luci is a Git credential helper.
Command git-credential-luci is a Git credential helper.
cmd/isolate
Package main is a .isolate compiler that compiles .isolate files into .isolated files and can also act as a client to an Isolate server.
Package main is a .isolate compiler that compiles .isolate files into .isolated files and can also act as a client to an Isolate server.
cmd/isolate/isolateimpl
Package isolateimpl is used to implement the parent package main.
Package isolateimpl is used to implement the parent package main.
cmd/swarming
Package main is a client to a Swarming server.
Package main is a client to a Swarming server.
cmd/swarming/swarmingimpl
Package swarmingimpl is used to implement the parent package main.
Package swarmingimpl is used to implement the parent package main.
cmd/swarming/swarmingimpl/base
Package base is shared functionality used by all Swarming CLI subcommands.
Package base is shared functionality used by all Swarming CLI subcommands.
cmd/swarming/swarmingimpl/clipb
Package clipb contains protobuf messages used by Swarming CLI.
Package clipb contains protobuf messages used by Swarming CLI.
cmd/swarming/swarmingimpl/output
Package output contains helpers for emitting structure JSON output.
Package output contains helpers for emitting structure JSON output.
flagpb
Package flagpb defines a flag format for protobuf messages, implements a parser and a formatter.
Package flagpb defines a flag format for protobuf messages, implements a parser and a formatter.
internal/common
Package common implements code and utilities shared across all packages in client/.
Package common implements code and utilities shared across all packages in client/.
isolate
Package isolate implements the code to process '.isolate' files to generate '.isolated' files.
Package isolate implements the code to process '.isolate' files to generate '.isolated' files.
versioncli
Package versioncli implements a subcommand for obtaining version with the CLI.
Package versioncli implements a subcommand for obtaining version with the CLI.
common
api
api/buildbucket/buildbucket/v1
Package buildbucket provides access to the Build Bucket Service.
Package buildbucket provides access to the Build Bucket Service.
api/buildbucket/swarmbucket/v1
Package swarmbucket provides access to the Buildbucket-Swarming integration.
Package swarmbucket provides access to the Buildbucket-Swarming integration.
api/gitiles
Package gitiles implements GitilesClient in "go.chromium.org/common/proto/gitiles" package on top of Gitiles's REST API.
Package gitiles implements GitilesClient in "go.chromium.org/common/proto/gitiles" package on top of Gitiles's REST API.
api/internal/gensupport
Package gensupport is an internal implementation detail used by code generated by the google-api-go-generator tool.
Package gensupport is an internal implementation detail used by code generated by the google-api-go-generator tool.
api/swarming/swarming/v1
Package swarming provides access to the .
Package swarming provides access to the .
bq
Package bq is a library for working with BigQuery.
Package bq is a library for working with BigQuery.
bq/pb
Package pb contains helper protobuf messages used to define BQ schemas.
Package pb contains helper protobuf messages used to define BQ schemas.
cli
Package cli is a helper package for "github.com/maruel/subcommands".
Package cli is a helper package for "github.com/maruel/subcommands".
clock
Package clock is an interface to system time and timers which is easy to test.
Package clock is an interface to system time and timers which is easy to test.
clock/testclock
Package testclock implements clocks for use in tests.
Package testclock implements clocks for use in tests.
data
Package data holds data manipulation functions.
Package data holds data manipulation functions.
data/aip160
Package aip160 contains utilities used to comply with API Improvement Proposals (AIPs) from https://google.aip.dev/160.
Package aip160 contains utilities used to comply with API Improvement Proposals (AIPs) from https://google.aip.dev/160.
data/caching/cache
Package cache implements both in-memory and on-disk caching.
Package cache implements both in-memory and on-disk caching.
data/caching/cacheContext
Package cacheContext implements a context.Context wrapper which caches the results of Value calls, speeding up subsequent calls for the same key.
Package cacheContext implements a context.Context wrapper which caches the results of Value calls, speeding up subsequent calls for the same key.
data/caching/lazyslot
Package lazyslot implements a caching scheme for globally shared objects that take significant time to refresh.
Package lazyslot implements a caching scheme for globally shared objects that take significant time to refresh.
data/caching/lru
Package lru provides least-recently-used (LRU) cache.
Package lru provides least-recently-used (LRU) cache.
data/cmpbin
Package cmpbin provides binary serialization routines which ensure that the serialized objects maintain the same sort order of the original inputs when sorted bytewise (i.e.
Package cmpbin provides binary serialization routines which ensure that the serialized objects maintain the same sort order of the original inputs when sorted bytewise (i.e.
data/disjointset
Package DisjointSet provides a disjoint-set data structure with fixed size.
Package DisjointSet provides a disjoint-set data structure with fixed size.
data/lex64
Package lex64 is a base64 variant that preserves lexicographic ordering of bytestrings.
Package lex64 is a base64 variant that preserves lexicographic ordering of bytestrings.
data/packedintset
Package packedintset implements a way to store integer sets in compact form.
Package packedintset implements a way to store integer sets in compact form.
data/rand/cryptorand
Package cryptorand implements a mockable source or crypto strong randomness.
Package cryptorand implements a mockable source or crypto strong randomness.
data/rand/mathrand
Package mathrand implements a mockable interface for math/rand.Rand.
Package mathrand implements a mockable interface for math/rand.Rand.
data/recordio
Package recordio implements a basic RecordIO reader and writer.
Package recordio implements a basic RecordIO reader and writer.
data/sortby
Package sortby provides a succinct way to generate correctly-behaved Less functions for use with the stdlib 'sort' package.
Package sortby provides a succinct way to generate correctly-behaved Less functions for use with the stdlib 'sort' package.
data/stringset
Package stringset is an exceedingly simple 'set' implementation for strings.
Package stringset is an exceedingly simple 'set' implementation for strings.
data/strpair
Package strpair implements parsing and formatting of lists of colon-delimited key-value pair strings.
Package strpair implements parsing and formatting of lists of colon-delimited key-value pair strings.
data/text/intsetexpr
Package intsetexpr implements parsing of expressions like `a{01..03}b`.
Package intsetexpr implements parsing of expressions like `a{01..03}b`.
data/text/pattern
Package pattern implements lightweight parsable string patterns.
Package pattern implements lightweight parsable string patterns.
data/text/sanitizehtml
Package sanitizehtml implements a sanitizer of a very limited HTML.
Package sanitizehtml implements a sanitizer of a very limited HTML.
data/text/sequence
Package sequence implements matching for sequences of strings.
Package sequence implements matching for sequences of strings.
data/text/stringtemplate
Package stringtemplate implements Python string.Template-like substitution.
Package stringtemplate implements Python string.Template-like substitution.
data/text/templateproto
Package templateproto defines a proto-based way to configure templates for JSON documents.
Package templateproto defines a proto-based way to configure templates for JSON documents.
data/text/units
Package units provides common useful printable units.
Package units provides common useful printable units.
data/treapstore
Package treapstore is a lightweight append-only in-memory key-value store built on top a treap (tree + heap) implementation.
Package treapstore is a lightweight append-only in-memory key-value store built on top a treap (tree + heap) implementation.
errors
Package errors is an augmented replacement package for the stdlib "errors" package.
Package errors is an augmented replacement package for the stdlib "errors" package.
exec
Package exec is intended to be a drop-in replacement for "os/exec" which can be mocked.
Package exec is intended to be a drop-in replacement for "os/exec" which can be mocked.
exec/execmock
Package execmock allows mocking exec commands using the go.chromium.org/luci/common/exec ("luci exec") library, which is nearly a drop-in replacement for the "os/exec" stdlib library.
Package execmock allows mocking exec commands using the go.chromium.org/luci/common/exec ("luci exec") library, which is nearly a drop-in replacement for the "os/exec" stdlib library.
exec/internal/execmockctx
Package execmockctx provides the minimum interface that the `go.chromium.org/luci/common/exec` library needs to hook into the mocking system provided by `go.chromium.org/luci/common/exec/execmock` without needing to actually link the execmock code (including it's registration of the Simple runner, and the implementation of the http test server) into non-test binaries.
Package execmockctx provides the minimum interface that the `go.chromium.org/luci/common/exec` library needs to hook into the mocking system provided by `go.chromium.org/luci/common/exec/execmock` without needing to actually link the execmock code (including it's registration of the Simple runner, and the implementation of the http test server) into non-test binaries.
exec/internal/execmockserver
Package execmockserver implements the "net/rpc" based client/server pair which is used by execmock to communicate to/from mock subprocesses.
Package execmockserver implements the "net/rpc" based client/server pair which is used by execmock to communicate to/from mock subprocesses.
flag
Package flag provides the utilities for implementing command line flags.
Package flag provides the utilities for implementing command line flags.
flag/flagenum
Package flagenum is a utility package which facilitates implementation of flag.Value, json.Marshaler, and json.Unmarshaler interfaces via a string-to- value mapping.
Package flagenum is a utility package which facilitates implementation of flag.Value, json.Marshaler, and json.Unmarshaler interfaces via a string-to- value mapping.
flag/multiflag
Package multiflag is a package providing a flag.Value implementation capable of switching between multiple registered sub-flags, each of which have their own set of parameter flags.
Package multiflag is a package providing a flag.Value implementation capable of switching between multiple registered sub-flags, each of which have their own set of parameter flags.
flag/stringlistflag
Package stringlistflag provides a flag.Value implementation which resolves multiple args into a []string.
Package stringlistflag provides a flag.Value implementation which resolves multiple args into a []string.
flag/stringmapflag
Package stringmapflag provides a flag.Value that, when parsed, augments a map[string]string with the supplied parameter.
Package stringmapflag provides a flag.Value that, when parsed, augments a map[string]string with the supplied parameter.
flag/stringsetflag
Package stringsetflag provides a flag.Value implementation which resolves multiple args into a stringset.
Package stringsetflag provides a flag.Value implementation which resolves multiple args into a stringset.
gcloud/gae
Package gae defines information about the AppEngine environment.
Package gae defines information about the AppEngine environment.
gcloud/googleoauth
Package googleoauth contains some helpers related to Google OAuth2.
Package googleoauth contains some helpers related to Google OAuth2.
gcloud/gs
Package gs implements a versatile Google Storage client on top of the standard Google Storage Go API.
Package gs implements a versatile Google Storage client on top of the standard Google Storage Go API.
gcloud/iam
Package iam implements wrappers around some Google Cloud IAM APIs.
Package iam implements wrappers around some Google Cloud IAM APIs.
git/footer
Package footer implements parsing logic for git footer and its predecessor (legacy `<KEY>=<arbitrary value>` style).
Package footer implements parsing logic for git footer and its predecessor (legacy `<KEY>=<arbitrary value>` style).
iotools
Package iotools contains a collection of I/O-related utility structs and methods.
Package iotools contains a collection of I/O-related utility structs and methods.
lhttp
Package lhttp implements HTTP client helper code (JSON, automatic retries, authentication, etc).
Package lhttp implements HTTP client helper code (JSON, automatic retries, authentication, etc).
logging
Package logging defines Logger interface and context.Context helpers to put\get logger from context.Context.
Package logging defines Logger interface and context.Context helpers to put\get logger from context.Context.
logging/gologger
Package gologger is a compatibility layer between go-logging library and luci-go/common/logging.
Package gologger is a compatibility layer between go-logging library and luci-go/common/logging.
logging/sdlogger
Package sdlogger is a logger that formats entries as JSON understood by Stackdriver log collectors.
Package sdlogger is a logger that formats entries as JSON understood by Stackdriver log collectors.
net/iputil
Package iputil is a collection of utilities for manipulating IP addresses that has been extracted from UFS because it is not UFS-specific.
Package iputil is a collection of utilities for manipulating IP addresses that has been extracted from UFS because it is not UFS-specific.
pagination
Package pagination contains a set of utilities that help performing common tasks associated with pagination.
Package pagination contains a set of utilities that help performing common tasks associated with pagination.
pagination/dscursor
Package dscursor contains a set of utilities that help performing common tasks associated with datastore.Cursor.
Package dscursor contains a set of utilities that help performing common tasks associated with datastore.Cursor.
proto
Package proto contains protobuf-related utilities.
Package proto contains protobuf-related utilities.
proto/config
Package config contains luci-config protobuf definitions.
Package config contains luci-config protobuf definitions.
proto/examples
Package examples shows how to design protos which adhere to the Google Cloud API design guide.
Package examples shows how to design protos which adhere to the Google Cloud API design guide.
proto/findings
Package findings contains proto definitions for code findings.
Package findings contains proto definitions for code findings.
proto/gerrit
Package gerritpb contains Gerrit service definition.
Package gerritpb contains Gerrit service definition.
proto/git
Package git contains Git-related protobuf definitions.
Package git contains Git-related protobuf definitions.
proto/gitiles
Package gitiles contains Gitiles service definition.
Package gitiles contains Gitiles service definition.
proto/gitiles/mock_gitiles
Package mock_gitiles is a generated GoMock package.
Package mock_gitiles is a generated GoMock package.
proto/google/descutil
Package descutil contains utility functions for protobuf descriptor messages.
Package descutil contains utility functions for protobuf descriptor messages.
proto/google/descutil/internal
Package internal is used exclusively for descutil own tests.
Package internal is used exclusively for descutil own tests.
proto/mask
Package mask provides utility functions for google protobuf field masks.
Package mask provides utility functions for google protobuf field masks.
proto/msgpackpb
Package msgpackpb implements generic protobuf message serialization to msgpack.
Package msgpackpb implements generic protobuf message serialization to msgpack.
proto/msgpackpb/luagen
Package luagen implements a lua code generator for proto code.
Package luagen implements a lua code generator for proto code.
proto/msgpackpb/luagen/examplepb
Package examplepb serves as an example protobuf library which is structured similarly to how other protobuf libraries in this repo are structured, with the addition of a generated .lua file output.
Package examplepb serves as an example protobuf library which is structured similarly to how other protobuf libraries in this repo are structured, with the addition of a generated .lua file output.
proto/paged
Package paged implements a helper for making paginated Datastore queries.
Package paged implements a helper for making paginated Datastore queries.
proto/protoc
Package protoc contains helpers for running `protoc` using protos files stored in the Go source tree.
Package protoc contains helpers for running `protoc` using protos files stored in the Go source tree.
proto/protowalk
Package protowalk contains routines for efficiently walking proto messages, focusing on the ability to react to field annotations.
Package protowalk contains routines for efficiently walking proto messages, focusing on the ability to react to field annotations.
proto/realms
Package realms contains LUCI Realms protobuf definitions.
Package realms contains LUCI Realms protobuf definitions.
proto/reflectutil
Package reflectutil has an arbitrary assortment of helpers for dealing with protobuf reflection including:
Package reflectutil has an arbitrary assortment of helpers for dealing with protobuf reflection including:
proto/sidecar
Package sidecar contains APIs exposed by LUCI Sidecar server.
Package sidecar contains APIs exposed by LUCI Sidecar server.
proto/srcman
Package srcman contains source manifest protobuf definitions.
Package srcman contains source manifest protobuf definitions.
proto/structmask
Package structmask implements a functionality similar to google.protobuf.FieldMask, but which applies only to google.protobuf.Struct.
Package structmask implements a functionality similar to google.protobuf.FieldMask, but which applies only to google.protobuf.Struct.
proto/textpb
Package textpb can reformat text protos to be prettier.
Package textpb can reformat text protos to be prettier.
proto/textpb/internal
Package internal contains protos used internally in tests.
Package internal contains protos used internally in tests.
retry/transient
Package transient allows you to tag and retry 'transient' errors (i.e.
Package transient allows you to tag and retry 'transient' errors (i.e.
runtime/goroutine
Package goroutine is mostly to house a function for obtaining the current goroutine ID, but probably will eventually contain other naughty functions.
Package goroutine is mostly to house a function for obtaining the current goroutine ID, but probably will eventually contain other naughty functions.
runtime/paniccatcher
Package paniccatcher package exposes a set of utility structures and methods that support standardized panic catching and handling.
Package paniccatcher package exposes a set of utility structures and methods that support standardized panic catching and handling.
runtime/profiling
Package profiling provides a tool to profile various aspects of the process.
Package profiling provides a tool to profile various aspects of the process.
spantest
Package spantest implements TestMain for running tests that interact with Cloud Spanner.
Package spantest implements TestMain for running tests that interact with Cloud Spanner.
spantest/emulator
Package emulator knows how to launch Cloud Spanner emulator.
Package emulator knows how to launch Cloud Spanner emulator.
sync/dispatcher
Package dispatcher implements a super-charged version of a buffered channel connected to a (potentially) parallelized work dispatcher.
Package dispatcher implements a super-charged version of a buffered channel connected to a (potentially) parallelized work dispatcher.
sync/dispatcher/buffer
Package buffer implements a batching buffer with batch lease and retry management.
Package buffer implements a batching buffer with batch lease and retry management.
sync/mutexpool
Package mutexpool implements P, a pool of keyed mutexes.
Package mutexpool implements P, a pool of keyed mutexes.
system/environ
Package environ is an environment variable manipulation library.
Package environ is an environment variable manipulation library.
system/exec2
Package exec2 is like os/exec but supports timeout in Wait and process containment for unix using process group.
Package exec2 is like os/exec but supports timeout in Wait and process containment for unix using process group.
system/exitcode
Package exitcode provides common methods to extract exit codes from errors returned by exec.Cmd.
Package exitcode provides common methods to extract exit codes from errors returned by exec.Cmd.
system/pager
Package pager implements paging using commands "less" or "more", depending on availability.
Package pager implements paging using commands "less" or "more", depending on availability.
system/prober
Package prober exports Probe, which implements logic to identify a wrapper's wrapped target.
Package prober exports Probe, which implements logic to identify a wrapper's wrapped target.
system/shell
Package shell contains functions for quoting arguments to commands.
Package shell contains functions for quoting arguments to commands.
system/signals
Package signals makes it easier to catch SIGTERM.
Package signals makes it easier to catch SIGTERM.
system/terminal
Package terminal is just a way to forward
Package terminal is just a way to forward
testing/assertions
Package assertions is designed to be a collection of `.` importable, goconvey compatible testing assertions, in the style of "github.com/smarty/assertions".
Package assertions is designed to be a collection of `.` importable, goconvey compatible testing assertions, in the style of "github.com/smarty/assertions".
testing/ftt
Package ftt (aka "from the top") replicates the test exectution order semantics of `github.com/smartystreets/goconvey/convey` while fixing some notable issues:
Package ftt (aka "from the top") replicates the test exectution order semantics of `github.com/smartystreets/goconvey/convey` while fixing some notable issues:
testing/httpmitm
Package httpmitm contains an HTTP client that logs all incoming and outgoing requests.
Package httpmitm contains an HTTP client that logs all incoming and outgoing requests.
testing/mock
Package mock has utility functions for gomock.
Package mock has utility functions for gomock.
testing/prpctest
Package prpctest is a package to facilitate pRPC testing by wrapping httptest with a pRPC Server.
Package prpctest is a package to facilitate pRPC testing by wrapping httptest with a pRPC Server.
testing/registry
Package registry provides a way to register options to cmp.Diff.
Package registry provides a way to register options to cmp.Diff.
testing/testfs
Package testfs implements a test filesystem.
Package testfs implements a test filesystem.
testing/truth
Package truth implements an extensible, simple, assertion library for Go with minimal dependencies.
Package truth implements an extensible, simple, assertion library for Go with minimal dependencies.
testing/truth/assert
Package assert contains two functions, which allow you to make fluent truth comparisons which t.FailNow a test.
Package assert contains two functions, which allow you to make fluent truth comparisons which t.FailNow a test.
testing/truth/check
Package check contains two functions, which allow you to make fluent truth comparisons which t.Fail a test.
Package check contains two functions, which allow you to make fluent truth comparisons which t.Fail a test.
testing/truth/comparison
Package comparison contains symbols for making your own comparison.Func implementations for use with go.chromium.org/luci/common/testing/truth.
Package comparison contains symbols for making your own comparison.Func implementations for use with go.chromium.org/luci/common/testing/truth.
testing/truth/convey
Package convey provides a temporary symbol which converts a convey-style comparison of the type:
Package convey provides a temporary symbol which converts a convey-style comparison of the type:
testing/truth/convey/facade
Package facade is a transitional package that mimics the API of GoConvey classic.
Package facade is a transitional package that mimics the API of GoConvey classic.
testing/truth/should
Package should contains comparisons such as should.Equal to be used with the "go.chromium.org/luci/common/testing/truth" library.
Package should contains comparisons such as should.Equal to be used with the "go.chromium.org/luci/common/testing/truth" library.
testing/typed
Package typed is a strictly typed wrapper around cmp.Diff.
Package typed is a strictly typed wrapper around cmp.Diff.
tsmon
Package tsmon contains global state and utility functions for configuring and interacting with tsmon.
Package tsmon contains global state and utility functions for configuring and interacting with tsmon.
tsmon/distribution
Package distribution contains distribution metrics, fixed width and geometric bucketers.
Package distribution contains distribution metrics, fixed width and geometric bucketers.
tsmon/examples/beep
package dummy_project implements a demo application that populates monitoring data for a dummy_project.
package dummy_project implements a demo application that populates monitoring data for a dummy_project.
tsmon/examples/beep/dummy_project
dummy_project implements a monitoring target interface for DummyProject.
dummy_project implements a monitoring target interface for DummyProject.
tsmon/field
Package field contains constructors for metric field definitions.
Package field contains constructors for metric field definitions.
tsmon/metric
Package metric is the API for defining metrics and updating their values.
Package metric is the API for defining metrics and updating their values.
tsmon/monitor
Package monitor contains the code for sending metric data to monitoring endpoints.
Package monitor contains the code for sending metric data to monitoring endpoints.
tsmon/registry
Package registry holds a map of all metrics registered by the process.
Package registry holds a map of all metrics registered by the process.
tsmon/runtimestats
Package runtimestats exposes metrics related to the Go runtime.
Package runtimestats exposes metrics related to the Go runtime.
tsmon/store
Package store contains code for storing and retrieving metrics.
Package store contains code for storing and retrieving metrics.
tsmon/store/storetest
Package storetest is imported exclusively by tests for Store implementations.
Package storetest is imported exclusively by tests for Store implementations.
tsmon/target
Package target contains information about the thing that is sending metrics - either a NetworkDevice (a machine) or a Task (a service).
Package target contains information about the thing that is sending metrics - either a NetworkDevice (a machine) or a Task (a service).
tsmon/ts_mon_proto
Package ts_mon_proto contains ts_mon protobuf source and generated protobuf data.
Package ts_mon_proto contains ts_mon protobuf source and generated protobuf data.
tsmon/types
Package types contains miscellaneous structs and interfaces used throughout tsmon.
Package types contains miscellaneous structs and interfaces used throughout tsmon.
tsmon/versions
Package versions allows processes to report string-valued metrics with versions of various libraries they link with.
Package versions allows processes to report string-valued metrics with versions of various libraries they link with.
validate
Package validate contains methods for validating inputs.
Package validate contains methods for validating inputs.
Package config contains a client to access LUCI configuration service.
Package config contains a client to access LUCI configuration service.
appengine/gaeconfig
Package gaeconfig implements LUCI-config service bindings backed by AppEngine storage and caching.
Package gaeconfig implements LUCI-config service bindings backed by AppEngine storage and caching.
cfgclient
Package cfgclient contains glue code to use config.Interface client.
Package cfgclient contains glue code to use config.Interface client.
impl/erroring
Package erroring implements a backend that always returns an error for all of its calls.
Package erroring implements a backend that always returns an error for all of its calls.
impl/filesystem
Package filesystem implements a file system backend for the config client.
Package filesystem implements a file system backend for the config client.
impl/memory
Package memory implements in-memory backend for the config client.
Package memory implements in-memory backend for the config client.
impl/remote
Package remote implements backends for config client which will make calls to the real Config Service.
Package remote implements backends for config client which will make calls to the real Config Service.
impl/resolving
Package resolving implements an interface that resolves ${var} placeholders in config set names and file paths before forwarding calls to some other interface.
Package resolving implements an interface that resolves ${var} placeholders in config set names and file paths before forwarding calls to some other interface.
server/cfgcache
Package cfgcache provides a datastore-based cache of individual config files.
Package cfgcache provides a datastore-based cache of individual config files.
server/cfgmodule
Package cfgmodule provides a server module with a LUCI Config client.
Package cfgmodule provides a server module with a LUCI Config client.
validation
Package validation provides helpers for performing and setting up handlers for config validation related requests from luci-config.
Package validation provides helpers for performing and setting up handlers for config validation related requests from luci-config.
vars
Package vars implements a registry of ${var} placeholders.
Package vars implements a registry of ${var} placeholders.
config_service
cmd/gaeshim
Executable gaeshim implements very minimal LUCI Config v1 API by proxying it to the v2 server.
Executable gaeshim implements very minimal LUCI Config v1 API by proxying it to the v2 server.
internal/acl
Package acl implement access control for configs and actions.
Package acl implement access control for configs and actions.
internal/clients
Package clients contains all clients or client wrappers used by Luci-config.
Package clients contains all clients or client wrappers used by Luci-config.
internal/common
Package common holds the shared functionalities across config_service.
Package common holds the shared functionalities across config_service.
internal/importer
Package importer handles all configs importing.
Package importer handles all configs importing.
internal/metrics
Package metrics defines metrics to report in luci-config.
Package metrics defines metrics to report in luci-config.
internal/model
Package model package model contains Datastore models Config Service uses.
Package model package model contains Datastore models Config Service uses.
internal/retention
Package retention contains logic to clean up configs longer than the retention time.
Package retention contains logic to clean up configs longer than the retention time.
internal/rules
Package rules defines validation rules for LUCI Config service itself.
Package rules defines validation rules for LUCI Config service itself.
internal/schema
Package schema handles config schema lookup
Package schema handles config schema lookup
internal/service
Package service contains logics around working with service config.
Package service contains logics around working with service config.
internal/settings
Package settings contains global settings for starting a Config Server.
Package settings contains global settings for starting a Config Server.
internal/taskpb
Package taskpb contains task queue task definitions.
Package taskpb contains task queue task definitions.
internal/ui
Package ui implements the UI for LUCI Config service
Package ui implements the UI for LUCI Config service
internal/validation
Package validation implements the validation logic in LUCI Config.
Package validation implements the validation logic in LUCI Config.
proto
Package configpb contains the proto definitions for the Config Service.
Package configpb contains the proto definitions for the Config Service.
rpc
Package rpc contains rpc service implementation.
Package rpc contains rpc service implementation.
testutil
Package testutil reduces the boilerplate for testing in LUCI Config.
Package testutil reduces the boilerplate for testing in LUCI Config.
cv
api/config/legacy
Package tricium has a simplified version of Tricium Project Config proto.
Package tricium has a simplified version of Tricium Project Config proto.
api/config/v2
Package cfgpb contains the CQ config schema.
Package cfgpb contains the CQ config schema.
api/recipe/v1
Package recipe contains CQ Recipe input proto.
Package recipe contains CQ Recipe input proto.
api/v0
Package cvpb contains v0 (preliminary) version of CV API.
Package cvpb contains v0 (preliminary) version of CV API.
api/v1
Package cvpb contains v1 version of CV API.
Package cvpb contains v1 version of CV API.
appengine/listener
Package main is the main entry point for the app.
Package main is the main entry point for the app.
appengine/monitor
Package main is the main entry point for the app.
Package main is the main entry point for the app.
cli
cli is a package implementing command line utilities for CV.
cli is a package implementing command line utilities for CV.
internal/acls
Package acls enforces CV ACLs.
Package acls enforces CV ACLs.
internal/aggrmetrics
Package aggrmetrics computes & reports aggregated metrics.
Package aggrmetrics computes & reports aggregated metrics.
internal/buildbucket
Package buildbucket contains Buildbucket-related utility functions.
Package buildbucket contains Buildbucket-related utility functions.
internal/buildbucket/facade
Package bbfacade provides a facade for CV Tryjob support, hiding Buildbucket-specifc implementation details.
Package bbfacade provides a facade for CV Tryjob support, hiding Buildbucket-specifc implementation details.
internal/buildbucket/fake
Package bbfake implements fake Buildbucket server and the client connects to the fake for needs of CV tests.
Package bbfake implements fake Buildbucket server and the client connects to the fake for needs of CV tests.
internal/buildbucket/listener
Package bblistener listens to build update notifications from Buildbucket Pub/Sub.
Package bblistener listens to build update notifications from Buildbucket Pub/Sub.
internal/changelist
Package changelist implements operations on a single CL.
Package changelist implements operations on a single CL.
internal/common
Package common contains widely used CV utilities & types.
Package common contains widely used CV utilities & types.
internal/common/bq
Package bq handles sending rows to BigQuery.
Package bq handles sending rows to BigQuery.
internal/common/eventbox
Package eventbox batches incoming events for a single Datastore entity for processing.
Package eventbox batches incoming events for a single Datastore entity for processing.
internal/common/eventbox/dsset
Package dsset implements a particular flavor of Datastore-on-Firestore backed set.
Package dsset implements a particular flavor of Datastore-on-Firestore backed set.
internal/common/lease
Package lease provides a way to "lock" an external resource with expiration time so that concurrent processes/task executions can achieve exclusive privilege to make mutations (generally long-running and non-idempotent) on that resource.
Package lease provides a way to "lock" an external resource with expiration time so that concurrent processes/task executions can achieve exclusive privilege to make mutations (generally long-running and non-idempotent) on that resource.
internal/common/pubsub
Package pubsub provides a generic way to batch pubsub pull notifications.
Package pubsub provides a generic way to batch pubsub pull notifications.
internal/common/tree
Package tree implements fetching tree status from Tree Status App.
Package tree implements fetching tree status from Tree Status App.
internal/common/tree/treetest
Package treetest implements fake Tree for testing in CV.
Package treetest implements fake Tree for testing in CV.
internal/configs/prjcfg
Package prjcfg handles project-scoped CV config.
Package prjcfg handles project-scoped CV config.
internal/configs/prjcfg/prjcfgtest
Package prjcfgtest eases controlling of project configs in test.
Package prjcfgtest eases controlling of project configs in test.
internal/configs/prjcfg/refresher
Package refresher handles RefreshProjectConfigTask.
Package refresher handles RefreshProjectConfigTask.
internal/configs/srvcfg
Package srvcfg provides service-wide configs.
Package srvcfg provides service-wide configs.
internal/configs/validation
Package validation validates CV config files.
Package validation validates CV config files.
internal/cvtesting
Package cvtesting reduces boilerplate in tests.
Package cvtesting reduces boilerplate in tests.
internal/cvtesting/benchmarks
Package benchmarks contains benchmarks for heavy CV use cases.
Package benchmarks contains benchmarks for heavy CV use cases.
internal/cvtesting/e2e
Package e2e contains all CV end-to-end tests.
Package e2e contains all CV end-to-end tests.
internal/gerrit
Package gerrit contains Gerrit utility functions.
Package gerrit contains Gerrit utility functions.
internal/gerrit/botdata
Package botdata implements parsing and generation logic for BotData.
Package botdata implements parsing and generation logic for BotData.
internal/gerrit/cfgmatcher
Package cfgmatcher efficiently matches a CL to 0+ ConfigGroupID for a single LUCI project.
Package cfgmatcher efficiently matches a CL to 0+ ConfigGroupID for a single LUCI project.
internal/gerrit/cqdepend
Package cqdepend parses CQ-Depend directives in CL description.
Package cqdepend parses CQ-Depend directives in CL description.
internal/gerrit/gerritfake
Package gerritfake implements fake Gerrit for needs of CV tests.
Package gerritfake implements fake Gerrit for needs of CV tests.
internal/gerrit/gobmap
Package gobmap finds relevant LUCI project config given a Gerrit CL.
Package gobmap finds relevant LUCI project config given a Gerrit CL.
internal/gerrit/gobmap/gobmaptest
Package gobmaptest eases use of gobmap package in tests.
Package gobmaptest eases use of gobmap package in tests.
internal/gerrit/listener
Package listener listens to Gerrit events.
Package listener listens to Gerrit events.
internal/gerrit/metadata
Package metadata can extract metadata from Gerrit CLs.
Package metadata can extract metadata from Gerrit CLs.
internal/gerrit/poller
Package poller polls Gerrit for interesting CV changes.
Package poller polls Gerrit for interesting CV changes.
internal/gerrit/trigger
Package trigger determines if and how Gerrit CL is triggered.
Package trigger determines if and how Gerrit CL is triggered.
internal/gerrit/updater
Package updater implements changelist.Updater backend for Gerrit.
Package updater implements changelist.Updater backend for Gerrit.
internal/metrics
Package metrics defines metrics and implements reporting utilities.
Package metrics defines metrics and implements reporting utilities.
internal/prjmanager
Package prjmanager implements public API for Project Manager.
Package prjmanager implements public API for Project Manager.
internal/prjmanager/clpurger
Package clpurger purges CLs with a trigger for which Runs can't be started.
Package clpurger purges CLs with a trigger for which Runs can't be started.
internal/prjmanager/cltriggerer
Package cltriggerer implements logic for triggering CLs.
Package cltriggerer implements logic for triggering CLs.
internal/prjmanager/copyonwrite
Package copyonwrite providers helpers for modifying slices in Copy-on-Write way.
Package copyonwrite providers helpers for modifying slices in Copy-on-Write way.
internal/prjmanager/itriager
Package itriager defines interface of a CL component triage process.
Package itriager defines interface of a CL component triage process.
internal/prjmanager/manager
Package manager implements a ProjectManager.
Package manager implements a ProjectManager.
internal/prjmanager/pmtest
Package pmtest implements tests for working with Project Manager.
Package pmtest implements tests for working with Project Manager.
internal/prjmanager/prjpb
Package prjpb stores protos for event processing of ProjectManager.
Package prjpb stores protos for event processing of ProjectManager.
internal/prjmanager/state
Package state implements state machine of a Project Manager.
Package state implements state machine of a Project Manager.
internal/prjmanager/triager
Package triager proposes concrete actions on a group of related CLs.
Package triager proposes concrete actions on a group of related CLs.
internal/quota
Package quota manages run and tryjobs quotas per user
Package quota manages run and tryjobs quotas per user
internal/retention
Package retention implements data retention for LUCI CV.
Package retention implements data retention for LUCI CV.
internal/rpc/admin
Package admin implements CV admin API.
Package admin implements CV admin API.
internal/rpc/admin/api
Package adminpb contains LUCI CV admin/maintainer APIs definitions.
Package adminpb contains LUCI CV admin/maintainer APIs definitions.
internal/rpc/pagination
Package pagination implements handling of page sizes & tokens in CV APIs.
Package pagination implements handling of page sizes & tokens in CV APIs.
internal/rpc/v0
Package rpc implements CV V0 pRPC APIs.
Package rpc implements CV V0 pRPC APIs.
internal/rpc/versioning
Package versioning contains utilities to convert types to/from CV API versions as well as tests to avoid regressions.
Package versioning contains utilities to convert types to/from CV API versions as well as tests to avoid regressions.
internal/run
Package run implements public interface for Run Manager.
Package run implements public interface for Run Manager.
internal/run/bq
Package bq provides functionality for sending finished Run rows to BigQuery.
Package bq provides functionality for sending finished Run rows to BigQuery.
internal/run/eventpb
Package eventpb stores protos for event processing of RunManager.
Package eventpb stores protos for event processing of RunManager.
internal/run/impl
Package impl implements a RunManager.
Package impl implements a RunManager.
internal/run/impl/handler
Package handler implements handlers that handles run events.
Package handler implements handlers that handles run events.
internal/run/impl/longops
Package longops implements long operations of the Run Manager.
Package longops implements long operations of the Run Manager.
internal/run/impl/state
Package state defines the model for a Run state.
Package state defines the model for a Run state.
internal/run/impl/submit
Package submit contains utilities for Run submission.
Package submit contains utilities for Run submission.
internal/run/impl/util
Package util contains the common utility functions shared by RunManager.
Package util contains the common utility functions shared by RunManager.
internal/run/postaction
Package postaction executes post actions for run termination events.
Package postaction executes post actions for run termination events.
internal/run/pubsub
Package pubsub implements utility functions for publishing various Run events to Cloud PubSub.
Package pubsub implements utility functions for publishing various Run events to Cloud PubSub.
internal/run/rdb
Package rdb provides functionality for notifying ResultDB of successfully merged invocations.
Package rdb provides functionality for notifying ResultDB of successfully merged invocations.
internal/run/runcreator
Package runcreator creates new Runs.
Package runcreator creates new Runs.
internal/run/runquery
Package runquery contains logic to query runs.
Package runquery contains logic to query runs.
internal/run/runtest
Package runtest implements tests for working with Run Manager.
Package runtest implements tests for working with Run Manager.
internal/tracing
Package tracing contains helper for reporting OpenTelemetry tracing spans.
Package tracing contains helper for reporting OpenTelemetry tracing spans.
internal/tryjob
Package tryjob handles individual Tryjob handling in CV.
Package tryjob handles individual Tryjob handling in CV.
internal/tryjob/execute
Package execute implements logic to execute tryjob requirement for Runs.
Package execute implements logic to execute tryjob requirement for Runs.
internal/tryjob/requirement
Package requirement computes Tryjob Requirements and provides various utility functions related to Tryjob Requirements.
Package requirement computes Tryjob Requirements and provides various utility functions related to Tryjob Requirements.
internal/tryjob/tjcancel
Package tjcancel contains code in charge of cancelling stale tryjobs.
Package tjcancel contains code in charge of cancelling stale tryjobs.
internal/tryjob/update
Package tjupdate contains Updater, which handles an UpdateTryjobTask.
Package tjupdate contains Updater, which handles an UpdateTryjobTask.
internal/userhtml
Package userhtml contains what's needed to render frontend content.
Package userhtml contains what's needed to render frontend content.
internal/usertext
Package usertext generates messages for users (humans) using Go templating system.
Package usertext generates messages for users (humans) using Go templating system.
settings/listener
Package listenerpb controls the settings for LUCI CV listener.
Package listenerpb controls the settings for LUCI CV listener.
deploy
api/modelpb
Package modelpb contains LUCI Deploy data model messages.
Package modelpb contains LUCI Deploy data model messages.
api/rpcpb
Package rpcpb contains LUCI Deploy pRPC APIs.
Package rpcpb contains LUCI Deploy pRPC APIs.
service
Package main contains the main LUCI Deploy service binary.
Package main contains the main LUCI Deploy service binary.
service/model
Package model contains Datastore entities definition.
Package model contains Datastore entities definition.
service/rpcs
Package rpcs contains implementation of pRPC services.
Package rpcs contains implementation of pRPC services.
service/ui
Package ui contains implementation of Web UI handlers.
Package ui contains implementation of Web UI handlers.
examples
appengine/quotabeta
Package main contains a GAE app demonstrating how to use the server/quotabeta module to implement rate limiting for requests.
Package main contains a GAE app demonstrating how to use the server/quotabeta module to implement rate limiting for requests.
appengine/quotabeta/proto
Package proto contains a dummy pRPC service used by the quota library sample app.
Package proto contains a dummy pRPC service used by the quota library sample app.
appengine/quotabeta/rpc
Package rpc implements a rate-limited RPC service.
Package rpc implements a rate-limited RPC service.
appengine/tq
Demo of server/tq module on Appengine.
Demo of server/tq module on Appengine.
gae
Package gae provides a fakable wrapped interface for the appengine SDK's APIs.
Package gae provides a fakable wrapped interface for the appengine SDK's APIs.
filter/count
Package count contains 'counter' filters for all the gae services.
Package count contains 'counter' filters for all the gae services.
filter/dscache
Package dscache provides a transparent cache for RawDatastore which is backed by Memcache.
Package dscache provides a transparent cache for RawDatastore which is backed by Memcache.
filter/featureBreaker
Package featureBreaker contains filters for dynamically disabling/breaking API features at test-time.
Package featureBreaker contains filters for dynamically disabling/breaking API features at test-time.
filter/featureBreaker/flaky
Package flaky can be used to emulate flaky GAE errors that happen randomly with some probability.
Package flaky can be used to emulate flaky GAE errors that happen randomly with some probability.
filter/readonly
Package readonly implements a filter that enforces read-only accesses to services.
Package readonly implements a filter that enforces read-only accesses to services.
filter/txnBuf
Package txnBuf contains a transaction buffer filter for the datastore service.
Package txnBuf contains a transaction buffer filter for the datastore service.
filter/txndefer
Package txndefer implements a filter that calls best-effort callbacks on successful transaction commits.
Package txndefer implements a filter that calls best-effort callbacks on successful transaction commits.
impl/cloud
Package cloud provides an implementation of services based on regular Cloud APIs and works from anywhere (not necessarily from AppEngine).
Package cloud provides an implementation of services based on regular Cloud APIs and works from anywhere (not necessarily from AppEngine).
impl/dummy
Package dummy provides panicking dummy implementations of all service Interfaces.
Package dummy provides panicking dummy implementations of all service Interfaces.
impl/memory
Package memory provides an implementation of infra/gae/libs/wrapper which backs to local memory ONLY.
Package memory provides an implementation of infra/gae/libs/wrapper which backs to local memory ONLY.
impl/prod
Package prod provides an implementation of services/* which backs to AppEngine Classic (Go version <=1.11).
Package prod provides an implementation of services/* which backs to AppEngine Classic (Go version <=1.11).
impl/prod/constraints
Package constraints contains production datastore constraints.
Package constraints contains production datastore constraints.
internal/zlib
Package zlib holds zlib decoders used by the GAE library.
Package zlib holds zlib decoders used by the GAE library.
internal/zstd
Package zstd holds zstd encoders and decoders used by the GAE library.
Package zstd holds zstd encoders and decoders used by the GAE library.
service/blobstore
Package blobstore is a PLACEHOLDER for the blobstore implementation.
Package blobstore is a PLACEHOLDER for the blobstore implementation.
service/datastore
Package datastore contains APIs to handle datastore queries
Package datastore contains APIs to handle datastore queries
service/datastore/dumper
Package dumper implements a very VERY dumb datastore-dumping debugging aid.
Package dumper implements a very VERY dumb datastore-dumping debugging aid.
service/datastore/internal/protos/datastore
Package datastore contains protos used for compatibility with GAE datastore.
Package datastore contains protos used for compatibility with GAE datastore.
service/datastore/internal/protos/multicursor
Package multicursor contains protos for Cursors
Package multicursor contains protos for Cursors
service/datastore/internal/testprotos
Package testprotos contains protos for testing.
Package testprotos contains protos for testing.
service/datastore/meta
Package meta contains some methods for interacting with GAE's metadata APIs.
Package meta contains some methods for interacting with GAE's metadata APIs.
service/info/support
Package support provides Info-related support functionality.
Package support provides Info-related support functionality.
service/logging
Package logging is simply documentation :)
Package logging is simply documentation :)
service/urlfetch
Package urlfetch provides a way for an application to get http.RoundTripper that can make outbound HTTP requests.
Package urlfetch provides a way for an application to get http.RoundTripper that can make outbound HTTP requests.
gce
api/bigquery/v1
Package bigquery contains BigQuery table schema definitions.
Package bigquery contains BigQuery table schema definitions.
api/config/v1
Package config contains VM config definitions.
Package config contains VM config definitions.
api/instances/v1
Package instances contains a GCE instances service.
Package instances contains a GCE instances service.
api/projects/v1
Package projects contains GCP project config definitions.
Package projects contains GCP project config definitions.
api/quotas/v1
Package quotas contains quota definitions.
Package quotas contains quota definitions.
api/tasks/v1
Package tasks contains task queue task definitions.
Package tasks contains task queue task definitions.
appengine/backend
Package backend includes cron and task queue handlers.
Package backend includes cron and task queue handlers.
appengine/backend/internal/metrics
Package metrics includes tsmon metric support.
Package metrics includes tsmon metric support.
appengine/config
Package config knows how import configs from LUCI-config.
Package config knows how import configs from LUCI-config.
appengine/convert/toalpha
toalpha contains functions that convert stable cloud protos to alpha cloud protos.
toalpha contains functions that convert stable cloud protos to alpha cloud protos.
appengine/frontend
Package main is the main entry point for the app.
Package main is the main entry point for the app.
appengine/model
Package model contains datastore model definitions.
Package model contains datastore model definitions.
appengine/rpc
Package rpc contains RPC server implementations.
Package rpc contains RPC server implementations.
appengine/rpc/internal/metrics
Package metrics is tsmon metrics for rpc API
Package metrics is tsmon metrics for rpc API
appengine/rpc/memory
Package memory contains a RPC servers backed by in-memory storage.
Package memory contains a RPC servers backed by in-memory storage.
appengine/testing/roundtripper
Package roundtripper contains http.RoundTripper implementations suitable for testing.
Package roundtripper contains http.RoundTripper implementations suitable for testing.
cmd/agent
Package main is generated by go.chromium.org/luci/tools/cmd/assets.
Package main is generated by go.chromium.org/luci/tools/cmd/assets.
vmtoken
Package vmtoken implements parsing and verification of signed GCE VM metadata tokens.
Package vmtoken implements parsing and verification of signed GCE VM metadata tokens.
vmtoken/client
Package client implements client-side fetch and transmission of signed GCE VM metadata tokens.
Package client implements client-side fetch and transmission of signed GCE VM metadata tokens.
grpc
appstatus
Package appstatus can attach/reterieve an application-specific response status to/from an error.
Package appstatus can attach/reterieve an application-specific response status to/from an error.
cmd/prpc
Command prpc can make RPCs to pRPC servers and display their description.
Command prpc can make RPCs to pRPC servers and display their description.
cmd/svcdec
Command svcdec stands for 'service decorator'.
Command svcdec stands for 'service decorator'.
cmd/svcmux
Command svcmux reads a service interface XYZServer generated by protoc and generates VersionedXYZV struct that stores a map version->implementation, and a default version.
Command svcmux reads a service interface XYZServer generated by protoc and generates VersionedXYZV struct that stores a map version->implementation, and a default version.
discovery
Package discovery implements RPC service introspection.
Package discovery implements RPC service introspection.
grpcmon
Package grpcmon defines gRPC interceptors with monitoring instrumentation.
Package grpcmon defines gRPC interceptors with monitoring instrumentation.
grpcutil
Package grpcutil is a utility package to supplement Google's gRPC package, "google.golang.org/grpc".
Package grpcutil is a utility package to supplement Google's gRPC package, "google.golang.org/grpc".
internal/svctool
Package svctool implements svcmux/svcdec tools command line parsing
Package svctool implements svcmux/svcdec tools command line parsing
logging
Package logging implements a gRPC glog.Logger implementation backed by a go.chromium.org/luci/common/logging Logger.
Package logging implements a gRPC glog.Logger implementation backed by a go.chromium.org/luci/common/logging Logger.
prpc
Package prpc (provisional RPC) implements an RPC client over HTTP 1.x.
Package prpc (provisional RPC) implements an RPC client over HTTP 1.x.
prpc/e2etest
Package e2etest contains an end-to-end test of the pRPC server <-> client.
Package e2etest contains an end-to-end test of the pRPC server <-> client.
prpc/internal/testpb
Package testpb is used internally by pRPC tests.
Package testpb is used internally by pRPC tests.
prpc/prpcpb
Package prpcpb contains protobuf message used by the pRPC protocol.
Package prpcpb contains protobuf message used by the pRPC protocol.
svcmux
Package svcmux contains utility functions used by code generated by svcmux tool.
Package svcmux contains utility functions used by code generated by svcmux tool.
hardcoded
chromeinfra
Package chromeinfra contains hardcoded values related to Chrome Infra.
Package chromeinfra contains hardcoded values related to Chrome Infra.
led
Command led implements a 'led' binary WITHOUT support for "kitchen" based tasks.
Command led implements a 'led' binary WITHOUT support for "kitchen" based tasks.
job
ledcli
Package ledcli implements the subcommands for the `led` command line tool.
Package ledcli implements the subcommands for the `led` command line tool.
ledcmd
Package ledcmd implements the subcommands for the `led` command line tool which interact with external services.
Package ledcmd implements the subcommands for the `led` command line tool which interact with external services.
logdog
api/config/svcconfig
Package svcconfig stores service configuration for a LogDog instance.
Package svcconfig stores service configuration for a LogDog instance.
api/endpoints/coordinator/logs/v1
Package logdog contains Version 1 of the LogDog Coordinator user interface.
Package logdog contains Version 1 of the LogDog Coordinator user interface.
api/endpoints/coordinator/registration/v1
Package logdog contains Version 1 of the LogDog Coordinator stream registration interface.
Package logdog contains Version 1 of the LogDog Coordinator stream registration interface.
api/endpoints/coordinator/services/v1
Package logdog contains Version 1 of the LogDog Coordinator backend service interface.
Package logdog contains Version 1 of the LogDog Coordinator backend service interface.
api/logpb
Package logpb contains LogDog protobuf source and generated protobuf data.
Package logpb contains LogDog protobuf source and generated protobuf data.
appengine/cmd/coordinator/default
Binary default is a simple AppEngine LUCI service.
Binary default is a simple AppEngine LUCI service.
appengine/cmd/coordinator/logs
Package main is the main entry point for the `logs` LogDog AppEngine executable.
Package main is the main entry point for the `logs` LogDog AppEngine executable.
appengine/cmd/coordinator/services
Binary services is the main entry point for the `services` LogDog AppEngine executable.
Binary services is the main entry point for the `services` LogDog AppEngine executable.
appengine/cmd/coordinator/static
Binary stub doesn't actually do anything.
Binary stub doesn't actually do anything.
client/bootstrapResult
Package bootstrapResult defines a common way to express the result of bootstrapping a command via JSON.
Package bootstrapResult defines a common way to express the result of bootstrapping a command via JSON.
client/butler
Package butler is the main engine for the Butler executable.
Package butler is the main engine for the Butler executable.
client/butler/bootstrap
Package bootstrap handles Butler-side bootstrapping functionality.
Package bootstrap handles Butler-side bootstrapping functionality.
client/butler/bundler
Package bundler is responsible for efficiently transforming aggregate stream data into Butler messages for export.
Package bundler is responsible for efficiently transforming aggregate stream data into Butler messages for export.
client/butler/output
Package output contains interfaces and implementations for Butler Outputs, which are responsible for delivering Butler protobufs to LogDog collection endpoints.
Package output contains interfaces and implementations for Butler Outputs, which are responsible for delivering Butler protobufs to LogDog collection endpoints.
client/butler/output/log
Package log implements the "log" Output.
Package log implements the "log" Output.
client/butler/output/logdog
Package logdog implements output to a Logdog server via PubSub.
Package logdog implements output to a Logdog server via PubSub.
client/butler/output/memory
Package memory implements an in-memory sink for the logdog Butler.
Package memory implements an in-memory sink for the logdog Butler.
client/butlerlib/streamproto
Package streamproto describes the protocol primitives used by LogDog/Butler for stream negotiation.
Package streamproto describes the protocol primitives used by LogDog/Butler for stream negotiation.
client/cmd/logdog_butler
Package main is entry point for the command-line LogDog Butler application.
Package main is entry point for the command-line LogDog Butler application.
client/pubsubprotocol
Package pubsubprotocol implements the LogDog pubsub wire protocol.
Package pubsubprotocol implements the LogDog pubsub wire protocol.
common/archive
Package archive constructs a LogDog archive out of log stream components.
Package archive constructs a LogDog archive out of log stream components.
common/renderer
Package renderer exports the capability to render a LogDog log stream to an io.Writer.
Package renderer exports the capability to render a LogDog log stream to an io.Writer.
common/storage/archive
Package archive implements a storage.Storage instance that retrieves logs from a Google Storage archive.
Package archive implements a storage.Storage instance that retrieves logs from a Google Storage archive.
common/storage/archive/logdog_archive_test
Package main implements a simple CLI tool to load and interact with Google Storage archived data.
Package main implements a simple CLI tool to load and interact with Google Storage archived data.
common/storage/bigtable
Package bigtable provides an implementation of the Storage interface backed by Google Cloud Platform's BigTable.
Package bigtable provides an implementation of the Storage interface backed by Google Cloud Platform's BigTable.
common/storage/bigtable/logdog_bigtable_test
Package main implements a simple CLI tool to load and interact with storage data in Google BigTable data.
Package main implements a simple CLI tool to load and interact with storage data in Google BigTable data.
common/storage/memory
Package memory implements in-memory Storage structures.
Package memory implements in-memory Storage structures.
common/viewer
Package viewer is a support library to interact with the LogDog web app and log stream viewer.
Package viewer is a support library to interact with the LogDog web app and log stream viewer.
server/collector
Package collector implements the LogDog Collector daemon's log parsing and registration logic.
Package collector implements the LogDog Collector daemon's log parsing and registration logic.
server/collector/coordinator
Package coordinator implements a minimal interface to the Coordinator service that is sufficient for Collector usage.
Package coordinator implements a minimal interface to the Coordinator service that is sufficient for Collector usage.
server/config
Package config abstracts access to Logdog service and project configuration.
Package config abstracts access to Logdog service and project configuration.
luci_notify
api/service/v1
Package lucinotifypb defines the RPC services of luci-notify and the related message types.
Package lucinotifypb defines the RPC services of luci-notify and the related message types.
cmd/preview_email
Command preview_email renders an email template file.
Command preview_email renders an email template file.
common
Package common includes any common utility functions that are used from multiple other packages in the project.
Package common includes any common utility functions that are used from multiple other packages in the project.
internal/alerts
Package alerts manages alert values in the database.
Package alerts manages alert values in the database.
internal/span
Package span contains utility functions to interact with the underlying Spanner storage.
Package span contains utility functions to interact with the underlying Spanner storage.
internal/testutil
Package testutil holds helper functions for testing.
Package testutil holds helper functions for testing.
mailtmpl
Package mailtmpl implements email template bundling and execution.
Package mailtmpl implements email template bundling and execution.
notify
Define the constants to use in notify
Define the constants to use in notify
rpc
Package rpc contains the RPC handlers for the LUCI Notify service.
Package rpc contains the RPC handlers for the LUCI Notify service.
server
Package server implements the server to handle pRPC requests.
Package server implements the server to handle pRPC requests.
Package lucicfg contains LUCI config generator.
Package lucicfg contains LUCI config generator.
buildifier
Package buildifier implements processing of Starlark files via buildifier.
Package buildifier implements processing of Starlark files via buildifier.
cli
Package cli contains command line interface for lucicfg tool.
Package cli contains command line interface for lucicfg tool.
cli/base
Package base contains code shared by other CLI subpackages.
Package base contains code shared by other CLI subpackages.
cli/cmds/fmt
Package fmt implements 'fmt' subcommand.
Package fmt implements 'fmt' subcommand.
cli/cmds/generate
Package generate implements 'generate' subcommand.
Package generate implements 'generate' subcommand.
cli/cmds/lint
Package lint implements 'lint' subcommand.
Package lint implements 'lint' subcommand.
cli/cmds/validate
Package validate implements 'validate' subcommand.
Package validate implements 'validate' subcommand.
cmd/docgen
Command docgen is the documentation generator.
Command docgen is the documentation generator.
cmd/lucicfg
Command lucicfg is CLI for LUCI config generator.
Command lucicfg is CLI for LUCI config generator.
doc
Package doc generates starlark documentation.
Package doc generates starlark documentation.
graph
Package graph implements a DAG used internally to represent config objects.
Package graph implements a DAG used internally to represent config objects.
starlark
Package starlark contains Starlark code embedded into lucicfg.
Package starlark contains Starlark code embedded into lucicfg.
vars
Package vars implement lucicfg.var() support.
Package vars implement lucicfg.var() support.
Package lucictx implements a Go client for the protocol defined here:
Package lucictx implements a Go client for the protocol defined here:
Package luciexe documents the "LUCI Executable" protocol, and contains constants which are part of this protocol.
Package luciexe documents the "LUCI Executable" protocol, and contains constants which are part of this protocol.
build
Package build implements a minimal, safe, easy-to-use, hard-to-use-wrong, 'luciexe binary' implementation in Go.
Package build implements a minimal, safe, easy-to-use, hard-to-use-wrong, 'luciexe binary' implementation in Go.
build/cv
Package cv exposes CV properties to luciexe binaries for builds.
Package cv exposes CV properties to luciexe binaries for builds.
build/properties
Package properties encapsulates all logic and data structures for parsing the input properties and manipulating the output properties of a LUCI Build.
Package properties encapsulates all logic and data structures for parsing the input properties and manipulating the output properties of a LUCI Build.
exe
Package exe implements a client for the LUCI Executable ("luciexe") protocol.
Package exe implements a client for the LUCI Executable ("luciexe") protocol.
host
Package host implements the 'Host Application' portion of the luciexe protocol.
Package host implements the 'Host Application' portion of the luciexe protocol.
host/buildmerge
Package buildmerge implements the build.proto tracking and merging logic for luciexe host applications.
Package buildmerge implements the build.proto tracking and merging logic for luciexe host applications.
invoke
Package invoke implements the process of invoking a 'luciexe' compatible subprocess, but without setting up any of the 'host' requirements (like a Logdog Butler or LUCI Auth).
Package invoke implements the process of invoking a 'luciexe' compatible subprocess, but without setting up any of the 'host' requirements (like a Logdog Butler or LUCI Auth).
legacy
Package legacy holds libraries and tools for @@@annotation@@@ protocol which is the predecessor of luciexe protocol.
Package legacy holds libraries and tools for @@@annotation@@@ protocol which is the predecessor of luciexe protocol.
legacy/annotee/annotation
Package annotation implements a state machine that constructs Milo annotation protobufs from a series of annotation commands.
Package annotation implements a state machine that constructs Milo annotation protobufs from a series of annotation commands.
legacy/annotee/executor
Package executor contains an implementation of the Annotee Executor.
Package executor contains an implementation of the Annotee Executor.
legacy/annotee/proto
Package annopb contains protobuf definitions for legacy annotation.
Package annopb contains protobuf definitions for legacy annotation.
legacy/cmd/run_annotations
Command run_annotations is a LUCI executable that wraps a command that produces @@@ANNOTATIONS@@@, and converts annotations to build message.
Command run_annotations is a LUCI executable that wraps a command that produces @@@ANNOTATIONS@@@, and converts annotations to build message.
mailer
api/mailer
Package mailer contains the public API protobuf messages.
Package mailer contains the public API protobuf messages.
cmd/mailer
Binary mailer implements the mailer server.
Binary mailer implements the mailer server.
milo
frontend/handlers
Package handlers contains the milo frontend handlers, including static HTML generation, HTTP routing, etc.
Package handlers contains the milo frontend handlers, including static HTML generation, HTTP routing, etc.
httpservice
Package httpservice contains the milo regular HTTP handlers.
Package httpservice contains the milo regular HTTP handlers.
internal/config
Package config contains all code for managing Milo's global service configuration.
Package config contains all code for managing Milo's global service configuration.
internal/git
Package git provides high level API for Git/Gerrit data.
Package git provides high level API for Git/Gerrit data.
internal/git/gitacls
Package gitacls implements read ACLs for Git/Gerrit data.
Package gitacls implements read ACLs for Git/Gerrit data.
internal/hosts
Package hosts defines a LUCI Server module used to configure the hostnames of the services MILO communicates with in a deplpoyment.
Package hosts defines a LUCI Server module used to configure the hostnames of the services MILO communicates with in a deplpoyment.
internal/projectconfig
Package projectconfig contains all code for managing configurations for projects supported by Milo (e.g.
Package projectconfig contains all code for managing configurations for projects supported by Milo (e.g.
internal/testutils
Package testutils contains various utility functions/types for writing tests.
Package testutils contains various utility functions/types for writing tests.
internal/utils
Package utils contains various utility functions/types.
Package utils contains various utility functions/types.
protoutil
Package protoutil provides utility functions for protobuf messages in ../proto package.
Package protoutil provides utility functions for protobuf messages in ../proto package.
rpc
Package rpc contains implemtation of milo RPC services.
Package rpc contains implemtation of milo RPC services.
server
Package server contains the common entrypoint for MILO GAE services.
Package server contains the common entrypoint for MILO GAE services.
service-ui
Package main contains some experimental setup for push-on-green.
Package main contains some experimental setup for push-on-green.
mmutex
lib
Package provenance provides API definitions and simple libraries to interface with the APIs.
Package provenance provides API definitions and simple libraries to interface with the APIs.
api/snooperpb/v1
Package snooperpb contains LUCI's self-reporting local gRPC server API definitions.
Package snooperpb contains LUCI's self-reporting local gRPC server API definitions.
api/spikepb/ids
Package idspb contains Spike's Intrusion Detection System (IDS) API.
Package idspb contains Spike's Intrusion Detection System (IDS) API.
client
Package client provides necessary interfaces to Self report with Snooper.
Package client provides necessary interfaces to Self report with Snooper.
reporter
Package reporter provides interface implementation for reporting provenance information as useful library.
Package reporter provides interface implementation for reporting provenance information as useful library.
Package recipespy implements utilities for the [python recipes framework].
Package recipespy implements utilities for the [python recipes framework].
proto
Package recipespb contains the protobuf definition for recipe.
Package recipespb contains the protobuf definition for recipe.
resultdb
cli
cmd/experiments
Package main defines the entrypoint to the experiments service.
Package main defines the entrypoint to the experiments service.
internal/artifactcontent
Package artifactcontent can serve artifact content via plain HTTP securely.
Package artifactcontent can serve artifact content via plain HTTP securely.
internal/artifacts
Package artifacts contains tools for reading and processing artifacts.
Package artifacts contains tools for reading and processing artifacts.
internal/artifacts/testutil
Package testutil provides utility functions for testing with artifacts package.
Package testutil provides utility functions for testing with artifacts package.
internal/baselines
Package baselines captures baseline objects and basic interactions with them.
Package baselines captures baseline objects and basic interactions with them.
internal/baselines/testvariants
Package baselinetestvariant provides crud operations for baseline test variants.
Package baselinetestvariant provides crud operations for baseline test variants.
internal/checkpoints
Package checkpoints contains methods for maintaining and using process checkpoints to ensure processes run once only.
Package checkpoints contains methods for maintaining and using process checkpoints to ensure processes run once only.
internal/config
Package config validates and gives access to ResultDB LUCI config.
Package config validates and gives access to ResultDB LUCI config.
internal/cron
Package cron can runs functions periodically.
Package cron can runs functions periodically.
internal/ensureviews
Package ensureviews ensures BigQuery views are properly created and maintained.
Package ensureviews ensures BigQuery views are properly created and maintained.
internal/exportroots
Package exportroots contains methods for reading and writing export root records in Spanner.
Package exportroots contains methods for reading and writing export root records in Spanner.
internal/gsutil
Package gsutil contains utility functions for Google Storage.
Package gsutil contains utility functions for Google Storage.
internal/instructionutil
Package instructionutil contains utility functions for instructions.
Package instructionutil contains utility functions for instructions.
internal/invocations/graph
Package graph contains methods to explore reachable invocations.
Package graph contains methods to explore reachable invocations.
internal/rpcquota
Package rpcquota is a wrapper around LUCI quota for ResultDB.
Package rpcquota is a wrapper around LUCI quota for ResultDB.
internal/rpcutil
Package rpcutil contains utility functions for RPC handlers.
Package rpcutil contains utility functions for RPC handlers.
internal/runtestverdicts
Package runtestverdicts provides methods to query test verdicts within a test run (single invocation excluding included invocation).
Package runtestverdicts provides methods to query test verdicts within a test run (single invocation excluding included invocation).
internal/services/artifactexporter
Package artifactexporter handles uploading artifacts to BigQuery.
Package artifactexporter handles uploading artifacts to BigQuery.
internal/services/baselineupdater
Package baselineupdater marks test variants from an invocation as submitted by adding the test variants to the set of tests for its baseline identifier.
Package baselineupdater marks test variants from an invocation as submitted by adding the test variants to the set of tests for its baseline identifier.
internal/services/deadlineenforcer
Package deadlineenforcer finalizes tasks with overdue deadlines.
Package deadlineenforcer finalizes tasks with overdue deadlines.
internal/services/experiments
Package experiments provides a place to experiment within ResultDB while being (mostly) isolated from production services.
Package experiments provides a place to experiment within ResultDB while being (mostly) isolated from production services.
internal/services/exportnotifier
Package exportnotifier is responsible for dispatching "invocation ready for export" notifications, used to trigger low-latency exports from ResultDB.
Package exportnotifier is responsible for dispatching "invocation ready for export" notifications, used to trigger low-latency exports from ResultDB.
internal/services/globalmetrics
Package globalmetrics reports metrics that are computationally heavy.
Package globalmetrics reports metrics that are computationally heavy.
internal/services/purger
Package purger deletes expired test results from Spanner.
Package purger deletes expired test results from Spanner.
internal/services/recorder
Package recorder implements a binary that hosts luci.resultdb.v1.Recorder service.
Package recorder implements a binary that hosts luci.resultdb.v1.Recorder service.
internal/services/resultdb
Package resultdb provides implementation for luci.resultdb.v1.ResultDB service.
Package resultdb provides implementation for luci.resultdb.v1.ResultDB service.
internal/services/testmetadataupdator
Package testmetadataupdator implements a task which ingest test metadata from invocations.
Package testmetadataupdator implements a task which ingest test metadata from invocations.
internal/spanutil
Package span contains utility functions to interact with the underlying Spanner storage.
Package span contains utility functions to interact with the underlying Spanner storage.
internal/tasks
Package tasks contains task class definitions for ResultDB.
Package tasks contains task class definitions for ResultDB.
internal/testmetadata
Package testmetadata implements methods to query from TestMetadata spanner table.
Package testmetadata implements methods to query from TestMetadata spanner table.
internal/testutil
Package testutil provides utility functions for writing unit tests.
Package testutil provides utility functions for writing unit tests.
internal/testutil/insert
Package insert implements functions to insert rows for testing purposes.
Package insert implements functions to insert rows for testing purposes.
internal/tracing
Package tracing contains helper for reporting OpenTelemetry tracing spans.
Package tracing contains helper for reporting OpenTelemetry tracing spans.
pbutil
Package pbutil implements utility functions for ResultDB protobuf messages.
Package pbutil implements utility functions for ResultDB protobuf messages.
proto/v1
Package resultpb contains public ResultDB proto API.
Package resultpb contains public ResultDB proto API.
sink
Package sink provides a server for aggregating test results and sending them to the ResultDB backend.
Package sink provides a server for aggregating test results and sending them to the ResultDB backend.
util
Package util contains utility functions.
Package util contains utility functions.
scheduler
api/scheduler/v1
Package scheduler contains the main API of Scheduler service.
Package scheduler contains the main API of Scheduler service.
appengine/apiservers
Package apiservers implements gRPC APIs exposed by Scheduler service.
Package apiservers implements gRPC APIs exposed by Scheduler service.
appengine/catalog
Package catalog implements a part that talks to luci-config service to fetch and parse job definitions.
Package catalog implements a part that talks to luci-config service to fetch and parse job definitions.
appengine/engine
Package engine implements the core logic of the scheduler service.
Package engine implements the core logic of the scheduler service.
appengine/engine/dsset
Package dsset implements a particular flavor of datastore-backed set.
Package dsset implements a particular flavor of datastore-backed set.
appengine/engine/policy
Package policy contains implementation of triggering policy functions.
Package policy contains implementation of triggering policy functions.
appengine/frontend
Binary frontend implements GAE web server for luci-scheduler service.
Binary frontend implements GAE web server for luci-scheduler service.
appengine/internal
Package internal contains internal structs used by the tasks and the engine.
Package internal contains internal structs used by the tasks and the engine.
appengine/presentation
Package presentation implements common method to API and UI serving.
Package presentation implements common method to API and UI serving.
appengine/task
Package task defines interface between Scheduler engine and implementations of particular tasks (such as URL fetch tasks, Swarming tasks, DM tasks, etc).
Package task defines interface between Scheduler engine and implementations of particular tasks (such as URL fetch tasks, Swarming tasks, DM tasks, etc).
appengine/task/buildbucket
Package buildbucket implements tasks that run Buildbucket jobs.
Package buildbucket implements tasks that run Buildbucket jobs.
appengine/task/noop
Package noop implements tasks that do nothing at all.
Package noop implements tasks that do nothing at all.
appengine/task/urlfetch
Package urlfetch implements tasks that just make HTTP calls.
Package urlfetch implements tasks that just make HTTP calls.
appengine/task/utils
Package utils contains a bunch of small functions used by task/ subpackages.
Package utils contains a bunch of small functions used by task/ subpackages.
appengine/ui
Package ui implements request handlers that serve user facing HTML pages.
Package ui implements request handlers that serve user facing HTML pages.
Package server implements an environment for running LUCI servers.
Package server implements an environment for running LUCI servers.
analytics
Package analytics provides a way to generate google analytics snippets.
Package analytics provides a way to generate google analytics snippets.
auth
Package auth implements authentication and authorization framework for HTTP servers.
Package auth implements authentication and authorization framework for HTTP servers.
auth/authdb
Package authdb contains definition of Authentication Database (aka AuthDB).
Package authdb contains definition of Authentication Database (aka AuthDB).
auth/authdb/dump
Package dump implements loading AuthDB from dumps in Google Storage.
Package dump implements loading AuthDB from dumps in Google Storage.
auth/authdb/internal/certs
Package certs knows how to fetch certificate bundles of trusted services.
Package certs knows how to fetch certificate bundles of trusted services.
auth/authdb/internal/conds
Package conds contains supporting code for conditional bindings.
Package conds contains supporting code for conditional bindings.
auth/authdb/internal/globset
Package globset preprocesses []identity.Glob for faster querying.
Package globset preprocesses []identity.Glob for faster querying.
auth/authdb/internal/graph
Package graph implements handling of the groups graph.
Package graph implements handling of the groups graph.
auth/authdb/internal/ipaddr
Package ipaddr implements IP allowlist check.
Package ipaddr implements IP allowlist check.
auth/authdb/internal/legacy
Package legacy contains older implementation of IsMember check.
Package legacy contains older implementation of IsMember check.
auth/authdb/internal/oauthid
Package oauthid implements OAuth client ID allowlist check.
Package oauthid implements OAuth client ID allowlist check.
auth/authdb/internal/realmset
Package realmset provides queryable representation of LUCI Realms DB.
Package realmset provides queryable representation of LUCI Realms DB.
auth/authdb/internal/seccfg
Package seccfg interprets SecurityConfig proto message.
Package seccfg interprets SecurityConfig proto message.
auth/authtest
Package authtest implements some interfaces used by auth package to simplify unit testing.
Package authtest implements some interfaces used by auth package to simplify unit testing.
auth/delegation
Package delegation contains low-level API for working with delegation tokens.
Package delegation contains low-level API for working with delegation tokens.
auth/deprecated
Package deprecated contains code that should not be used in new applications.
Package deprecated contains code that should not be used in new applications.
auth/iap
Package iap implements auth.Method for GCP's Identity Aware Proxy.
Package iap implements auth.Method for GCP's Identity Aware Proxy.
auth/internal
Package internal contains internal functions used by server/auth package.
Package internal contains internal functions used by server/auth package.
auth/internal/tracing
Package tracing contains helper for reporting OpenTelemetry tracing spans.
Package tracing contains helper for reporting OpenTelemetry tracing spans.
auth/openid
Package openid contains functionality related to OpenID Connect protocol.
Package openid contains functionality related to OpenID Connect protocol.
auth/realms
Package realms contains functionality related to LUCI Realms.
Package realms contains functionality related to LUCI Realms.
auth/rpcacl
Package rpcacl implements a gRPC interceptor that checks per-RPC ACLs.
Package rpcacl implements a gRPC interceptor that checks per-RPC ACLs.
auth/service
Package service implements a wrapper around API exposed by auth_service: https://github.com/luci/luci-py/tree/master/appengine/auth_service
Package service implements a wrapper around API exposed by auth_service: https://github.com/luci/luci-py/tree/master/appengine/auth_service
auth/service/protocol
Package protocol defines the data structures used in AuthDB replication.
Package protocol defines the data structures used in AuthDB replication.
auth/signing
Package signing provides interfaces to sign arbitrary small blobs with RSA-SHA256 signature (PKCS1v15) and verify such signatures.
Package signing provides interfaces to sign arbitrary small blobs with RSA-SHA256 signature (PKCS1v15) and verify such signatures.
auth/signing/signingtest
Package signingtest implements signing.Signer interface using small random keys.
Package signingtest implements signing.Signer interface using small random keys.
auth/xsrf
Package xsrf provides Cross Site Request Forgery prevention middleware.
Package xsrf provides Cross Site Request Forgery prevention middleware.
bqlog
Package bqlog implements best effort low-overhead structured logging to BigQuery.
Package bqlog implements best effort low-overhead structured logging to BigQuery.
caching
Package caching implements common server object caches.
Package caching implements common server object caches.
caching/cachingtest
Package cachingtest contains helpers for testing code that uses caching package.
Package cachingtest contains helpers for testing code that uses caching package.
caching/layered
Package layered provides a two-layer cache for serializable objects.
Package layered provides a two-layer cache for serializable objects.
cmd/cookieserver
Executable cookieserver is a LUCI Server that hosts encryptedcookies module using Cloud Datastore as the session storage backend.
Executable cookieserver is a LUCI Server that hosts encryptedcookies module using Cloud Datastore as the session storage backend.
cmd/datastore-delete
Executable datastore-delete deletes all data of a specified kind in a Datastore database.
Executable datastore-delete deletes all data of a specified kind in a Datastore database.
cmd/encryptedcookies-session-backfill
Executable encryptedcookies-session-backfill backfills ExpireAt field in session datastore entities used by encryptedcookies module.
Executable encryptedcookies-session-backfill backfills ExpireAt field in session datastore entities used by encryptedcookies module.
cmd/secret-tool
Executable secret-tool allows to generate and rotate secrets stored in Google Secret Manager and consumed by go.chromium.org/luci/server/secrets module.
Executable secret-tool allows to generate and rotate secrets stored in Google Secret Manager and consumed by go.chromium.org/luci/server/secrets module.
cmd/selfsigned-cert
Executable selfsigned-cert generates a self-signed TLS certificate.
Executable selfsigned-cert generates a self-signed TLS certificate.
cmd/statsd-to-tsmon
Executable statsd-to-tsmon implements a statsd sink that sends aggregated metrics to tsmon.
Executable statsd-to-tsmon implements a statsd sink that sends aggregated metrics to tsmon.
cmd/tq-sweeper-spanner
Executable tq-sweeper-spanner runs an inproc sweeping driver that scans Spanner database for TQ transactional tasks reminders.
Executable tq-sweeper-spanner runs an inproc sweeping driver that scans Spanner database for TQ transactional tasks reminders.
cron
Package cron allows to register handlers called by Cloud Scheduler.
Package cron allows to register handlers called by Cloud Scheduler.
dsmapper
Package dsmapper implements a simple Datastore mapper.
Package dsmapper implements a simple Datastore mapper.
dsmapper/dsmapperlite
Package dsmapperlite implements an in-process datastore mapper.
Package dsmapperlite implements an in-process datastore mapper.
dsmapper/internal/splitter
Package splitter implements SplitIntoRanges function useful when splitting large datastore queries into a bunch of smaller queries with approximately evenly-sized result sets.
Package splitter implements SplitIntoRanges function useful when splitting large datastore queries into a bunch of smaller queries with approximately evenly-sized result sets.
dsmapper/internal/tasks
Package tasks contains definition of task queue tasks used by the mapper.
Package tasks contains definition of task queue tasks used by the mapper.
encryptedcookies
Package encryptedcookies implements authentication using encrypted cookies.
Package encryptedcookies implements authentication using encrypted cookies.
encryptedcookies/internal/fakecookies
Package fakecookies implements a cookie-based fake authentication method.
Package fakecookies implements a cookie-based fake authentication method.
encryptedcookies/session
Package session defines API for the session storage.
Package session defines API for the session storage.
encryptedcookies/session/datastore
Package datastore implements session storage over Cloud Datastore.
Package datastore implements session storage over Cloud Datastore.
experiments
Package experiments allow servers to use experimental code paths.
Package experiments allow servers to use experimental code paths.
gaeemulation
Package gaeemulation provides a server module that adds implementation of some https://godoc.org/go.chromium.org/luci/gae APIs to the global server context.
Package gaeemulation provides a server module that adds implementation of some https://godoc.org/go.chromium.org/luci/gae APIs to the global server context.
gerritauth
Package gerritauth implements authentication using Gerrit JWTs.
Package gerritauth implements authentication using Gerrit JWTs.
internal
Package internal is supporting code used by server.go.
Package internal is supporting code used by server.go.
internal/gae
Package gae implements minimal support for using some bundled GAE APIs.
Package gae implements minimal support for using some bundled GAE APIs.
internal/testpb
Package testpb contains protobufs used by server's unit tests.
Package testpb contains protobufs used by server's unit tests.
limiter
Package limiter implements load shedding for servers.
Package limiter implements load shedding for servers.
loginsessions
Package loginsessions implements Login Sessions backend that is used to perform interactive logins in LUCI CLI tools.
Package loginsessions implements Login Sessions backend that is used to perform interactive logins in LUCI CLI tools.
loginsessions/internal
Package internal contains implementation details of loginsessions module.
Package internal contains implementation details of loginsessions module.
loginsessions/internal/assets
Package assets is generated by go.chromium.org/luci/tools/cmd/assets.
Package assets is generated by go.chromium.org/luci/tools/cmd/assets.
loginsessions/internal/statepb
Package statepb contains protos used internally by loginsessions.
Package statepb contains protos used internally by loginsessions.
mailer
Package mailer can be used to send mails through a mailer service.
Package mailer can be used to send mails through a mailer service.
middleware
Package middleware contains some basic middlewares.
Package middleware contains some basic middlewares.
module
Package module defines a framework for extending server.Server with optional reusable bundles of functionality (called "modules", naturally).
Package module defines a framework for extending server.Server with optional reusable bundles of functionality (called "modules", naturally).
portal
Package portal implements HTTP routes for portal pages.
Package portal implements HTTP routes for portal pages.
portal/internal/assets
Package assets is generated by go.chromium.org/luci/tools/cmd/assets.
Package assets is generated by go.chromium.org/luci/tools/cmd/assets.
pprof
Package pprof is similar to net/http/pprof, except it supports auth.
Package pprof is similar to net/http/pprof, except it supports auth.
pubsub
Package pubsub allows to register handlers called by Cloud Pub/Sub.
Package pubsub allows to register handlers called by Cloud Pub/Sub.
quota
Package quota provides an implementation for server quotas which are backed by Redis.
Package quota provides an implementation for server quotas which are backed by Redis.
quota/examples/ratelimit
Package main contains a binary demonstrating how to use the server/quota module to implement rate limiting for requests.
Package main contains a binary demonstrating how to use the server/quota module to implement rate limiting for requests.
quota/internal/datatool
Datatool is a program which allows you to encode/decode quotapb protobuf messages to/from a variety of codecs.
Datatool is a program which allows you to encode/decode quotapb protobuf messages to/from a variety of codecs.
quota/internal/lua
Package lua is generated by go.chromium.org/luci/tools/cmd/assets.
Package lua is generated by go.chromium.org/luci/tools/cmd/assets.
quota/internal/quotakeys
Package quotakeys has utility functions for generating internal quota Redis keys.
Package quotakeys has utility functions for generating internal quota Redis keys.
quota/quotapb
Package quotapb exports proto definitions required by the quota library.
Package quotapb exports proto definitions required by the quota library.
quota/quotatestmonkeypatch
Package quotatestmonkeypatch should be imported for its side-effects in tests.
Package quotatestmonkeypatch should be imported for its side-effects in tests.
quotabeta
Package quota provides a LUCI Quota Library implementation.
Package quota provides a LUCI Quota Library implementation.
quotabeta/examples/ratelimit
Package main contains a binary demonstrating how to use the server/quota module to implement rate limiting for requests.
Package main contains a binary demonstrating how to use the server/quota module to implement rate limiting for requests.
quotabeta/proto
Package proto exports proto definitions required by the quota library.
Package proto exports proto definitions required by the quota library.
quotabeta/quotaconfig
Package quotaconfig exports the interface required by the quota library to read *pb.Policy configs.
Package quotaconfig exports the interface required by the quota library to read *pb.Policy configs.
quotabeta/quotaconfig/configservice
Package configservice provides an implementation of quotaconfig.Interface which fetches *pb.Policy configs stored with the LUCI Config service.
Package configservice provides an implementation of quotaconfig.Interface which fetches *pb.Policy configs stored with the LUCI Config service.
redisconn
Package redisconn implements integration with a Redis connection pool.
Package redisconn implements integration with a Redis connection pool.
redisconn/adminpb
Package adminpb contains API with Redis-related administrative endpoints.
Package adminpb contains API with Redis-related administrative endpoints.
router
Package router provides an HTTP router.
Package router provides an HTTP router.
secrets
Package secrets provides a secrets store based on Google Secret Manager.
Package secrets provides a secrets store based on Google Secret Manager.
secrets/testsecrets
Package testsecrets provides a dumb in-memory secret store to use in unit tests.
Package testsecrets provides a dumb in-memory secret store to use in unit tests.
servertest
Package servertest contains helpers for running server integration tests.
Package servertest contains helpers for running server integration tests.
settings
Package settings implements storage for infrequently changing global settings.
Package settings implements storage for infrequently changing global settings.
span
Package span implements a server module for communicating with Cloud Spanner.
Package span implements a server module for communicating with Cloud Spanner.
templates
Package templates implements wrapper around html/template to provide lazy loading of templates and better integration with HTTP middleware framework.
Package templates implements wrapper around html/template to provide lazy loading of templates and better integration with HTTP middleware framework.
tokens
Package tokens provides means to generate and validate base64 encoded tokens compatible with luci-py's components.auth implementation.
Package tokens provides means to generate and validate base64 encoded tokens compatible with luci-py's components.auth implementation.
tq
Package tq provides a task queue implementation on top of Cloud Tasks.
Package tq provides a task queue implementation on top of Cloud Tasks.
tq/internal/db
Package db defines common database interface.
Package db defines common database interface.
tq/internal/lessor
Package lessor defines common lessor interface.
Package lessor defines common lessor interface.
tq/internal/loopbacktest
Package loopbacktest is an integration test for TQ loopback dispatcher.
Package loopbacktest is an integration test for TQ loopback dispatcher.
tq/internal/metrics
Package metrics contains definition of metrics exposed by server/tq.
Package metrics contains definition of metrics exposed by server/tq.
tq/internal/partition
Package partition encapsulates partitioning and querying large keyspace which can't be expressed even as uint64.
Package partition encapsulates partitioning and querying large keyspace which can't be expressed even as uint64.
tq/internal/reminder
Package reminder holds Reminder to avoid circular dependencies.
Package reminder holds Reminder to avoid circular dependencies.
tq/internal/testutil
Package testutil provides fakes for testing TQ guts.
Package testutil provides fakes for testing TQ guts.
tq/internal/workset
Package workset contains a synchronized work queue implementation used by inproc sweeper.
Package workset contains a synchronized work queue implementation used by inproc sweeper.
tq/tqtesting
Package tqtesting contains helpers for running server/tq in tests and on localhost.
Package tqtesting contains helpers for running server/tq in tests and on localhost.
tq/txn/datastore
Datastore contains Transactional Enqueue support for Cloud Datastore.
Datastore contains Transactional Enqueue support for Cloud Datastore.
tq/txn/spanner
Spanner contains Transactional Enqueue support for Cloud Spanner.
Spanner contains Transactional Enqueue support for Cloud Spanner.
tsmon
Package tsmon adapts common/tsmon library to a server-side environment.
Package tsmon adapts common/tsmon library to a server-side environment.
warmup
Package warmup allows to register hooks executed during the server warmup.
Package warmup allows to register hooks executed during the server warmup.
source_index
api
internal/commit
Package commit contains methods for constructing/saving/retrieving commits.
Package commit contains methods for constructing/saving/retrieving commits.
internal/commitingester
Package commitingester contains methods for handling commit ingestion.
Package commitingester contains methods for handling commit ingestion.
internal/commitingester/internal/taskspb
Package taskspb contains the definition for LUCI Source Index's task payloads for commit ingestion.
Package taskspb contains the definition for LUCI Source Index's task payloads for commit ingestion.
internal/config
Package config implements service-level config for LUCI Source Index.
Package config implements service-level config for LUCI Source Index.
internal/gitilesutil
Package gitilesutil contains logic of interacting with Gitiles.
Package gitilesutil contains logic of interacting with Gitiles.
internal/pubsubutil
Package pubsubutil contains utility for integrating with PubSub.
Package pubsubutil contains utility for integrating with PubSub.
internal/spanutil
Package spanutil contains utility functions to interact with the underlying Spanner storage.
Package spanutil contains utility functions to interact with the underlying Spanner storage.
internal/testutil
Package testutil contains utilities for building test cases.
Package testutil contains utilities for building test cases.
internal/validationutil
Package validationutil contains various validation utilities for Source Index.
Package validationutil contains various validation utilities for Source Index.
proto/config
Package configpb contains the definition for LUCI Source Index's service- level configuration.
Package configpb contains the definition for LUCI Source Index's service- level configuration.
proto/v1
Package sourceindexpb contains the definition for LUCI Source Index's RPC interfaces.
Package sourceindexpb contains the definition for LUCI Source Index's RPC interfaces.
rpc
Package rpc contains implementations for remote procedure calls exposed by LUCI Source Index.
Package rpc contains implementations for remote procedure calls exposed by LUCI Source Index.
server
Package server contains shared server initialisation logic for LUCI Source Index services.
Package server contains shared server initialisation logic for LUCI Source Index services.
Package standalone aim to provide a subset of LUCI functionality in a standalone environment that does not require any cloud services.
Package standalone aim to provide a subset of LUCI functionality in a standalone environment that does not require any cloud services.
orchestrator
Binary orchestrator provides a service to create/manage/view builds.
Binary orchestrator provides a service to create/manage/view builds.
starlark
builtins
Package builtins is a collection of potentially useful Starlark builtins.
Package builtins is a collection of potentially useful Starlark builtins.
docgen
Package docgen generates documentation from Starlark code.
Package docgen generates documentation from Starlark code.
docgen/ast
Package ast defines AST relevant for the documentation generation.
Package ast defines AST relevant for the documentation generation.
docgen/docstring
Package docstring parses docstrings into more structured representation.
Package docstring parses docstrings into more structured representation.
docgen/symbols
Package symbols defines a data model representing Starlark symbols.
Package symbols defines a data model representing Starlark symbols.
interpreter
Package interpreter contains customized Starlark interpreter.
Package interpreter contains customized Starlark interpreter.
starlarkproto
Package starlarkproto exposes protobuf messages as Starlark types.
Package starlarkproto exposes protobuf messages as Starlark types.
starlarktest
Package starlarktest contains utilities for running Starlark tests.
Package starlarktest contains utilities for running Starlark tests.
starlarktest/vendored
Package vendored is generated by go.chromium.org/luci/tools/cmd/assets.
Package vendored is generated by go.chromium.org/luci/tools/cmd/assets.
typed
Package typed contains implementation of strongly-typed lists and dicts.
Package typed contains implementation of strongly-typed lists and dicts.
swarming
client/swarming
Package swarming contains the Swarming client.
Package swarming contains the Swarming client.
client/swarming/swarmingtest
Package swarmingtest contains Swarming client test helpers.
Package swarmingtest contains Swarming client test helpers.
internal/notifications
Package notifications contains protos for RBE Reservations notifications.
Package notifications contains protos for RBE Reservations notifications.
internal/remoteworkers
Package remoteworkers contains protos for RBE Reservations API.
Package remoteworkers contains protos for RBE Reservations API.
proto/api_v2
Package apipb contains swarming.v2 protos
Package apipb contains swarming.v2 protos
proto/bq
Package bqpb contains protobuf messages describing Swarming BigQuery tables.
Package bqpb contains protobuf messages describing Swarming BigQuery tables.
proto/internals
Package internalspb contains protobuf messages used internally by Swarming.
Package internalspb contains protobuf messages used internally by Swarming.
runner
Package runner contains code used when running Swarming tasks on bots.
Package runner contains code used when running Swarming tasks on bots.
server/acls
Package acls implements access control checks for Swarming APIs.
Package acls implements access control checks for Swarming APIs.
server/botapi
Package botapi implements core Bot API handlers.
Package botapi implements core Bot API handlers.
server/botsession
Package botsession implements marshaling of Bot Session protos.
Package botsession implements marshaling of Bot Session protos.
server/botsrv
Package botsrv knows how to handle calls from Swarming bots.
Package botsrv knows how to handle calls from Swarming bots.
server/bq
Package bq implements the export of datastore objects to bigquery.
Package bq implements the export of datastore objects to bigquery.
server/bq/taskspb
Package taskspb contains proto definitions for tq.Tasks payloads used in swarming-go.
Package taskspb contains proto definitions for tq.Tasks payloads used in swarming-go.
server/cfg
Package cfg implements Swarming server configuration logic.
Package cfg implements Swarming server configuration logic.
server/cfg/cfgtest
Package cfgtest allows to mock Swarming configs for tests.
Package cfgtest allows to mock Swarming configs for tests.
server/cfg/internalcfgpb
Package internalcfgpb contains messages used by Swarming config system.
Package internalcfgpb contains messages used by Swarming config system.
server/cipd
Package cipd is a CIPD client used by the Swarming server.
Package cipd is a CIPD client used by the Swarming server.
server/cursor
Package cursor contains logic for marshalling pagination cursors.
Package cursor contains logic for marshalling pagination cursors.
server/cursor/cursorpb
Package cursorpb contains proto messages with pagination cursors.
Package cursorpb contains proto messages with pagination cursors.
server/hmactoken
Package hmactoken implements generation and validation HMAC-tagged Swarming tokens.
Package hmactoken implements generation and validation HMAC-tagged Swarming tokens.
server/metrics
Package metrics defines metrics used in Swarming.
Package metrics defines metrics used in Swarming.
server/model
Package model contains definition of Swarming Datastore entities.
Package model contains definition of Swarming Datastore entities.
server/model/internalmodelpb
Package internalmodelpb contains messages used by Swarming data model.
Package internalmodelpb contains messages used by Swarming data model.
server/notifications
Package notifications contains the logic about send Swarming notifications.
Package notifications contains the logic about send Swarming notifications.
server/notifications/taskspb
Package taskspb contains Cloud Tasks proto definations which will be used for sending notifications.
Package taskspb contains Cloud Tasks proto definations which will be used for sending notifications.
server/pyproxy
Package pyproxy facilities migrating traffic from Python to Go.
Package pyproxy facilities migrating traffic from Python to Go.
server/rbe
Package rbe implements communication with RBE APIs.
Package rbe implements communication with RBE APIs.
server/rpcs
Package rpcs implements public API RPC handlers.
Package rpcs implements public API RPC handlers.
server/scan
Package scan implements functionality for scanning Swarming datastore.
Package scan implements functionality for scanning Swarming datastore.
server/tasks
Package tasks contains code to manage a task's lifecycle.
Package tasks contains code to manage a task's lifecycle.
server/tasks/taskspb
Package taskspb contains Cloud Tasks proto definations which will be used for tasks workflow management.
Package taskspb contains Cloud Tasks proto definations which will be used for tasks workflow management.
server/testing/fakesubmit
Command fakesubmit submits an RBE reservation for testing fakebot.
Command fakesubmit submits an RBE reservation for testing fakebot.
server/testing/getreservation
Command getreservation fetches reservation status from RBE.
Command getreservation fetches reservation status from RBE.
server/validate
Package validate contains validation for RPC requests and Config entries.
Package validate contains validation for RPC requests and Config entries.
internal/span
Package span contains utility functions to interact with the underlying Spanner storage.
Package span contains utility functions to interact with the underlying Spanner storage.
internal/teams
Package teams encapsulates reading/writing teams entities to Spanner.
Package teams encapsulates reading/writing teams entities to Spanner.
internal/testutil
Package testutil holds helper functions for testing.
Package testutil holds helper functions for testing.
proto/v1
Package v1 contains the proto definitions for the teams pRPC API.
Package v1 contains the proto definitions for the teams pRPC API.
rpc
Package rpc contains the RPC handlers for the tree status service.
Package rpc contains the RPC handlers for the tree status service.
third_party
google.golang.org/google/devtools/issuetracker/v1
Package issuetracker is an auto-generated package for the Private Issue Tracker API.
Package issuetracker is an auto-generated package for the Private Issue Tracker API.
tokenserver
api
Package tokenserver contains common protobuf messages for the token server.
Package tokenserver contains common protobuf messages for the token server.
api/admin/v1
Package admin contains The Token Server Administrative and Config API.
Package admin contains The Token Server Administrative and Config API.
api/bq
Package bq contains BigQuery tables schemas.
Package bq contains BigQuery tables schemas.
api/minter/v1
Package minter contains the main API of the token server.
Package minter contains the main API of the token server.
appengine/backend
Binary backend implements HTTP server that handles requests to 'backend' module.
Binary backend implements HTTP server that handles requests to 'backend' module.
appengine/frontend
Binary frontend implements HTTP server that handles requests to 'default' module.
Binary frontend implements HTTP server that handles requests to 'default' module.
appengine/impl
Package impl holds code to initialize the server environment.
Package impl holds code to initialize the server environment.
appengine/impl/certchecker
Package certchecker contains implementation of CertChecker.
Package certchecker contains implementation of CertChecker.
appengine/impl/certconfig
Package certconfig contains code to work with imported CAs and their CRLs.
Package certconfig contains code to work with imported CAs and their CRLs.
appengine/impl/machinetoken
Package machinetoken implements generation of LUCI machine tokens.
Package machinetoken implements generation of LUCI machine tokens.
appengine/impl/serviceaccounts
Package serviceaccounts implements MintServiceAccountToken RPC.
Package serviceaccounts implements MintServiceAccountToken RPC.
appengine/impl/services/admin/adminsrv
Package adminsrv implements Admin API.
Package adminsrv implements Admin API.
appengine/impl/services/admin/certauthorities
Package certauthorities implements CertificateAuthorities API.
Package certauthorities implements CertificateAuthorities API.
appengine/impl/services/minter/tokenminter
Package tokenminter implements TokenMinter API.
Package tokenminter implements TokenMinter API.
appengine/impl/utils
Package utils contains a variety of small utility functions used by other tokenserver packages.
Package utils contains a variety of small utility functions used by other tokenserver packages.
appengine/impl/utils/bq
Package bq contains helpers for uploading rows to BigQuery.
Package bq contains helpers for uploading rows to BigQuery.
appengine/impl/utils/identityset
Package identityset implements a set-like structure for identity.Identity.
Package identityset implements a set-like structure for identity.Identity.
appengine/impl/utils/policy
Package policy contains implementation of Policy parsing and querying.
Package policy contains implementation of Policy parsing and querying.
appengine/impl/utils/revocation
Package revocation contains utilities for implementing token revocation.
Package revocation contains utilities for implementing token revocation.
appengine/impl/utils/shards
Package shards provides a low level support for implementing sharded set of []byte blobs.
Package shards provides a low level support for implementing sharded set of []byte blobs.
appengine/impl/utils/tokensigning
Package tokensigning implements utilities for RSA-signing of proto messages.
Package tokensigning implements utilities for RSA-signing of proto messages.
auth/machine
Package machine implements authentication based on LUCI machine tokens.
Package machine implements authentication based on LUCI machine tokens.
client
Package client implements pRPC client for The Token Server.
Package client implements pRPC client for The Token Server.
cmd/luci_machine_tokend
Command luci_machine_tokend runs on all machines via cron.
Command luci_machine_tokend runs on all machines via cron.
tools
cmd/apigen
Package main hosts the Cloud Endpoints API generator utility.
Package main hosts the Cloud Endpoints API generator utility.
cmd/assets
Package main hosts the utility that converts binary assets into assets.gen.go file, so that they can be baked directly into the executable.
Package main hosts the utility that converts binary assets into assets.gen.go file, so that they can be baked directly into the executable.
cmd/bqschemaupdater
Command bqschemaupdater accepts location and schema of a BigQuery table and creates or updates the table.
Command bqschemaupdater accepts location and schema of a BigQuery table and creates or updates the table.
cmd/gorun
Package main defines the `gorun` tool, a shorthand tool to extend the "go run"-like convenience to packages.
Package main defines the `gorun` tool, a shorthand tool to extend the "go run"-like convenience to packages.
cmd/luapp
Command luapp is a very simple preprocessor for .lua files which inlines "loadfile" statements.
Command luapp is a very simple preprocessor for .lua files which inlines "loadfile" statements.
cmd/spannerdataupdater
Provides a method for executing long-running Partitioned DML statements, as needed to perform data backfills after schema changes to Spanner tables.
Provides a method for executing long-running Partitioned DML statements, as needed to perform data backfills after schema changes to Spanner tables.
bqutil
Package bqutil provides utility functions to interact with BigQuery.
Package bqutil provides utility functions to interact with BigQuery.
internal/bqexporter
Package bqexporter exports status data to BigQuery.
Package bqexporter exports status data to BigQuery.
internal/config
Package config implements service-level config for LUCI Tree Status.
Package config implements service-level config for LUCI Tree Status.
internal/perms
Package perms defines permissions used to control access to Tree Status resources, and related methods.
Package perms defines permissions used to control access to Tree Status resources, and related methods.
internal/span
Package span contains utility functions to interact with the underlying Spanner storage.
Package span contains utility functions to interact with the underlying Spanner storage.
internal/status
Package status manages status values.
Package status manages status values.
internal/testutil
Package testutil holds helper functions for testing.
Package testutil holds helper functions for testing.
internal/views
Package views ensures BigQuery views are properly created and maintained.
Package views ensures BigQuery views are properly created and maintained.
pbutil
Package pbutil contains methods for manipulating protobufs.
Package pbutil contains methods for manipulating protobufs.
proto/config
Package configpb contains protos for service-wide configuration data for LUCI Bisection
Package configpb contains protos for service-wide configuration data for LUCI Bisection
proto/v1
Package v1 contains the proto definitions for the tree status PRPC API.
Package v1 contains the proto definitions for the tree status PRPC API.
rpc
Package rpc contains the RPC handlers for the tree status service.
Package rpc contains the RPC handlers for the tree status service.
rpc/paginator
Package paginator contains helpers to convert between AIP-158 page_size/page_token/next_page_token fields and simple offset/limit values.
Package paginator contains helpers to convert between AIP-158 page_size/page_token/next_page_token fields and simple offset/limit values.
Package vpython implements the vpython tool and associated libraries.
Package vpython implements the vpython tool and associated libraries.
api/vpython
Package vpython contains `vpython` environment definition protobufs.
Package vpython contains `vpython` environment definition protobufs.
application
Package application contains the base framework to build `vpython` binaries for different python versions or bundles.
Package application contains the base framework to build `vpython` binaries for different python versions or bundles.
common
Package common contains utilities for forming python commands and searching cipd binary for verify.
Package common contains utilities for forming python commands and searching cipd binary for verify.
python
Package python includes generating python venv and parsing python command line arguments.
Package python includes generating python venv and parsing python command line arguments.
spec
Package spec contains implementation for search, parse, normalize vpython spec.
Package spec contains implementation for search, parse, normalize vpython spec.
wheels
Package wheels includes implementation for installing wheels inside venv from vpython spec.
Package wheels includes implementation for installing wheels inside venv from vpython spec.
web
rpcexplorer
Package rpcexplorer contains complied RPC Explorer web app.
Package rpcexplorer contains complied RPC Explorer web app.
rpcexplorer/internal
Package internal is generated by go.chromium.org/luci/tools/cmd/assets.
Package internal is generated by go.chromium.org/luci/tools/cmd/assets.
third_party/bootstrap/v5
Package bootstrap exposes a fs.FS variable that contains bootstrap js and css
Package bootstrap exposes a fs.FS variable that contains bootstrap js and css

Jump to

Keyboard shortcuts

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