1+ #! /usr/bin/env bash
2+ # Define script variables
3+ WORKSPACE=$1
4+ DEPLOY_DIR=$2
5+ SERVICE=$3
6+ APINAME=$3 # ap-review
7+ CONFIG=$4
8+ ENV=$4
9+
10+
11+ REPO=" ${SERVICE} -microservice"
12+ TAG=" ${REPO} :${CONFIG} .${VER} "
13+ IMAGE=" ${REGISTRY} /${TAG} "
14+
15+
16+ DOCKER_REPO=appiriodevops
17+ VER=` date " +%Y%m%d%H%M" `
18+ IMAGE=" $SERVICE -microservice:$ENV .$VER "
19+
20+ DOCKERRUN_TEMPLATE=$DEPLOY_DIR /Dockerrun.aws.json.template
21+ DOCKERRUN=$DEPLOY_DIR /Dockerrun.aws.json
22+ AWS_S3_BUCKET=appirio-platform-dev
23+ AWS_PROFILE=" tc-$ENV "
24+ AWS_S3_KEY=" services/docker/$IMAGE "
25+ ENV_JAVA_PARAMS=" "
26+ ENV_CONFIG=` echo " $ENV " | tr ' [:lower:]' ' [:upper:]' `
27+
28+ AWS_REGION=$( eval " echo \$ ${ENV_CONFIG} _AWS_REGION" )
29+ AWS_ACCESS_KEY_ID=$( eval " echo \$ ${ENV_CONFIG} _AWS_ACCESS_KEY_ID" )
30+ AWS_SECRET_ACCESS_KEY=$( eval " echo \$ ${ENV_CONFIG} _AWS_SECRET_ACCESS_KEY" )
31+
32+ configure_aws_cli () {
33+ aws --version
34+ aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
35+ aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
36+ aws configure set default.region $AWS_REGION
37+ aws configure set default.output json
38+ echo " Configured AWS CLI."
39+ }
40+
41+ configure_aws_cli
42+
43+ # Elastic Beanstalk Application name
44+ # dev
45+ APPNAME=" Development"
46+ if [ " $ENV " = " qa" ]; then
47+ APPNAME=" QA"
48+ fi
49+ if [ " $ENV " = " prod" ]; then
50+ APPNAME=" Production"
51+ AWS_S3_BUCKET=appirio-platform-prod
52+ ENV_JAVA_PARAMS=' -Xmx3g -Dnewrelic.environment=production -javaagent:$NEWRELIC_JAR'
53+ fi
54+
55+ cd $DEPLOY_DIR
56+
57+ echo " Generating Dockerfile"
58+ cat Dockerfile.template | sed -e " s/@ENV_JAVA_PARAMS@/$ENV_JAVA_PARAMS /g" > Dockerfile
59+
60+ echo " Generate sumo config files"
61+ cat sumo.conf.template | sed -e " s/@env@/${ENV} /g" > sumo.conf
62+ cat sumo-sources.json.template | sed -e " s/@env@/${ENV} /g" > sumo-sources.json
63+
64+ echo " Copying deployment files to build folder"
65+ cp $WORKSPACE /service/target/review-microservice* .jar review-microservice.jar
66+ cp $WORKSPACE /service/src/main/resources/review-service.yaml review-service.yaml
67+
68+ echo " Generating Docker aws json......."
69+ PLATFORM_BUCKET=appirio-platform-$CONFIG
70+ EBDOCKER_FILENAME=${APINAME} -${CONFIG} .${VER} .aws.json
71+ cat $WORKSPACE /service/build/Dockerrun.aws.json.template | sed -e " s/@IMAGE@/${IMAGE} /g" > ./$EBDOCKER_FILENAME
72+ cat ./$EBDOCKER_FILENAME
73+
74+ echo " copying beanstalk docker file..."
75+ aws s3 cp $EBDOCKER_FILENAME s3://$PLATFORM_BUCKET /services/elasticbeanstalk/
76+
77+ echo " copying dockercfg......"
78+ aws s3 cp " s3://appirio-platform-$ENV /services/common/dockercfg" ~ /.dockercfg
79+
80+ echo " Building docker image $DOCKER_REPO /$IMAGE "
81+ docker build -t $DOCKER_REPO /$IMAGE $DEPLOY_DIR
82+
83+ VER1=" $ENV .$VER "
84+ echo export TAGNAME=" $VER1 " >> " $BASH_ENV "
0 commit comments