summaryrefslogtreecommitdiff
path: root/grpc/tools/buildgen/generate_projects.sh
diff options
context:
space:
mode:
Diffstat (limited to 'grpc/tools/buildgen/generate_projects.sh')
-rwxr-xr-xgrpc/tools/buildgen/generate_projects.sh14
1 files changed, 9 insertions, 5 deletions
diff --git a/grpc/tools/buildgen/generate_projects.sh b/grpc/tools/buildgen/generate_projects.sh
index 9b5c0f50..b98be3ba 100755
--- a/grpc/tools/buildgen/generate_projects.sh
+++ b/grpc/tools/buildgen/generate_projects.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#! /bin/bash
# Copyright 2015 gRPC authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,15 +18,19 @@ set -e
export TEST=${TEST:-false}
-# Upgrade Python's YAML library
-python3 -m pip install --upgrade --ignore-installed PyYAML --user
+YAML_OK=$(python3 -c "import yaml; print(yaml.__version__.split('.') >= ['5', '4', '1'])")
+
+if [[ "${YAML_OK}" != "True" ]]; then
+ # PyYAML dropped 3.5 support at 5.4.1, which makes 5.3.1 the latest version we
+ # can use.
+ python3 -m pip install --upgrade --ignore-installed PyYAML==5.3.1 --user
+fi
echo "Generating build_autogenerated.yaml from bazel BUILD file"
rm -f build_autogenerated.yaml
python3 tools/buildgen/extract_metadata_from_bazel_xml.py
cd `dirname $0`/../..
-mako_renderer=tools/buildgen/mako_renderer.py
tools/buildgen/build_cleaner.py build_handwritten.yaml
@@ -38,6 +42,6 @@ TEST=true tools/buildgen/build_cleaner.py build_autogenerated.yaml
# Instead of generating from a single build.yaml, we've split it into
# - build_handwritten.yaml: manually written metadata
# - build_autogenerated.yaml: generated from bazel BUILD file
-python3 tools/buildgen/generate_projects.py build_handwritten.yaml build_autogenerated.yaml $gen_build_files $*
+python3 tools/buildgen/generate_projects.py build_handwritten.yaml build_autogenerated.yaml $gen_build_files "$@"
rm $gen_build_files