put goma client in depot_tools

install goma client cipd package in depot_tools.

should not use $MYPATH/goma_ctl in cipd_bin_setup
since $MYPATH/goma_ctl uses cipd_bin_setup in itself,
so causing recursive calls.
invoke python to run .cipd/goma_ctl.py in cipd_bin_setup
instead.

Bug: b/77663154
Change-Id: I9f82c766a886a2acfb899e3594e5f05a7b7bc75a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1866350
Reviewed-by: Edward Lesmes <ehmaldonado@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Fumitoshi Ukai <ukai@chromium.org>
diff --git a/cipd_bin_setup.bat b/cipd_bin_setup.bat
index 11350cd..ea70707 100644
--- a/cipd_bin_setup.bat
+++ b/cipd_bin_setup.bat
@@ -4,3 +4,4 @@
 :: found in the LICENSE file.

 

 "%~dp0\cipd.bat" ensure -log-level warning -ensure-file "%~dp0\cipd_manifest.txt" -root "%~dp0\.cipd_bin"

+call python.bat "%~dp0\.cipd_bin\goma_ctl.py" update_hook

diff --git a/cipd_bin_setup.sh b/cipd_bin_setup.sh
index 611d153..ea7542b 100644
--- a/cipd_bin_setup.sh
+++ b/cipd_bin_setup.sh
@@ -19,4 +19,6 @@
         -log-level warning \
         -ensure-file "$ENSURE" \
         -root "$ROOT"
+
+    PYTHONDONTWRITEBYTECODE=1 python "$MYPATH/.cipd_bin/goma_ctl.py" update_hook
 }
diff --git a/cipd_manifest.txt b/cipd_manifest.txt
index 0007588..8d8ee87 100644
--- a/cipd_manifest.txt
+++ b/cipd_manifest.txt
@@ -10,6 +10,11 @@
 # For these, the git revision is the one of
 # https://chromium.googlesource.com/infra/infra.git.
 #
+# For goma client, generated via builders at
+# https://ci.chromium.org/p/infra-internal/g/goma-client/console
+# the git revision is the one of
+# https://chromium.googlesource.com/infra/goma/client.git
+#
 # To regenerate them (after modifying this file):
 #   cipd ensure-file-resolve -ensure-file cipd_manifest.txt
 $ResolvedVersions cipd_manifest.versions
@@ -47,3 +52,6 @@
 
 # CHROMEOS Buildjobs CLI
 chromiumos/infra/crosjobs/${platform=linux-amd64} git_revision:ed616d595eb7241d39d34907050d2949121d6ae8
+
+# goma client
+infra/goma/client/${os}-${arch=amd64} git_revision:6cff373df4908e2fbdc7dced3e5f03d0a4337da8
diff --git a/cipd_manifest.versions b/cipd_manifest.versions
index 3deb882..b78d521 100644
--- a/cipd_manifest.versions
+++ b/cipd_manifest.versions
@@ -5,6 +5,18 @@
 	git_revision:ed616d595eb7241d39d34907050d2949121d6ae8
 	_vAeU0Q9lAxn933K8vDhwGK40zKVvV-yXGpIy43ATXAC
 
+infra/goma/client/linux-amd64
+	git_revision:6cff373df4908e2fbdc7dced3e5f03d0a4337da8
+	foM8y4-U9H2vqYFss0qr012VYISzHCuqxrP6fYm6XjUC
+
+infra/goma/client/mac-amd64
+	git_revision:6cff373df4908e2fbdc7dced3e5f03d0a4337da8
+	DESRA5A06iQDrxRkNuftoCEi4ig8uAJzbbGa6YYtdz4C
+
+infra/goma/client/windows-amd64
+	git_revision:6cff373df4908e2fbdc7dced3e5f03d0a4337da8
+	SvCnuszdUOGoAw4JSzCP1WNPMIw3znGS6I0XucJwulsC
+
 infra/tools/bb/linux-386
 	git_revision:bdbeaf7b6f457238c69f328bfc7684fc1f2a79e6
 	Ebjauqd0o3KlNnOcHxG_IP-uZsOaRDndybE6ylUF4PIC
diff --git a/goma_auth b/goma_auth
new file mode 100755
index 0000000..04ffd8d
--- /dev/null
+++ b/goma_auth
@@ -0,0 +1,12 @@
+#!/usr/bin/env bash
+
+# Copyright 2019 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+MYPATH=$(dirname "${BASH_SOURCE[0]}")
+
+source "$MYPATH/cipd_bin_setup.sh"
+cipd_bin_setup &> /dev/null
+
+PYTHONDONTWRITEBYTECODE=1 exec python "$MYPATH/.cipd_bin/goma_auth.py" "$@"
diff --git a/goma_auth.bat b/goma_auth.bat
new file mode 100644
index 0000000..eb18f95
--- /dev/null
+++ b/goma_auth.bat
@@ -0,0 +1,8 @@
+@echo off
+:: Copyright 2019 The Chromium Authors. All rights reserved.
+:: Use of this source code is governed by a BSD-style license that can be
+:: found in the LICENSE file.
+
+@call "%~dp0\cipd_bin_setup.bat" > null 2>&1
+@call python.bat %~dp0\.cipd_bin\goma_auth.py %*
+exit /b
diff --git a/goma_ctl b/goma_ctl
new file mode 100755
index 0000000..ac27283
--- /dev/null
+++ b/goma_ctl
@@ -0,0 +1,12 @@
+#!/usr/bin/env bash
+
+# Copyright 2019 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+MYPATH=$(dirname "${BASH_SOURCE[0]}")
+
+source "$MYPATH/cipd_bin_setup.sh"
+cipd_bin_setup &> /dev/null
+
+PYTHONDONTWRITEBYTECODE=1 exec python "$MYPATH/.cipd_bin/goma_ctl.py" "$@"
diff --git a/goma_ctl.bat b/goma_ctl.bat
new file mode 100644
index 0000000..ec706b7
--- /dev/null
+++ b/goma_ctl.bat
@@ -0,0 +1,8 @@
+@echo off
+:: Copyright 2019 The Chromium Authors. All rights reserved.
+:: Use of this source code is governed by a BSD-style license that can be
+:: found in the LICENSE file.
+
+@call "%~dp0\cipd_bin_setup.bat" > null 2>&1
+@call python.bat %~dp0\.cipd_bin\goma_ctl.py %*
+exit /b