From f438ff743a4b157b9be8cecefa7a170f9695d185 Mon Sep 17 00:00:00 2001 From: Shenghua Zhang Date: Fri, 23 Feb 2018 14:20:19 -0800 Subject: [PATCH] [cipd] Match version to vars value supporting in gclient.py For now 'version' of packages only support string like 'version:27.0.5'. It is helpful to support version to match vars value, e.g. Var('tool_version'), especially useful when version numbers could be modified via api. This change won't affect versions with string format. Change-Id: I40b389b528f04712798b08f1455869cab2ec54c9 Reviewed-on: https://chromium-review.googlesource.com/935666 Reviewed-by: Aaron Gable Commit-Queue: Shenghua Zhang --- gclient.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gclient.py b/gclient.py index 94ea2df0a..f83043bf2 100755 --- a/gclient.py +++ b/gclient.py @@ -718,6 +718,11 @@ class Dependency(gclient_utils.WorkItem, DependencySettings): # should suffice. 'https://chrome-infra-packages.appspot.com') for package in dep_value.get('packages', []): + if 'version' in package: + # Matches version to vars value. + raw_version = package['version'] + version = raw_version.format(**self.get_vars()) + package['version'] = version deps_to_add.append( CipdDependency( self, name, package, cipd_root,