From fc40ad264e3be8cafb717046e1df6586311d0ad7 Mon Sep 17 00:00:00 2001 From: Robert Iannucci Date: Tue, 20 Feb 2018 16:49:12 -0800 Subject: [PATCH] [vpython] Implement developer bypass parser in vpython wrapper. This will allow users on unsupported platforms to successfully bypass vpython via the recognized environment variable. R=tandrii@chromium.org, vadimsh@chromium.org Change-Id: Id63019443321d9f63550fc11e7a4ae3f684b17e7 Reviewed-on: https://chromium-review.googlesource.com/927695 Commit-Queue: Robbie Iannucci Reviewed-by: Andrii Shyshkalov --- vpython | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/vpython b/vpython index 3fd62f2d76..9befaa6908 100755 --- a/vpython +++ b/vpython @@ -1,9 +1,39 @@ #!/bin/bash -# Copyright 2017 The Chromium Authors. All rights reserved. +# Copyright 2018 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. +if [[ $VPYTHON_BYPASS == "manually managed python not supported by chrome operations" ]] +then + NEWARGS=() + while [[ $# -gt 0 ]] + do + case "$1" in + -vpython-tool*) # these tools all do something vpython related and quit + exit 0 + ;; + -vpython*=*) # delete any vpython-specific flag (w/ attached argument) + shift + ;; + -vpython*) # delete any vpython-specific flag (w/ separate argument) + shift + shift + ;; + --) # stop parsing + NEWARGS+=( "$@" ) + break + ;; + *) # regular arg + NEWARGS+=( "$1" ) + shift + ;; + esac + done + exec "python" "${NEWARGS[@]}" +fi + + MYPATH=$(dirname "${BASH_SOURCE[0]}") source "$MYPATH/cipd_bin_setup.sh"