README

infra.git repository

Welcome to the Chrome Infra repository!

Wondering where to start? Check out General Chrome Infrastructure documentation. In particular, to check out this repo and the rest of the infrastructure code, follow the instructions here. The rest of this page is specific to this repo.

Entry points

  • run.py: wrapper script to run programs contained in subdirectories without having to deal with sys.path modifications.
  • test.py: multi-purpose script to run tests.
  • packages/infra_libs/: generally useful functions and classes
  • infra/services/: standalone programs intended to be run as daemons.
  • infra/tools: command-line tools, intended to be run by developers.
  • appengine/: many Chrome-infra-managed AppEngine applications
  • infra/experimental: for, well, experimental stuff. Once they are stabilized and reviewed, they should be moved in a more permanent place.

Miscellaneous technical stuff

  • bootstrap/: utilities to set up a proper Python virtual environment.
  • infra/path_hacks: submodules of this modules give access to modules in the build/ repository. from infra.path_hacks.common import <stg> is actually getting <stg> from build/scripts/common.
  • utils/: purpose? utils?
  • Need to bump infra/deployed to pick up changes?
    • git push origin <updated hash>:deployed
    • mail chrome-troopers@, include:
      • previously deployed hash (for quick rollback)
      • the hash you just pushed
      • the list of CLs that made this push necessary
      • the output of the git push command

Integrating tests with test.py

If you've added a new module, run your tests with test.py:

  1. Create a .coveragerc file in the root directory of the module you want to test. Take a look at another .coveragerc to see what to include in that.
  2. Create a "test" directory in the root directory of the module you want to test. Move your *_test.py files to this directory.

Double-check that your tests are getting picked up when you want them to be: ./test.py test <path-to-package>.

Tests still not getting picked up by test.py? Double-check to make sure you have __init__.py files in each directory of your module so Python recognizes it as a package.

Style

The preferred style is PEP8 with two-space indent; that is, the Chromium Python style, except functions use lowercase_with_underscores. Use yapf (git cl format) to autoformat new code.

Expand ▾ Collapse ▴

Directories

