1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #!/bin/bash
- # Warning: this script has only been tested on macOS Sierra. There's a good chance
- # it won't work on other operating systems. If you get it working on another OS,
- # please send a pull request with any changes required. Thanks!
- 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 ionic-server
-
- cf a
-
- # Deploy the server
- cd $r/server
- mvn clean package
- cf push -p target/*jar ionic-server --no-start --random-route
- cf set-env ionic-server FORCE_HTTPS true
- cf start ionic-server
-
- # Get the URL for the server
- serverUri=https://`app_domain ionic-server`
-
- # Deploy the client
- cd $r/ionic-beer
- npm run clean
- # replace the server URL in the client
- sed -i -e "s|http://localhost:8080|$serverUri|g" src/providers/beer-service.ts
- npm install
-
- # build ios
- ionic cordova build ios --prod
- # Run on ios
- ionic cordova run ios
-
- # If the above command fails with the following error:
- # xcrun: error: unable to find utility "PackageApplication", not a developer tool or in PATH
- # See http://stackoverflow.com/a/43363820
-
- # cleanup changed files
- sed -i -e "s|$serverUri|http://localhost:8080|g" src/providers/beer-service.ts
- rm $r/ionic-beer/src/providers/beer-service.ts-e
|