1 #!/bin/bash 2 # Copyright 2015 gRPC authors. 3 # 4 # Licensed under the Apache License, Version 2.0 (the "License"); 5 # you may not use this file except in compliance with the License. 6 # You may obtain a copy of the License at 7 # 8 # http://www.apache.org/licenses/LICENSE-2.0 9 # 10 # Unless required by applicable law or agreed to in writing, software 11 # distributed under the License is distributed on an "AS IS" BASIS, 12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 # See the License for the specific language governing permissions and 14 # limitations under the License. 15 # 16 # Builds Node interop server and client in a base image. 17 set -e 18 19 mkdir -p /var/local/git 20 git clone /var/local/jenkins/grpc-node /var/local/git/grpc-node 21 # clone gRPC submodules, use data from locally cloned submodules where possible 22 (cd /var/local/jenkins/grpc-node/ && git submodule foreach 'cd /var/local/git/grpc-node \ 23 && git submodule update --init --recursive --reference /var/local/jenkins/grpc-node/${name} \ 24 ${name}') 25 26 # copy service account keys if available 27 cp -r /var/local/jenkins/service_account $HOME || true 28 29 cd /var/local/git/grpc-node 30 31 # build Node interop client & server 32 npm install -g gulp 33 npm install 34 gulp js.core.install 35 gulp protobuf.install 36 gulp internal.test.install 37