# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Syntax: https://godoc.org/go.chromium.org/luci/cipd/client/cipd/ensure

$VerifiedPlatform linux-amd64
$VerifiedPlatform mac-amd64

$ParanoidMode CheckPresence

@Subdir tools

# Buildbucket CLI
infra/tools/bb/${platform} git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# Gerrit CLI
infra/tools/luci/gerrit/${platform} git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# Isolated
infra/tools/luci/isolated/${platform} git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# LUCI editor
infra/tools/luci/led/${platform} git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# LogDog CLI client
infra/tools/luci/logdog/logdog/${platform} git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# LUCI auth tool
infra/tools/luci-auth/${platform} git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# Lucicfg tool
infra/tools/luci/lucicfg/${platform}  git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# vpython
infra/tools/luci/vpython/${platform} git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# preview_email
infra/tools/preview_email/${platform}  git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1

# YAPF
infra/tools/yapf git_revision:4dc2c26daea364a8ea5c150f670b1999d63005a1
