diff --git a/ensure_bootstrap b/ensure_bootstrap new file mode 100755 index 000000000..f2adb86e9 --- /dev/null +++ b/ensure_bootstrap @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +# Copyright 2017 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. + +# This is a shell script to ensure that all of the "depot_tools" bootstrap +# programs are locally downloaded and ready for execution. +# +# Unlike "update_depot_tools", this script works with the current +# checkout, and will not update/sync the "depot_tools" repository. +# +# TODO: This duplicates logic in "update_depot_tools". Update that script to +# invoke this script instead of manually calling "cipd_bin_setup" and other +# operations. + +# Test if this script is running under a MinGW install. If it is, we will +# hardcode the paths to Git where possible. +OUTPUT="$(uname | grep 'MINGW')" +MINGW=$? + +if [ $MINGW = 0 ]; then + base_dir="${0%/*}" +else + base_dir=$(dirname "${BASH_SOURCE[0]}") + if [ -L "$base_dir" ]; then + base_dir=`cd "$base_dir" && pwd -P` + fi +fi + +# Sync CIPD-boostrapped packages. +source "$base_dir/cipd_bin_setup.sh" +cipd_bin_setup + +# Sync "gsutil.py". +python "$base_dir/gsutil.py" -- version 1> /dev/null + +# Cleanup. +find "$base_dir" -iname "*.pyc" -delete || true