From 67d70ee059eadd09f7faadefb49519c69186e99f Mon Sep 17 00:00:00 2001 From: Muxi Yan Date: Wed, 1 Apr 2020 11:53:20 -0700 Subject: [PATCH] Remove docker, and update scripts --- src/objective-c/BoringSSL-GRPC.podspec | 487 +----------------- .../BoringSSL-GRPC.podspec.template | 14 +- .../distrib/check_boringssl_prefix_symbol.sh | 18 +- .../generate_boringssl_prefix_header.sh | 60 +++ tools/distrib/upgrade_boringssl_objc.sh | 44 -- .../Dockerfile | 36 -- .../generate_boringssl_prefix_header.sh | 41 -- tools/dockerfile/test/sanity/Dockerfile | 1 - 8 files changed, 74 insertions(+), 627 deletions(-) create mode 100755 tools/distrib/generate_boringssl_prefix_header.sh delete mode 100755 tools/distrib/upgrade_boringssl_objc.sh delete mode 100644 tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/Dockerfile delete mode 100755 tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/generate_boringssl_prefix_header.sh diff --git a/src/objective-c/BoringSSL-GRPC.podspec b/src/objective-c/BoringSSL-GRPC.podspec index c1257f47237..0490b16a211 100644 --- a/src/objective-c/BoringSSL-GRPC.podspec +++ b/src/objective-c/BoringSSL-GRPC.podspec @@ -1631,492 +1631,9 @@ Pod::Spec.new do |s| # outputs a gzip+base64 encoded version of boringssl_prefix_symbols.h because of Cocoapods' # limit on the 'prepare_command' field length. The encoded header is put at # /src/boringssl/boringssl_prefix_symbols.h.gz.b64. Here we decode the content and inject - # the header to correcty location in BoringSSL. + # the header to the correct location in BoringSSL. base64 -D < include/openssl/boringssl_prefix_symbols.h - H4sICH9e2F0AA2JvcmluZ3NzbF9wcmVmaXhfc3ltYm9scy5oAK2dXXPbRpa/7/dTqP57s1s1tWvJ - cSZzSUt0zI0taUg6G+8NCiRBCWOSYABQtvPp/9147ZdzGvgduCo1kwh4ngM2Gv2GRvd///fVbXb+ - nqdPz+XVf2z/8+rm1fUvf7v6NcueDsnV4rT9r3/77/9W/1w9JvkxLYo0O12V2dWlSP52tVXg366O - 2S7dq/+PT7v/zvKrXVqUebq5lMlV+ZwWV0W2L7/GeXK1Vwfj03ftOl/yc1YkV1/T8vlK/Vn/f3Yp - r/ZJcqWQ5yRPNt+vnvL4VCa7v12d8+wl3SU7JYxL9T/JVbzJXhJt2nbXfsrKdJvoq6jjnvvrbQ+d - z0mcX6Wnq/hw0GSaFO2vW7+fX60e3q3/d7acXy1WV4/Lh98Xd/O7q/83W6n//n9Xs/u76qTZp/X7 - h+XV3WJ1+2G2+Li6mn34cKWo5ex+vZivtOt/F+v3V8v5r7OlQh4UpXy9+/72w6e7xf2vFbj4+Phh - oaL0gquHd9rxcb68fa/+Mnu7+LBYf67Cv1us7+er1X8px9X9w9X89/n9+mr1XnuMK3s7v/qwmL39 - ML96p/5rdv9Z61aP89vF7MPf1HUv57frvylF+2/qpNuH+9X8n5+UTp1zdTf7OPtVX0hFt/9Z/bD3 - s/XqQcVdqp+3+vRhrX/Gu+XDx6sPDyt95VefVnMVY7aeaVqlobrk1d8UN1cXuNTXPVP/3K4XD/fa - pwAVer2c6eu4n//6YfHr/P52rtmHClg/LNW5n1YN87er2XKx0kEfPq01/aCd2qQ09/PqnDr1dXqo - a6muYr5UCfFxVonf2Xfjv/5Nw28flsq5Wn2IZnd30eNy/m7xx9U5LsqkuCq/Zlcq653KdJ8meaEy - j8r82SlRN6HUWUxl6mOh/6BFaZnkcalzXLa/OsbbPLtKvp3jU5UJ1T9pWVzF+dPlqHzF1SZRcFIF - Sk9P//Vv/75L9ukpIS/nP+K/XW3+kzwULdRPX9YnBB3miVfx1b//+1Wk/2fzbz21eIj2UVEc6Gvo - /1j/4W898J+Wo0hK1NIgvedu/WEVbQ+pSqromKjiYTdW55OOVaAjPUWSvyS5RGeRjlWXhdHmst+r - 7CZxE7wd4eU6upGnrE8TdqGW9YlT2qc9+5SUCKfDk8rTZXpMdM2GeQ3Ssz6rGu6QCMU27LlFicD8 - +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 EOF # We are renaming openssl to openssl_grpc so that there is no conflict with openssl if it exists diff --git a/templates/src/objective-c/BoringSSL-GRPC.podspec.template b/templates/src/objective-c/BoringSSL-GRPC.podspec.template index 22bdb6f8869..beb053aace4 100644 --- a/templates/src/objective-c/BoringSSL-GRPC.podspec.template +++ b/templates/src/objective-c/BoringSSL-GRPC.podspec.template @@ -1,8 +1,14 @@ %YAML 1.2 --- | <%! - import subprocess + import subprocess, base64 + import gzip boringssl_commit = subprocess.check_output(['git', 'rev-parse', 'HEAD'], cwd='third_party/boringssl').decode().strip() + prefix_f = open("src/boringssl/boringssl_prefix_symbols.h", "rb") + prefix = prefix_f.read() + prefix_gzip = gzip.compress(prefix) + prefix_gzip_b64 = base64.b64encode(prefix_gzip) + prefix_f.close() %> # This file has been automatically generated from a template file. @@ -232,11 +238,9 @@ # outputs a gzip+base64 encoded version of boringssl_prefix_symbols.h because of Cocoapods' # limit on the 'prepare_command' field length. The encoded header is put at # /src/boringssl/boringssl_prefix_symbols.h.gz.b64. Here we decode the content and inject - # the header to correcty location in BoringSSL. + # the header to the correct location in BoringSSL. base64 -D < include/openssl/boringssl_prefix_symbols.h - % for line in open("src/boringssl/boringssl_prefix_symbols.h.gz.b64", "r").readlines(): - ${line}\ - % endfor + ${prefix_gzip_b64} EOF # We are renaming openssl to openssl_grpc so that there is no conflict with openssl if it exists diff --git a/tools/distrib/check_boringssl_prefix_symbol.sh b/tools/distrib/check_boringssl_prefix_symbol.sh index d0912d89b61..ecf48660e8c 100755 --- a/tools/distrib/check_boringssl_prefix_symbol.sh +++ b/tools/distrib/check_boringssl_prefix_symbol.sh @@ -20,20 +20,8 @@ cd "$(dirname $0)" cd ../../third_party/boringssl BORINGSSL_COMMIT=$(git rev-parse HEAD) +PREFIX_SYMBOLS_COMMIT=$(cat ../../src/boringssl/boringssl_prefix_symbols.h | head -n1 | awk '{print $NF}') -mkdir -p ./build -cd build -cmake .. -make -j4 -go run ../util/read_symbols.go ssl/libssl.a > ./symbols.txt -go run ../util/read_symbols.go crypto/libcrypto.a >> ./symbols.txt +[ $BORINGSSL_COMMIT == $PREFIX_SYMBOLS_COMMIT ] || { echo "The BoringSSL commit does not match the commit of the prefix symbols (src/boringssl/boringssl_prefix_symbols.h). Run tools/distrib/regenerate_boringssl_prefix_symbols.sh to update the prefix symbols." ; exit 1 ; } -cmake .. -DBORINGSSL_PREFIX=GRPC -DBORINGSSL_PREFIX_SYMBOLS=symbols.txt -make boringssl_prefix_symbols -gzip -c symbol_prefix_include/boringssl_prefix_symbols.h | base64 > boringssl_prefix_symbols.h.gz.b64 - -diff ../../../src/boringssl/boringssl_prefix_symbols.h.gz.b64 boringssl_prefix_symbols.h.gz.b64 - -result=$? - -exit $result +exit 0 diff --git a/tools/distrib/generate_boringssl_prefix_header.sh b/tools/distrib/generate_boringssl_prefix_header.sh new file mode 100755 index 00000000000..e2b1ae67995 --- /dev/null +++ b/tools/distrib/generate_boringssl_prefix_header.sh @@ -0,0 +1,60 @@ +#!/bin/bash +# Copyright 2018 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Generate the list of boringssl symbols that need to be renamed based on the +# current boringssl submodule. The script should be run after a boringssl +# upgrade in third_party/boringssl. Note that after the script is run, you will +# typically need to manually upgrade the BoringSSL-GRPC podspec +# (templates/src/objective-c/BoringSSL-GRPC.podspec.template) version and the +# corresponding version number in gRPC-Core podspec +# (templates/gRPC-Core.podspec.template). + +set -ev + +cd "$(dirname $0)" +cd ../../third_party/boringssl + +BORINGSSL_COMMIT=$(git rev-parse HEAD) +BORINGSSL_PREFIX_HEADERS_DIR=src/boringssl + +# generate the prefix header +mkdir -p build +cd build +cmake .. +make clean +make -j + +[ -f ssl/libssl.a ] || { echo "Failed to build libssl.a" ; exit 1 ; } +[ -f crypto/libcrypto.a ] || { echo "Failed to build libcrypto.a" ; exit 1 ; } + +go run ../util/read_symbols.go ssl/libssl.a > ./symbols.txt +go run ../util/read_symbols.go crypto/libcrypto.a >> ./symbols.txt + +# generates boringssl_prefix_symbols.h +cmake .. -DBORINGSSL_PREFIX=GRPC -DBORINGSSL_PREFIX_SYMBOLS=symbols.txt +make boringssl_prefix_symbols + +[ -f symbol_prefix_include/boringssl_prefix_symbols.h ] || { echo "Failed to build boringssl_prefix_symbols.sh" ; exit 1 ; } + +cd ../../.. +mkdir -p $BORINGSSL_PREFIX_HEADERS_DIR +echo "// generated by generate_boringssl_prefix_header.sh on BoringSSL commit: $BORINGSSL_COMMIT" > $BORINGSSL_PREFIX_HEADERS_DIR/boringssl_prefix_symbols.h +echo "" >> $BORINGSSL_PREFIX_HEADERS_DIR/boringssl_prefix_symbols.h +cat third_party/boringssl/build/symbol_prefix_include/boringssl_prefix_symbols.h >> $BORINGSSL_PREFIX_HEADERS_DIR/boringssl_prefix_symbols.h + +# Regenerated the project +tools/buildgen/generate_projects.sh + +exit 0 diff --git a/tools/distrib/upgrade_boringssl_objc.sh b/tools/distrib/upgrade_boringssl_objc.sh deleted file mode 100755 index c31a2f302d7..00000000000 --- a/tools/distrib/upgrade_boringssl_objc.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -# Copyright 2018 gRPC authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Generate the list of boringssl symbols that need to be shadowed based on the -# current boringssl submodule. Requires local toolchain to build boringssl. - -set -e - -cd "$(dirname $0)" -cd ../../third_party/boringssl - -BORINGSSL_COMMIT=$(git rev-parse HEAD) -BORINGSSL_PREFIX_HEADERS_DIR=src/boringssl - -# Do the following in grpc root directory -cd ../.. - -docker build tools/dockerfile/grpc_objc/generate_boringssl_prefix_header -t grpc/boringssl_prefix_header -mkdir -p $BORINGSSL_PREFIX_HEADERS_DIR -docker run -it --rm -v $(pwd)/$BORINGSSL_PREFIX_HEADERS_DIR:/output grpc/boringssl_prefix_header $BORINGSSL_COMMIT - -# Increase the minor version by 1 -POD_VER=$(cat templates/src/objective-c/BoringSSL-GRPC.podspec.template | grep 'version = ' | perl -pe '($_)=/([0-9]+([.][0-9]+)+)/') -POD_VER_NEW="${POD_VER%.*}.$((${POD_VER##*.}+1))" -sed -i.grpc_back -e "s/version = '$POD_VER'/version = '$POD_VER_NEW'/g" templates/src/objective-c/BoringSSL-GRPC.podspec.template -sed -i.grpc_back -e "s/dependency 'BoringSSL-GRPC', '$POD_VER'/dependency 'BoringSSL-GRPC', '$POD_VER_NEW'/g" templates/gRPC-Core.podspec.template -rm templates/src/objective-c/BoringSSL-GRPC.podspec.template.grpc_back templates/gRPC-Core.podspec.template.grpc_back - -# Regenerated the project -tools/buildgen/generate_projects.sh - -exit 0 diff --git a/tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/Dockerfile b/tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/Dockerfile deleted file mode 100644 index dc5d0c98360..00000000000 --- a/tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/Dockerfile +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2019 gRPC authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -FROM debian:buster - -ENV BORINGSSL_COMMIT=master - -RUN apt-get update && apt-get install -y \ - autoconf \ - cmake \ - curl \ - g++ \ - gcc \ - git \ - gnupg \ - golang \ - perl - -COPY generate_boringssl_prefix_header.sh / - -VOLUME /output - -WORKDIR / - -ENTRYPOINT ["/generate_boringssl_prefix_header.sh"] diff --git a/tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/generate_boringssl_prefix_header.sh b/tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/generate_boringssl_prefix_header.sh deleted file mode 100755 index 4f1a573bbec..00000000000 --- a/tools/dockerfile/grpc_objc/generate_boringssl_prefix_header/generate_boringssl_prefix_header.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/bash -# Copyright 2019 gRPC authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -[ $# == 1 ] || { echo "Usage: generate_boringssl_prefix_header.sh " ; exit 1 ; } - -git clone -n https://github.com/google/boringssl.git -cd boringssl -git checkout $1 || { echo "Unable to checkout the commit $1" ; exit 1 ; } -mkdir build -cd build -cmake .. - -# gcc crashes on docker when using -j with too many cores. Limiting to 4 seems to be fine. -make -j4 - -[ -f ssl/libssl.a ] || { echo "Failed to build libssl.a" ; exit 1 ; } -[ -f crypto/libcrypto.a ] || { echo "Failed to build libcrypto.a" ; exit 1 ; } - -go run ../util/read_symbols.go ssl/libssl.a > ./symbols.txt -go run ../util/read_symbols.go crypto/libcrypto.a >> ./symbols.txt - -cmake .. -DBORINGSSL_PREFIX=GRPC -DBORINGSSL_PREFIX_SYMBOLS=symbols.txt -make boringssl_prefix_symbols - -[ -f symbol_prefix_include/boringssl_prefix_symbols.h ] || { echo "Failed to build boringssl_prefix_symbols.sh" ; exit 1 ; } - -gzip -c symbol_prefix_include/boringssl_prefix_symbols.h | base64 > /output/boringssl_prefix_symbols.h.gz.b64 - -exit 0 diff --git a/tools/dockerfile/test/sanity/Dockerfile b/tools/dockerfile/test/sanity/Dockerfile index e51412fc785..aa03520f8a4 100644 --- a/tools/dockerfile/test/sanity/Dockerfile +++ b/tools/dockerfile/test/sanity/Dockerfile @@ -21,7 +21,6 @@ RUN apt-get update && apt-get install -y \ build-essential \ bzip2 \ ccache \ - cmake \ curl \ dnsutils \ gcc \