forked from project-arlo/sonic-mgmt-framework
-
Notifications
You must be signed in to change notification settings - Fork 0
/
go_server.sh
executable file
·71 lines (58 loc) · 2.52 KB
/
go_server.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/usr/bin/env bash
################################################################################
# #
# Copyright 2019 Broadcom. The term Broadcom refers to Broadcom Inc. and/or #
# its subsidiaries. #
# #
# 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. #
# #
################################################################################
set -e
TOPDIR=$PWD
SERVER_DIR=$TOPDIR/build/rest_server
CVLDIR=$TOPDIR/src/cvl
# LD_LIBRARY_PATH for CVL
[ -z $LD_LIBRARY_PATH ] && export LD_LIBRARY_PATH=/usr/local/lib
# Setup CVL schema directory
if [ -z $CVL_SCHEMA_PATH ]; then
export CVL_SCHEMA_PATH=$CVLDIR/schema
fi
echo "CVL schema directory is $CVL_SCHEMA_PATH"
if [ $(find $CVL_SCHEMA_PATH -name *.yin | wc -l) == 0 ]; then
echo "WARNING: no yin files at $CVL_SCHEMA_PATH"
echo ""
fi
EXTRA_ARGS="-ui $SERVER_DIR/dist/ui -logtostderr"
HAS_CRTFILE=
HAS_KEYFILE=
for V in $@; do
case $V in
-cert|--cert|-cert=*|--cert=*) HAS_CRTFILE=1;;
-key|--key|-key=*|--key=*) HAS_KEYFILE=1;;
esac
done
cd $SERVER_DIR
##
# Setup TLS server cert/key pair
if [ -z $HAS_CRTFILE ] && [ -z $HAS_KEYFILE ]; then
if [ -f cert.pem ] && [ -f key.pem ]; then
echo "Reusing existing cert.pem and key.pem ..."
else
echo "Generating temporary server certificate ..."
./generate_cert --host localhost
fi
EXTRA_ARGS+=" -cert cert.pem -key key.pem"
fi
##
# Start server
./main $EXTRA_ARGS $*