Clone this repo:
  1. 8fec1e6 Revert "[bqschemaupdater] make schema text more compact" by Nodir Turakulov · 34 hours ago master
  2. b9c7277 [bqschemaupdater] refine doc by Nodir Turakulov · 34 hours ago
  3. 48db761 [Machine Database] Support filtering hosts, VMs by IP address by smut · 35 hours ago
  4. 440001c [swarming] Wait indefinitely if timeout is 0 by Michael Anthony Knyszek · 35 hours ago
  5. 4d83d4f [bqschemaupdater] remove -dry-run flag by Nodir Turakulov · 35 hours ago

luci-go: LUCI services and tools in Go

GoDoc Build Status Coverage Status

Installing

go get -u go.chromium.org/luci/client/cmd/...
go get -u go.chromium.org/luci/server/cmd/...

Code layout

  • /appengine/... contains AppEngine server code. It imports packages from /common/... and /server/....
  • /client/... contains all client code.
  • /common/... contains code and structures shared between all of /appengine/..., /client/... and /server/...; for example, the structures used by the server APIs. These are inherently APIs.
  • /deploytool/... contains the LUCI cloud services deployment tool.
  • /logdog/... contains LogDog client and server code, as well as APIs, protobufs, and support libraries.
  • /server/... contains standalone server code. Its packages are reusable by /appengine/....
  • /tools/... contains support tools used by other LUCI components.

Versioning

  • Branch go1 contains the stable code.
  • Branch master constains the latest code.

Contributing

  • Sign the Google CLA.
  • Make sure your user.email and user.name are configured in git config.
  • Install test-only packages: go get -u -t go.chromium.org/luci/client/...
  • Install the pcg git hook: go get -u github.com/maruel/pre-commit-go/cmd/... && pcg

Run the following to setup the code review tool and create your first review:

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git $HOME/src/depot_tools
export PATH="$PATH:$HOME/src/depot_tools"
cd $GOROOT/go.chromium.org/luci
git checkout -b work origin/master

# hack hack
git commit -a -m "This is awesome"

# We use Gerrit for code review. Visit
# https://chromium-review.googlesource.com/new-password
# and follow instructions.

git cl upload -s --r-owners
# This will upload your change to Gerrit and pick a random owner (as defined
# in the OWNERS file) for review.
# Wait for approval and submit your code through Commit Queue.
# Commit queue will test your change on multiple platforms and land it
# automatically.

# Once you get a review with comments, you can do additional commits to your
# feature branch, and then upload again to update the review in gerrit.
$ git cl upload

Use git cl help and git cl help <cmd> for more details.