Refactor create_venv requirements aggregation
BUG=None
TEST=Run virtualenv scripts locally
Change-Id: Iba8d17c323f678089cda4ec24e2342cabfd32e50
Reviewed-on: https://chromium-review.googlesource.com/423208
Commit-Ready: Allen Li <ayatane@chromium.org>
Tested-by: Allen Li <ayatane@chromium.org>
Reviewed-by: David Riley <davidriley@chromium.org>
diff --git a/create_venv b/create_venv
index b2b873a..cc07e34 100755
--- a/create_venv
+++ b/create_venv
@@ -53,24 +53,23 @@
local venv_dir=$1
local requirements=$2
local installed="$venv_dir/.installed.txt"
- (
- for dep in "${base_deps[@]}"; do
- echo "$dep"
- done
- cat "$requirements"
- ) | "$basedir/expand_reqs.py" 2>/dev/null | cmp -s - "$installed"
+ print_reqs "$requirements" | cmp -s - "$installed"
}
mark_up_to_date() {
local venv_dir=$1
local requirements=$2
local installed="$venv_dir/.installed.txt"
- : > "$installed"
- local dep
+ print_reqs "$requirements" > "$installed"
+}
+
+print_reqs() {
+ local requirements=$1
+
for dep in "${base_deps[@]}"; do
- echo "$dep" >> "$installed"
+ echo "$dep"
done
- "$basedir/expand_reqs.py" <"$requirements" >>"$installed"
+ "$basedir/expand_reqs.py" <"$requirements" 2>/dev/null
}
init_venv() {