Path Synopsis
go/src/infra/appengine/arquebus/app/appengine Package arquebus is the entry point of this app.
go/src/infra/appengine/arquebus/app/backend Package backend implements the core logic of Arquebus service.
go/src/infra/appengine/arquebus/app/backend/model
go/src/infra/appengine/arquebus/app/config Package config implements interface for app-level configs for Arquebus.
go/src/infra/appengine/arquebus/app/cron
go/src/infra/appengine/arquebus/app/frontend Package frontend implements Web interface for Arquebus.
go/src/infra/appengine/arquebus/app/static
go/src/infra/appengine/arquebus/app/util Package util implements helper functions that are used in other packages.
go/src/infra/appengine/chromium_build_stats/app Package app implements chromium-build-stats.appspot.com services.
go/src/infra/appengine/chromium_build_stats/compilerproxylog Package compilerproxylog provides compiler_proxy INFO log parser.
go/src/infra/appengine/chromium_build_stats/logstore Package logstore provides an access to storage of ninja_log and compiler_proxy.INFO log.
go/src/infra/appengine/chromium_build_stats/ninjalog Package ninjalog provides ninja_log parser It support ninja log v5.
go/src/infra/appengine/chromium_build_stats/ninjalog/traceviewer Package traceviewer generates trace-viewer page from *ninjalog.NinjaLog.
go/src/infra/appengine/chromium_build_stats/ninjaproto
go/src/infra/appengine/cr-audit-commits/app Package crauditcommits implements cr-audit-commits.appspot.com services.
go/src/infra/appengine/cr-audit-commits/app/config
go/src/infra/appengine/cr-audit-commits/app/proto
go/src/infra/appengine/cr-audit-commits/app/rules
go/src/infra/appengine/cr-audit-commits/buildstatus
go/src/infra/appengine/cr-rev/backend Frontend service handles home page, API and redirects.
go/src/infra/appengine/cr-rev/backend/gitiles
go/src/infra/appengine/cr-rev/backend/pubsub
go/src/infra/appengine/cr-rev/backend/repoimport Package repoimport is a generated GoMock package.
go/src/infra/appengine/cr-rev/common
go/src/infra/appengine/cr-rev/config Package config implements interface for app-level configs for cr-rev.
go/src/infra/appengine/cr-rev/frontend Frontend service handles home page, API and redirects.
go/src/infra/appengine/cr-rev/frontend/api/v1
go/src/infra/appengine/cr-rev/frontend/redirect Package redirect contains logic for resovling ambiquios redirects and generic Git Web UI URLs.
go/src/infra/appengine/cr-rev/models
go/src/infra/appengine/cr-rev/utils
go/src/infra/appengine/cros/lab_inventory/api/bigquery Package apibq contains the bigquery service API.
go/src/infra/appengine/cros/lab_inventory/api/v1 Package api contains the lab_inventory service API.
go/src/infra/appengine/cros/lab_inventory/api/v1/label_exception_parser
go/src/infra/appengine/cros/lab_inventory/app/appengine
go/src/infra/appengine/cros/lab_inventory/app/config Package config contains service configuration endpoints and data definition for lab_inventory.
go/src/infra/appengine/cros/lab_inventory/app/converter
go/src/infra/appengine/cros/lab_inventory/app/cron Package cron implements handlers for appengine cron targets in this app.
go/src/infra/appengine/cros/lab_inventory/app/frontend
go/src/infra/appengine/cros/lab_inventory/app/pubsub
go/src/infra/appengine/crosskylabadmin/api/fleet/v1 Package fleet contains service definitions for fleet management in crosskylabadmin.
go/src/infra/appengine/crosskylabadmin/app/appengine
go/src/infra/appengine/crosskylabadmin/app/clients
go/src/infra/appengine/crosskylabadmin/app/clients/mock Package mock is a generated GoMock package.
go/src/infra/appengine/crosskylabadmin/app/config Package config contains service configuration endpoints and data definition for crosskylabadmin.
go/src/infra/appengine/crosskylabadmin/app/cron Package cron implements handlers for appengine cron targets in this app.
go/src/infra/appengine/crosskylabadmin/app/frontend
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/datastore/deploy Package deploy provides functions to store deployment status in datastore.
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/datastore/dronecfg Package dronecfg implements datastore access for storing drone configs.
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/datastore/freeduts Package freeduts implements datastore access for caching free (removed) DUTs info.
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/datastore/inventory Package inventory contains datastore operations for caching inventory data.
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/datastore/stableversion Package stableversion provides functions to store stableversion info in datastore
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/dutpool
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/metrics Package metrics contains functions to report tsmon metrics from app RPCs.
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/swarming Package swarming contains utilities for skylab swarming tasks.
go/src/infra/appengine/crosskylabadmin/app/frontend/internal/worker
go/src/infra/appengine/crosskylabadmin/app/frontend/inventory Package inventory implements the fleet.Inventory service end-points of corsskylabadmin.
go/src/infra/appengine/crosskylabadmin/app/frontend/test
go/src/infra/appengine/crosskylabadmin/app/gitstore
go/src/infra/appengine/crosskylabadmin/app/gitstore/fakes
go/src/infra/appengine/crosskylabadmin/app/queue Package queue implements handlers for taskqueue jobs in this app.
go/src/infra/appengine/dashboard/api/dashboard
go/src/infra/appengine/dashboard/backend
go/src/infra/appengine/dashboard/frontend
go/src/infra/appengine/depot_tools_metrics/metrics Package main stores the reported JSON metrics from depot_tools into a BigQuery table.
go/src/infra/appengine/depot_tools_metrics/schema
go/src/infra/appengine/drone-queen/api Package api contains the drone queen service API.
go/src/infra/appengine/drone-queen/appengine
go/src/infra/appengine/drone-queen/internal/config Package config contains the service configuration protos.
go/src/infra/appengine/drone-queen/internal/cron Package cron implements handlers for appengine cron targets in this app.
go/src/infra/appengine/drone-queen/internal/entities Package entities contains datastore entity kinds.
go/src/infra/appengine/drone-queen/internal/frontend Package frontend implements the drone queen service.
go/src/infra/appengine/drone-queen/internal/queries Package queries contains convenient datastore queries.
go/src/infra/appengine/drone-queen/internal/testlogger Package testlogger implements a logging.Logger for use in tests.
go/src/infra/appengine/rotang Package rotang handles the scheduling of oncall rotations.
go/src/infra/appengine/rotang/cmd/app Package app sets up the AppEngine routing and h.
go/src/infra/appengine/rotang/cmd/handlers
go/src/infra/appengine/rotang/pkg/algo Package algo contains shared functions to be used by rotation Generators.
go/src/infra/appengine/rotang/pkg/calendar
go/src/infra/appengine/rotang/pkg/datastore Package datastore implements the Storer interface using Cloud Datastore.
go/src/infra/appengine/rotang/pkg/jsoncfg Package jsoncfg handles the legacy json formatted rota configurations.
go/src/infra/appengine/rotang/proto/rotangapi
go/src/infra/appengine/rotation-proxy package main implements the App Engine based HTTP server to handle request to Rotation Proxy
go/src/infra/appengine/rotation-proxy/proto
go/src/infra/appengine/sheriff-o-matic/backend Package main implements HTTP server that handles requests to the backend analyzer module.
go/src/infra/appengine/sheriff-o-matic/config Package config is used temporarily as a kill switch when we disable automatic grouping.
go/src/infra/appengine/sheriff-o-matic/frontend Package main implements HTTP server that handles requests to default module.
go/src/infra/appengine/sheriff-o-matic/som/analyzer
go/src/infra/appengine/sheriff-o-matic/som/analyzer/step
go/src/infra/appengine/sheriff-o-matic/som/client
go/src/infra/appengine/sheriff-o-matic/som/client/test
go/src/infra/appengine/sheriff-o-matic/som/handler Package handler implements HTTP server that handles requests to default module.
go/src/infra/appengine/sheriff-o-matic/som/model
go/src/infra/appengine/sheriff-o-matic/som/model/gen
go/src/infra/appengine/sheriff-o-matic/som/testexpectations
go/src/infra/appengine/test-results/frontend Program frontend implements the App Engine based HTTP server behind test-results.appspot.com.
go/src/infra/appengine/test-results/masters Package masters provides a list of known masters.
go/src/infra/appengine/test-results/model Package model provides types that represent Chromium test result files such as "results.json", "full_results.json", etc.
go/src/infra/appengine/test-results/model/gen
go/src/infra/appengine/tree-status
go/src/infra/chromeperf/pinpoint Package pinpoint includes all proto/service definitions for the Pinpoint service.
go/src/infra/chromeperf/pinpoint_server
go/src/infra/chromeperf/pinpoint_server/conversion
go/src/infra/cmd/bqexport bqexport loads a BigQuery struct definition from Go source and exports a table definition protobuf suitable for "bqschemaupdater" to instantiate and process.
go/src/infra/cmd/bqexport/test_data
go/src/infra/cmd/bqexport/testing
go/src/infra/cmd/bqupload Command bqupload inserts rows in a BigQuery table.
go/src/infra/cmd/cloudbuildhelper Binary cloudbuildhelper is used internally by Infra CI pipeline to build docker images.
go/src/infra/cmd/cloudbuildhelper/builder Package builder implement local build process.
go/src/infra/cmd/cloudbuildhelper/builder/testing/helloworld
go/src/infra/cmd/cloudbuildhelper/builder/testing/nope
go/src/infra/cmd/cloudbuildhelper/builder/testing/pkg1
go/src/infra/cmd/cloudbuildhelper/builder/testing/pkg2
go/src/infra/cmd/cloudbuildhelper/cloudbuild Package cloudbuild wraps interaction with Google Cloud Build.
go/src/infra/cmd/cloudbuildhelper/docker Package docker is a primitive wrapper over shelling out to 'docker' tool.
go/src/infra/cmd/cloudbuildhelper/dockerfile Package dockerfile implements utilities related to Dockerfile processing.
go/src/infra/cmd/cloudbuildhelper/fileset Package fileset contains an abstraction for a set of files.
go/src/infra/cmd/cloudbuildhelper/gitignore Package gitignore implements .gitignore check predicate.
go/src/infra/cmd/cloudbuildhelper/manifest Package manifest defines structure of YAML files with target definitions.
go/src/infra/cmd/cloudbuildhelper/registry Package registry implements very limited Container Registry v2 API client.
go/src/infra/cmd/cloudbuildhelper/storage Package storage wraps Google Storage routines into a simpler interface.
go/src/infra/cmd/cloudsqlhelper Binary cloudsqlhelper is a tool to simplify working with Cloud SQL databases.
go/src/infra/cmd/cros/ipcpubsub
go/src/infra/cmd/cros/ipcpubsub/internal/cmd
go/src/infra/cmd/cros/ipcpubsub/internal/site Package site contains site local constants for the qscheduler tool.
go/src/infra/cmd/cros/ipcpubsub/pubsublib
go/src/infra/cmd/cros_test_platform Command cros_test_platform implements the cros_test_platform recipe's steps.
go/src/infra/cmd/cros_test_platform/internal/autotest/artifacts Package artifacts contains utility functions to download and unarchive Autotest build artifacts.
go/src/infra/cmd/cros_test_platform/internal/autotest/testspec Package testspec contains functions to compute Build API test specification from Autotest control files.
go/src/infra/cmd/cros_test_platform/internal/backfill
go/src/infra/cmd/cros_test_platform/internal/cmd
go/src/infra/cmd/cros_test_platform/internal/enumeration Package enumeration contains functions to enumerate tests and associated metadata matching test plan requirements.
go/src/infra/cmd/cros_test_platform/internal/execution Package execution provides end-to-end execution of pre-enumerated cros_test_platform requests via the Skylab task running infrastructure.
go/src/infra/cmd/cros_test_platform/internal/execution/args Package args contains the logic for assembling all data required for creating an individual task request.
go/src/infra/cmd/cros_test_platform/internal/execution/bb Package bb implements a skylab.Client using calls to BuildBucket.
go/src/infra/cmd/cros_test_platform/internal/execution/build Package build provides a way to update the buildbucket Build proto during execution.
go/src/infra/cmd/cros_test_platform/internal/execution/isolate Package isolate provides an interface for fetching files from isolate.
go/src/infra/cmd/cros_test_platform/internal/execution/isolate/getter Package getter provides a client to fetch a named file from an isolate.
go/src/infra/cmd/cros_test_platform/internal/execution/response Package response provides a way to accumulate and summarize the response for a request.
go/src/infra/cmd/cros_test_platform/internal/execution/retry Package retry provides a way to determine when a task should be retried.
go/src/infra/cmd/cros_test_platform/internal/execution/skylab Package skylab contains the logic for running individual test tasks.
go/src/infra/cmd/cros_test_platform/internal/execution/swarming Package swarming defines an interface for interacting with swarming.
go/src/infra/cmd/cros_test_platform/internal/execution/types Package types contains types common to execution sub-packages.
go/src/infra/cmd/cros_test_platform/internal/site Package site contains functions and constants related to execution of this tool in specific environments (e.g., developer workstation vs buildbucket build)
go/src/infra/cmd/cros_test_platform/internal/testutils Package testutils contains utility functions for unit and integration tests.
go/src/infra/cmd/cros_test_platform/internal/utils
go/src/infra/cmd/cros_test_platform/luciexe Command luciexe implements the cros_test_platform build logic.
go/src/infra/cmd/cros_test_platform/luciexe/common Package common houses common logic for all "steps" in this luciexe.
go/src/infra/cmd/cros_test_platform/luciexe/execute Package execute houses the top-level logic for the execute step.
go/src/infra/cmd/diagnose_goma_log diagnose_goma_log diagnoses goma's compiler_proxy.INFO log file.
go/src/infra/cmd/drone-agent Command drone-agent is the client that talks to the drone queen service to provide Swarming bots for running tasks against test devices.
go/src/infra/cmd/drone-agent/internal/agent Package agent implements an agent which talks to a drone queen service and manages Swarming bots.
go/src/infra/cmd/drone-agent/internal/agent/state Package state implements the agent state.
go/src/infra/cmd/drone-agent/internal/bot Package bot wraps managing Swarming bots.
go/src/infra/cmd/drone-agent/internal/delay Package delay implements a delayable timer.
go/src/infra/cmd/drone-agent/internal/draining Package draining implements a draining state on contexts.
go/src/infra/cmd/drone-agent/internal/tokman Package tokman implements an OAuth access token file manager.
go/src/infra/cmd/gaedeploy Binary gaedeploy is a helper to deploy GAE apps from tarballs.
go/src/infra/cmd/gaedeploy/cache
go/src/infra/cmd/gaedeploy/gcloud Package gcloud contains helpers for calling `gcloud` tool in PATH.
go/src/infra/cmd/gaedeploy/module Package module implements reading and processing of GAE module YAMLs.
go/src/infra/cmd/gaedeploy/source Package source abstracts source of deployable tarballs.
go/src/infra/cmd/mac_toolchain
go/src/infra/cmd/ninja_log_trace_viewer ninja_log_trace_viewer converts .ninja_log into trace-viewer formats.
go/src/infra/cmd/shivas
go/src/infra/cmd/shivas/audit
go/src/infra/cmd/shivas/cmdhelp
go/src/infra/cmd/shivas/meta
go/src/infra/cmd/shivas/query
go/src/infra/cmd/shivas/site Package site contains site local constants for the shivas
go/src/infra/cmd/shivas/swarming/cmds
go/src/infra/cmd/shivas/ufs/cmds/operations
go/src/infra/cmd/shivas/ufs/cmds/state
go/src/infra/cmd/shivas/ufs/subcmds/chromeplatform
go/src/infra/cmd/shivas/ufs/subcmds/drac
go/src/infra/cmd/shivas/ufs/subcmds/host
go/src/infra/cmd/shivas/ufs/subcmds/kvm
go/src/infra/cmd/shivas/ufs/subcmds/machine
go/src/infra/cmd/shivas/ufs/subcmds/machineprototype
go/src/infra/cmd/shivas/ufs/subcmds/nic
go/src/infra/cmd/shivas/ufs/subcmds/rack
go/src/infra/cmd/shivas/ufs/subcmds/rackprototype
go/src/infra/cmd/shivas/ufs/subcmds/rpm
go/src/infra/cmd/shivas/ufs/subcmds/static
go/src/infra/cmd/shivas/ufs/subcmds/switches
go/src/infra/cmd/shivas/ufs/subcmds/vlan
go/src/infra/cmd/shivas/ufs/subcmds/vm
go/src/infra/cmd/shivas/utils
go/src/infra/cmd/skylab Command cros-admin is the Chrome OS infrastructure admin tool.
go/src/infra/cmd/skylab/internal/bb Package bb provides a buildbucket Client with helper methods for interacting with builds.
go/src/infra/cmd/skylab/internal/cmd/cmdlib
go/src/infra/cmd/skylab/internal/cmd/internalcmds
go/src/infra/cmd/skylab/internal/cmd/inventory
go/src/infra/cmd/skylab/internal/cmd/meta
go/src/infra/cmd/skylab/internal/cmd/pool
go/src/infra/cmd/skylab/internal/cmd/queen
go/src/infra/cmd/skylab/internal/cmd/recipe Package recipe formulates buildbucket requests for the cros_test_platform recipe, given arguments from the skylab tool.
go/src/infra/cmd/skylab/internal/cmd/tasks
go/src/infra/cmd/skylab/internal/cmd/utils
go/src/infra/cmd/skylab/internal/flagx
go/src/infra/cmd/skylab/internal/inventory Package inventory includes gerrit-related functions.
go/src/infra/cmd/skylab/internal/logutils Package logutils contains general logging helpers.
go/src/infra/cmd/skylab/internal/site Package site contains site local constants for the skylab tool.
go/src/infra/cmd/skylab/internal/userinput Package userinput provides functions to obtain interactive user input for command line tools.
go/src/infra/cmd/skylab_swarming_worker
go/src/infra/cmd/skylab_swarming_worker/internal/admin Package admin provides bindings for the crosskylabadmin API
go/src/infra/cmd/skylab_swarming_worker/internal/annotations Package annotations provides an API for writing annotation lines that annotee can parse and turn into LogDog annotations.
go/src/infra/cmd/skylab_swarming_worker/internal/autotest/constants Package constants provides Autotest constants for Skylab worker.
go/src/infra/cmd/skylab_swarming_worker/internal/autotest/hostinfo Package hostinfo provides support for Autotest's serialized hostinfo data.
go/src/infra/cmd/skylab_swarming_worker/internal/event Package event defines Lucifer events and a function for running Lucifer with an event handler.
go/src/infra/cmd/skylab_swarming_worker/internal/fifo Package fifo implements FIFO utilities for skylab_swarming_worker.
go/src/infra/cmd/skylab_swarming_worker/internal/logdog Package logdog implements a convenient interface wrapping the LogDog, Butler, and Annotee APIs from LUCI.
go/src/infra/cmd/skylab_swarming_worker/internal/lucifer Package lucifer provides Go bindings for running lucifer.
go/src/infra/cmd/skylab_swarming_worker/internal/parser Package parser provides Go bindings for running autotest_status_parser.
go/src/infra/cmd/skylab_swarming_worker/internal/pretty
go/src/infra/cmd/skylab_swarming_worker/internal/swmbot Package swmbot provides interaction with the Swarming bot running the Skylab worker process.
go/src/infra/cmd/skylab_swarming_worker/internal/swmbot/harness Package harness manages the setup and teardown of various Swarming bot resources for running lab tasks, like results directories and host info.
go/src/infra/cmd/skylab_swarming_worker/internal/swmbot/harness/botinfo Package botinfo implements opening and closing a bot's botinfo stored on disk.
go/src/infra/cmd/skylab_swarming_worker/internal/swmbot/harness/dutinfo Package dutinfo implement loading Skylab DUT inventory info for the worker.
go/src/infra/cmd/skylab_swarming_worker/internal/swmbot/harness/hostinfo Package hostinfo implements the parts of harness management pertaining to Autotest hostinfo.
go/src/infra/cmd/skylab_swarming_worker/internal/swmbot/harness/resultsdir Package resultsdir implements Autotest results directory creation and sealing.
go/src/infra/cmd/stable_version2
go/src/infra/cmd/stable_version2/internal/cmd
go/src/infra/cmd/stable_version2/internal/cmd/dump
go/src/infra/cmd/stable_version2/internal/cmd/meta
go/src/infra/cmd/stable_version2/internal/cmd/omaha
go/src/infra/cmd/stable_version2/internal/cmd/validateconfig
go/src/infra/cmd/stable_version2/internal/cmd/validateconfig/querygs
go/src/infra/cmd/stable_version2/internal/gs
go/src/infra/cmd/stable_version2/internal/site
go/src/infra/cmd/stable_version2/internal/utils
go/src/infra/cmdsupport/cmdlib
go/src/infra/config/tree Package tree is a generated protocol buffer package.
go/src/infra/cros/cmd/autotest_status_parser Command autotest_status_parser extracts individual test case results from status.log.
go/src/infra/cros/cmd/autotest_status_parser/internal/cmd
go/src/infra/cros/cmd/common-tls
go/src/infra/cros/cmd/fleet-tlw Command fleet-tlw implements the TLS wiring API for Chrome OS fleet labs.
go/src/infra/cros/cmd/lucifer Command lucifer runs tests and admin tasks.
go/src/infra/cros/cmd/lucifer/internal/abortsock Package abortsock implements abort sockets.
go/src/infra/cros/cmd/lucifer/internal/annotations Package annotations provides a basic API for writing annotation lines that annotee can parse and turn into LogDog annotations.
go/src/infra/cros/cmd/lucifer/internal/api Package api contains the interface that Lucifer uses to talk to the outside world.
go/src/infra/cros/cmd/lucifer/internal/autotest Package autotest provides a Go API for interacting with Autotest.
go/src/infra/cros/cmd/lucifer/internal/autotest/atutil Package atutil provides a higher level Autotest interface than the autotest package.
go/src/infra/cros/cmd/lucifer/internal/autotest/dutprep Package dutprep contains functions helpful in interaction with the Autotest DUT preparation tool.
go/src/infra/cros/cmd/lucifer/internal/dutstate
go/src/infra/cros/cmd/lucifer/internal/event Package event standardizes communication of events from Lucifer commands.
go/src/infra/cros/cmd/lucifer/internal/flagx Package flagx contains extra utilities to complement the flag package.
go/src/infra/cros/cmd/lucifer/internal/logdog Package logdog provide an interface for writing LogDog logs.
go/src/infra/cros/cmd/lucifer/internal/metrics Package metrics provides common metrics code for Lucifer.
go/src/infra/cros/cmd/lucifer/internal/osutil Package osutil contains high-level utility functions for operating system functionality.
go/src/infra/cros/cmd/phosphorus Command autotest_status_parser extracts individual test case results from status.log.
go/src/infra/cros/cmd/phosphorus/internal/autotest Package autotest provides a Go API for interacting with Autotest.
go/src/infra/cros/cmd/phosphorus/internal/autotest/atutil Package atutil provides a higher level Autotest interface than the autotest package.
go/src/infra/cros/cmd/phosphorus/internal/cmd
go/src/infra/cros/cmd/phosphorus/internal/gs
go/src/infra/cros/cmd/phosphorus/internal/osutil Package osutil contains high-level utility functions for operating system functionality.
go/src/infra/cros/cmd/prototype-rts Application prototype-rts is a local demo Remote Test Server.
go/src/infra/cros/cmd/prototype-rts/internal/cmd
go/src/infra/cros/cmd/prototype-tlw Command dev-tlw implements the TLS wiring API for development convenience.
go/src/infra/cros/cmd/result_flow Command result_flow implements the result flow recipe's steps.
go/src/infra/cros/cmd/result_flow/internal/bb Package bb implements a BuildBucket.Client using calls to BuildBucket.
go/src/infra/cros/cmd/result_flow/internal/bq
go/src/infra/cros/cmd/result_flow/internal/cmd
go/src/infra/cros/cmd/result_flow/internal/message
go/src/infra/cros/cmd/result_flow/internal/site Package site contains site local constants for the Result Flow.
go/src/infra/cros/cmd/result_flow/internal/transform Package transform contains tools for transforming CTP build to test_platform/analytics/TestPlanRun proto.
go/src/infra/cros/cmd/skylab_local_state Command autotest_status_parser extracts individual test case results from status.log.
go/src/infra/cros/cmd/skylab_local_state/internal/cmd
go/src/infra/cros/cmd/skylab_local_state/internal/location Package location provides utils for manipulating local file paths and URLs.
go/src/infra/cros/cmd/skylab_local_state/internal/ufs Package ufs provides option t build connection to UFS service.
go/src/infra/cros/cmd/tclint Command lint is generic linter for Chrome OS test configs.
go/src/infra/cros/cmd/tclint/internal/cmd
go/src/infra/cros/cmd/tclint/internal/diagnostics Package diagnostics provides utilities to collect diagnostics for lint.
go/src/infra/cros/cmd/tclint/internal/metadata Package metadata provides functions to lint Chrome OS integration test metadata.
go/src/infra/cros/cmd/tclint/internal/util/difftests Package difftests provides utilities for writing tests that compare against golden output.
go/src/infra/cros/tlsutil Package tlsutil provides utility for working with test lab services.
go/src/infra/experimental/appengine/who
go/src/infra/experimental/importcounter Command importcounter will calculate and print per-package and aggregate metrics about Go dependencies.
go/src/infra/libs/bqschema/buildevent Package buildevent defines BigQuery schemas and table definitions to use for build events.
go/src/infra/libs/bqschema/tabledef
go/src/infra/libs/cookiefile Package cookiefile implements a CookieJar over a standard Netscape/curl format cookie file.
go/src/infra/libs/cros/cipd Package cipd is an internal CIPD tool wrapper.
go/src/infra/libs/cros/dutstate Package dutstate provides representation of states of DUT in Swarming and reading and updating a state in UFS service.
go/src/infra/libs/cros/git
go/src/infra/libs/cros/gs
go/src/infra/libs/cros/lab_inventory/bq Package bq implements bigquery-related logic.
go/src/infra/libs/cros/lab_inventory/cfg2datastore
go/src/infra/libs/cros/lab_inventory/changehistory
go/src/infra/libs/cros/lab_inventory/datastore Package datastore contains datastore-related logic.
go/src/infra/libs/cros/lab_inventory/deviceconfig
go/src/infra/libs/cros/lab_inventory/dronecfg Package dronecfg implements datastore access for storing drone configs.
go/src/infra/libs/cros/lab_inventory/hart
go/src/infra/libs/cros/lab_inventory/hwid
go/src/infra/libs/cros/lab_inventory/manufacturingconfig
go/src/infra/libs/cros/lab_inventory/protos
go/src/infra/libs/cros/lab_inventory/utilization Package utilization provides functions to report DUT utilization metrics.
go/src/infra/libs/cros/lab_inventory/utils
go/src/infra/libs/cros/sheet
go/src/infra/libs/cros/stableversion
go/src/infra/libs/cros/stableversion/filter
go/src/infra/libs/cros/stableversion/proto
go/src/infra/libs/cros/stableversion/validateconfig
go/src/infra/libs/cros/swarming
go/src/infra/libs/fleet/protos
go/src/infra/libs/fleet/protos/go
go/src/infra/libs/infraenv Package infraenv enables applications to access Chrome Infrastructure-specific bot parameters.
go/src/infra/libs/jsutil
go/src/infra/libs/skylab/autotest/dynamicsuite Package dynamicsuite provides a library to create control.cros_test_platform suite requests that inject arbitrary arguments into autotest.dynamic_suite.reimage_and_run(...).
go/src/infra/libs/skylab/autotest/proxy Package proxy provides a library to create swarming requests for an autotest-swarming-proxy task.
go/src/infra/libs/skylab/cloudkms Package cloudkms implements decryption of Cloud KMS encrypted ciphertext.
go/src/infra/libs/skylab/common/errctx Package errctx provides implementations of context.Context that allow for cancellation or deadline expiration with custom error messages.
go/src/infra/libs/skylab/dutstate Package dutstate provides utils related to the DUT state cache file and the autotest host info file.
go/src/infra/libs/skylab/inventory Package inventory implements Skylab inventory stuff.
go/src/infra/libs/skylab/inventory/autotest/labels Package labels implements conversion of Skylab inventory schema to Autotest labels.
go/src/infra/libs/skylab/inventory/swarming Package swarming implements conversion of Skylab inventory schema to Swarming dimensions.
go/src/infra/libs/skylab/multibot
go/src/infra/libs/skylab/request Package request provides a library to create swarming requests based on skylab test or task parameters.
go/src/infra/libs/skylab/sideeffects Package sideeffects implements the validation of side effects configuration.
go/src/infra/libs/skylab/swarming Package swarming implements a client for creating skylab-swarming tasks and getting their results.
go/src/infra/libs/skylab/worker Package worker implements a constructor for skylab_swarming_worker commands.
go/src/infra/libs/testing/ansidiff
go/src/infra/monitoring
go/src/infra/monitoring/eventlogger Package eventlogger provides a non-blocking logging interface for ChromeInfraEvents.
go/src/infra/monitoring/looper
go/src/infra/monitoring/messages
go/src/infra/monitoring/messages/crit_event Package crit_event is a generated protocol buffer package.
go/src/infra/monitoring/sysmon/android
go/src/infra/monitoring/sysmon/cipd
go/src/infra/monitoring/sysmon/cmd/sysmon
go/src/infra/monitoring/sysmon/cros
go/src/infra/monitoring/sysmon/docker
go/src/infra/monitoring/sysmon/puppet
go/src/infra/monitoring/sysmon/system
go/src/infra/monorail Package monorail implements Monorail client.
go/src/infra/monorail/monorailtest
go/src/infra/monorailv2
go/src/infra/monorailv2/api/api_proto
go/src/infra/monorailv2/api/v3/api_proto
go/src/infra/qscheduler/cmd/qscheduler Command qscheduler is the tool to interact with quotascheduler.
go/src/infra/qscheduler/cmd/qscheduler/internal/cmd
go/src/infra/qscheduler/cmd/qscheduler/internal/site Package site contains site local constants for the qscheduler tool.
go/src/infra/qscheduler/qslib/profiler Package profiler provides entity size and CPU usage profiling for quotascheduler entities.
go/src/infra/qscheduler/qslib/protos
go/src/infra/qscheduler/qslib/protos/metrics Package metrics defines types used for structured logs and metrics of the quotascheduler behavior.
go/src/infra/qscheduler/qslib/reconciler Package reconciler provides a wrapper around a global state scheduler to be used by a per-worker pulling dispatcher.
go/src/infra/qscheduler/qslib/scheduler Package scheduler provides Scheduler, which is an implementation of the quotascheduler algorithm.
go/src/infra/qscheduler/qslib/tutils Package tutils provides convenience functions to convert between proto representations and time.Time / time.Duration representations of times or durations.
go/src/infra/qscheduler/service/api/qscheduler/v1 Package qscheduler contains service definitions for the qscheduler app.
go/src/infra/qscheduler/service/app/config Package config contains service configuration endpoints and data definition for qscheduler-swarming.
go/src/infra/qscheduler/service/app/eventlog
go/src/infra/qscheduler/service/app/frontend Package frontend exposes the primary pRPC API of qscheduler app.
go/src/infra/qscheduler/service/app/state Package state provides representations of the state of a quotascheduler app, as well as transformations that run on a state and ways to persist the state, and emits metrics about the state or its transitions.
go/src/infra/qscheduler/service/app/state/metrics Package metrics provides functions to emit ts_mon and bq metrics.
go/src/infra/qscheduler/service/app/state/nodestore Package nodestore implements a datastore-backed persistent store of qscheduler state, that shards state over as many entities as necessary to stay under datastore's single-entity size limit, and uses an in-memory cache to avoid unnecessary datastore reads.
go/src/infra/qscheduler/service/app/state/nodestore/internal/blob Package blob defines the proto format used by nodestore.
go/src/infra/qscheduler/service/app/state/operations
go/src/infra/qscheduler/service/app/state/types
go/src/infra/qscheduler/service/cmd/qscheduler-swarming Command qscheduler-swarming implements a qscheduler server process for GKE environment.
go/src/infra/third_party/govanityurls govanityurls serves Go vanity URLs.
go/src/infra/tools/backuptogs
go/src/infra/tools/backuptogs/filetree
go/src/infra/tools/bugtemplate
go/src/infra/tools/cloudtail
go/src/infra/tools/cloudtail/cmd/cloudtail
go/src/infra/tools/cloudtail/internal
go/src/infra/tools/device_watchdog device_watchdog is a watchdog daemon for android devices.
go/src/infra/tools/dirmd Package dirmd implements parsing and transformations of directory metadata.
go/src/infra/tools/dirmd/cli
go/src/infra/tools/dirmd/cli/updater Package updater computes inherited metadata and uploads it to GCS.
go/src/infra/tools/dirmd/cmd/dirmd
go/src/infra/tools/dirmd/proto
go/src/infra/tools/git
go/src/infra/tools/git/state
go/src/infra/tools/gsutil
go/src/infra/tools/kitchen
go/src/infra/tools/kitchen/build
go/src/infra/tools/kitchen/cookflags
go/src/infra/tools/kitchen/third_party/recipe_engine
go/src/infra/tools/led Command 'led' is the new generation of 'infra/tools/led'.
go/src/infra/tools/logdog
go/src/infra/tools/migrator Package migrator provides interfaces and tooling for migrating LUCI configuration files across all known LUCI projects.
go/src/infra/tools/migrator/cmd/migrator
go/src/infra/tools/migrator/internal/plugsupport Package plugsupport provides implementations for loading migrator plugins.
go/src/infra/tools/migrator/internal/plugsupport/templates Package templates is generated by go.chromium.org/luci/tools/cmd/assets.
go/src/infra/tools/provenance
go/src/infra/tools/recipe_bundler
go/src/infra/tools/relnotes CLI tool to generate release notes based on git logs in the current directory.
go/src/infra/tools/result_adapter
go/src/infra/tools/vpython
go/src/infra/tools/vpython/vpythonsmoketest
go/src/infra/tricium/api/admin/v1
go/src/infra/tricium/api/bigquery
go/src/infra/tricium/api/v1
go/src/infra/tricium/appengine/backend
go/src/infra/tricium/appengine/common Package common implements common functionality for the Tricium service modules.
go/src/infra/tricium/appengine/common/config
go/src/infra/tricium/appengine/common/gerrit
go/src/infra/tricium/appengine/common/track Package track implements shared tracking functionality for the Tricium service modules.
go/src/infra/tricium/appengine/common/triciumtest Package triciumtest implements common testing functionality for the Tricium service modules.
go/src/infra/tricium/appengine/frontend
go/src/infra/tricium/functions/commitcheck Package main implements the commitcheck analyzer.
go/src/infra/tricium/functions/copyright
go/src/infra/tricium/functions/cpplint
go/src/infra/tricium/functions/eslint
go/src/infra/tricium/functions/git-file-isolator Package main implements the Git File Isolator analyzer.
go/src/infra/tricium/functions/gosec
go/src/infra/tricium/functions/gosec/test/src/example
go/src/infra/tricium/functions/hello Package main implements the Hello analyzer.
go/src/infra/tricium/functions/https-check
go/src/infra/tricium/functions/metrics
go/src/infra/tricium/functions/mojom-commentator
go/src/infra/tricium/functions/pylint
go/src/infra/tricium/functions/shellcheck
go/src/infra/tricium/functions/shellcheck/runner
go/src/infra/tricium/functions/spacey
go/src/infra/tricium/functions/spellchecker
go/src/infra/unifiedfleet/api/v1/proto Package ufspb contains the fleet service API.
go/src/infra/unifiedfleet/api/v1/proto/bigquery Package apibq contains the bigquery service API.
go/src/infra/unifiedfleet/api/v1/proto/chromeos/device Package ufspb contains the fleet service API.
go/src/infra/unifiedfleet/api/v1/proto/chromeos/lab Package ufspb contains the fleet service API.
go/src/infra/unifiedfleet/api/v1/proto/chromeos/manufacturing Package ufspb contains the fleet service API.
go/src/infra/unifiedfleet/api/v1/rpc Package ufspb contains the fleet service API.
go/src/infra/unifiedfleet/app/config Package config contains the configurations for UFS service.
go/src/infra/unifiedfleet/app/controller
go/src/infra/unifiedfleet/app/cron
go/src/infra/unifiedfleet/app/dumper
go/src/infra/unifiedfleet/app/frontend
go/src/infra/unifiedfleet/app/frontend/fake
go/src/infra/unifiedfleet/app/model/configuration
go/src/infra/unifiedfleet/app/model/datastore
go/src/infra/unifiedfleet/app/model/history
go/src/infra/unifiedfleet/app/model/inventory
go/src/infra/unifiedfleet/app/model/registration
go/src/infra/unifiedfleet/app/model/state
go/src/infra/unifiedfleet/app/util
go/src/infra/unifiedfleet/cmd/dumper
go/src/infra/unifiedfleet/cmd/ufs-service