commit | 1ec0dcbba3469bdd206053bd741819b9813d1c4b | [log] [tgz] |
---|---|---|
author | Vadim Shtayura <vadimsh@chromium.org> | Thu Mar 20 00:43:57 2025 |
committer | LUCI CQ <infra-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu Mar 20 00:43:57 2025 |
tree | efba57d1111546c7b7c07c2cf9942d3d4f250610 | |
parent | efcdde4308dd7a6a08c9c09b46bfd22df4121264 [diff] |
[lucicfg] Add some abstractions for working with remote deps. The core abstraction is Repo interface, which will eventually be implemented on top of depsource APIs. It will also be mocked in tests to allow to use local files as substitute for "remote" repos. This also attempts to explain the edge case related to remote dependencies depending back on the local dependencies, since its consequences leak into the API (we need a special version tag to represented "some uncomparable local revision" that should always compare to itself in MVS and never to real revisions). R=iannucci@chromium.org Change-Id: I8b85dc2be8c32a83085d81724ec7f4c4aac96e9e Reviewed-on: https://chromium-review.googlesource.com/c/infra/luci/luci-go/+/6370968 Reviewed-by: Robbie Iannucci <iannucci@google.com> Commit-Queue: Vadim Shtayura <vadimsh@chromium.org>
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 uses the same flow as Chromium contributions.