# This file specifies the CIPD packages and versions used in this repo.
# Note that there are packages for multiple platforms here which may clobber
# each other. Therefore, if you plan to "cipd ensure" this file, you will need
# to first strip out the packages you don't want. For an example, see
# kube/build_base_cipd_release, which should be updated if new platforms are
# added here.

# The CIPD server to use.
$ServiceURL https://chrome-infra-packages.appspot.com/

# This is the cipd client itself
infra/tools/cipd/${os}-${arch}  git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024

@Subdir cipd_bin_packages
infra/3pp/tools/git/linux-amd64                  version:2@2.38.1.chromium.9
infra/3pp/tools/git/linux-arm64                  version:2@2.38.1.chromium.9
infra/3pp/tools/git/linux-armv6l                 version:2@2.38.1.chromium.9
infra/3pp/tools/git/mac-amd64                    version:2@2.38.1.chromium.9
infra/3pp/tools/git/windows-386                  version:2@2.38.1.chromium.9
infra/3pp/tools/git/windows-amd64                version:2@2.38.1.chromium.9
infra/tools/git/${platform}                      git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci-auth/${platform}                git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci/git-credential-luci/${platform} git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci/gsutil/${platform}              git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci/isolate/${platform}             git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci/isolated/${platform}            git_revision:dc3a3dc4272aeef30698752d137ccd4f09526d69
infra/tools/luci/lucicfg/${platform}             git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci/swarming/${platform}            git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci/vpython/${platform}             git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
infra/tools/luci/vpython-native/${platform}      git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
skia/tools/goldctl/${platform}                   git_revision:9f6c2de25cce548433f4d0301bbde675a65a2f95

@subdir cipd_bin_packages/cpython
infra/3pp/tools/cpython/linux-amd64              version:2@2.7.18.chromium.44
infra/3pp/tools/cpython/linux-arm64              version:2@2.7.18.chromium.44
infra/3pp/tools/cpython/linux-armv6l             version:2@2.7.18.chromium.44
infra/3pp/tools/cpython/mac-amd64                version:2@2.7.18.chromium.44
infra/3pp/tools/cpython/windows-386              version:2@2.7.18.chromium.44
infra/3pp/tools/cpython/windows-amd64            version:2@2.7.18.chromium.44

@subdir cipd_bin_packages/cpython3
infra/3pp/tools/cpython3/linux-amd64             version:2@3.8.10.chromium.19
infra/3pp/tools/cpython3/linux-arm64             version:2@3.8.10.chromium.19
infra/3pp/tools/cpython3/linux-armv6l            version:2@3.8.10.chromium.19
infra/3pp/tools/cpython3/mac-amd64               version:2@3.8.10.chromium.19
infra/3pp/tools/cpython3/windows-386             version:2@3.8.10.chromium.19
infra/3pp/tools/cpython3/windows-amd64           version:2@3.8.10.chromium.19

@subdir task_drivers
skia/tools/bazel_build_all/${platform}           git_revision:2b787917e4a391cb011a3d8ce73badf922904ec5
skia/tools/bazel_test_all/${platform}            git_revision:2b787917e4a391cb011a3d8ce73badf922904ec5
skia/tools/command_wrapper/${platform}           git_revision:2b787917e4a391cb011a3d8ce73badf922904ec5
skia/tools/presubmit/${platform}                 git_revision:2b787917e4a391cb011a3d8ce73badf922904ec5

@Subdir
infra/tools/luci/kitchen/${platform}             git_revision:4f585e471d9b3ba86b2ac0ec0cdefaa8fdb67024
