-
Notifications
You must be signed in to change notification settings - Fork 152
/
deploy.sh
executable file
·82 lines (64 loc) · 1.85 KB
/
deploy.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
71
72
73
74
75
76
77
78
79
80
81
82
#!/bin/bash
set -e
### CloudFoundry CLI utilities
CLOUD_DOMAIN=${DOMAIN:-run.pivotal.io}
CLOUD_TARGET=api.${DOMAIN}
function login(){
cf api | grep ${CLOUD_TARGET} || cf api ${CLOUD_TARGET} --skip-ssl-validation
cf apps | grep OK || cf login
}
function app_domain(){
D=`cf apps | grep $1 | tr -s ' ' | cut -d' ' -f 6 | cut -d, -f1`
echo $D
}
function deploy_service(){
N=$1
D=`app_domain $N`
JSON='{"uri":"http://'$D'"}'
cf create-user-provided-service $N -p $JSON
}
### installation
cd `dirname $0`
r=`pwd`
echo $r
## Reset
cf d -f pwa-beer-catalog-service
cf d -f pwa-client
cf d -f pwa-eureka-service
cf d -f pwa-edge-service
cf ds -f pwa-eureka-service
cf a
cf s
# build all the java apps
cd $r && find . -iname pom.xml | xargs -I pom mvn -DskipTests clean install -f pom
# Eureka
cd $r/eureka-service
cf push -p target/*jar pwa-eureka-service --random-route
deploy_service pwa-eureka-service
# Beer Service
cd $r/beer-catalog-service
cf push -p target/*jar pwa-beer-catalog-service --no-start --random-route
cf bs pwa-beer-catalog-service pwa-eureka-service
cf start pwa-beer-catalog-service
# Edge Service
cd $r/edge-service
cf push -p target/*jar pwa-edge-service --no-start -n pwa-edge-service
cf bs pwa-edge-service pwa-eureka-service
cf start pwa-edge-service
# Get the URL for the server
serverUri=https://`app_domain pwa-edge-service`
# Client
cd $r/client
rm -rf dist
sed -i -e "s|http://localhost:8081|$serverUri|g" $r/client/src/app/shared/beer/beer.service.ts
npm install && ng build -prod --aot
cd dist
touch Staticfile
cf push pwa-client --no-start --random-route
cf set-env pwa-client FORCE_HTTPS true
cf start pwa-client
# cleanup changed files
sed -i -e "s|$serverUri|http://localhost:8081|g" $r/client/src/app/shared/beer/beer.service.ts
rm $r/client/src/app/shared/beer/beer.service.ts-e
# show apps and URLs
cf apps