From 9eaad2bc03bd42e9f4dad545c8f1909c52195c1f Mon Sep 17 00:00:00 2001 From: Gunasekar-K Date: Fri, 12 Apr 2019 11:21:27 +0530 Subject: [PATCH 1/5] MS integration --- .circleci/config.yml | 14 +++++--- service/build/buildimage.sh | 64 ++++++++----------------------------- 2 files changed, 23 insertions(+), 55 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index a97f453..7dbb7ff 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -42,14 +42,18 @@ build_steps: &build_steps path: ~/junit - store_artifacts: path: ~/junit - - run: docker --version - run: name: Deploy to AWS command: | ./awsconfiguration.sh $DEPLOY_ENV source awsenvconf - chmod +x /home/circleci/project/service/build/deploy.sh - /home/circleci/project/service/build/deploy.sh /home/circleci/project /home/circleci/project/service/build ap-review $DEPLOY_APP_ENV + ./service/build/buildimage.sh $DEPLOY_ENV + - deploy: + name: Deploy to AWS + command: | + echo "deploy" + #chmod +x /home/circleci/project/service/build/deploy.sh + #/home/circleci/project/service/build/deploy.sh /home/circleci/project /home/circleci/project/service/build ap-review $DEPLOY_APP_ENV jobs: "build-dev": @@ -74,7 +78,9 @@ workflows: context : org-global filters: branches: - only: dev + only: + - dev + - dev-msinteg - "build-prod": context : org-global filters: diff --git a/service/build/buildimage.sh b/service/build/buildimage.sh index 194dbb6..d8f1cd6 100755 --- a/service/build/buildimage.sh +++ b/service/build/buildimage.sh @@ -1,54 +1,27 @@ #!/usr/bin/env bash # Define script variables -WORKSPACE=$1 -DEPLOY_DIR=$2 -SERVICE=$3 -APINAME=$3 #ap-review -CONFIG=$4 -ENV=$4 - +#WORKSPACE=$1 #CIRCLE_WORKING_DIRECTORY +#DEPLOY_DIR=$2 +#SERVICE=$3 +#APINAME=$3 #ap-review +CONFIG=$1 +ENV=$1 +WORKSPACE=$CIRCLE_WORKING_DIRECTORY +DEPLOY_DIR=$WORKSPACE/service/build +SERVICE=ap-review +APINAME=ap-review REPO="${SERVICE}-microservice" -TAG="${REPO}:${CONFIG}.${VER}" -IMAGE="${REGISTRY}/${TAG}" - - DOCKER_REPO=appiriodevops -VER=`date "+%Y%m%d%H%M"` +#VER=`date "+%Y%m%d%H%M"` +VER=$CIRCLE_BUILD_NUM IMAGE="$SERVICE-microservice:$ENV.$VER" - -DOCKERRUN_TEMPLATE=$DEPLOY_DIR/Dockerrun.aws.json.template -DOCKERRUN=$DEPLOY_DIR/Dockerrun.aws.json -AWS_S3_BUCKET=appirio-platform-dev -AWS_PROFILE="tc-$ENV" -AWS_S3_KEY="services/docker/$IMAGE" ENV_JAVA_PARAMS=" " ENV_CONFIG=`echo "$ENV" | tr '[:lower:]' '[:upper:]'` - -AWS_REGION=$(eval "echo \$${ENV_CONFIG}_AWS_REGION") -AWS_ACCESS_KEY_ID=$(eval "echo \$${ENV_CONFIG}_AWS_ACCESS_KEY_ID") -AWS_SECRET_ACCESS_KEY=$(eval "echo \$${ENV_CONFIG}_AWS_SECRET_ACCESS_KEY") - -configure_aws_cli() { - aws --version - aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID - aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY - aws configure set default.region $AWS_REGION - aws configure set default.output json - echo "Configured AWS CLI." -} - -configure_aws_cli - +ENV=$ENV_CONFIG # Elastic Beanstalk Application name # dev -APPNAME="Development" -if [ "$ENV" = "qa" ]; then - APPNAME="QA" -fi if [ "$ENV" = "prod" ]; then - APPNAME="Production" - AWS_S3_BUCKET=appirio-platform-prod ENV_JAVA_PARAMS='-Xmx3g -Dnewrelic.environment=production -javaagent:$NEWRELIC_JAR' fi @@ -65,20 +38,9 @@ echo "Copying deployment files to build folder" cp $WORKSPACE/service/target/review-microservice*.jar review-microservice.jar cp $WORKSPACE/service/src/main/resources/review-service.yaml review-service.yaml -echo "Generating Docker aws json......." - PLATFORM_BUCKET=appirio-platform-$CONFIG - EBDOCKER_FILENAME=${APINAME}-${CONFIG}.${VER}.aws.json - cat $WORKSPACE/service/build/Dockerrun.aws.json.template | sed -e "s/@IMAGE@/${IMAGE}/g" > ./$EBDOCKER_FILENAME - cat ./$EBDOCKER_FILENAME - -echo "copying beanstalk docker file..." -aws s3 cp $EBDOCKER_FILENAME s3://$PLATFORM_BUCKET/services/elasticbeanstalk/ - echo "copying dockercfg......" aws s3 cp "s3://appirio-platform-$ENV/services/common/dockercfg" ~/.dockercfg echo "Building docker image $DOCKER_REPO/$IMAGE" docker build -t $DOCKER_REPO/$IMAGE $DEPLOY_DIR -VER1="$ENV.$VER" -echo export TAGNAME="$VER1" >> "$BASH_ENV" \ No newline at end of file From 196d6fca792b3bf6db0620e35d514a0daec8179e Mon Sep 17 00:00:00 2001 From: Gunasekar-K Date: Fri, 12 Apr 2019 11:28:17 +0530 Subject: [PATCH 2/5] MS integration --- service/build/buildimage.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/service/build/buildimage.sh b/service/build/buildimage.sh index d8f1cd6..defd237 100755 --- a/service/build/buildimage.sh +++ b/service/build/buildimage.sh @@ -26,6 +26,7 @@ if [ "$ENV" = "prod" ]; then fi cd $DEPLOY_DIR +pwd echo "Generating Dockerfile" cat Dockerfile.template | sed -e "s/@ENV_JAVA_PARAMS@/$ENV_JAVA_PARAMS/g" > Dockerfile From fb39e42089a969e49124fe4135c5fb9d9edc5792 Mon Sep 17 00:00:00 2001 From: Gunasekar-K Date: Fri, 12 Apr 2019 11:37:07 +0530 Subject: [PATCH 3/5] MS integration --- service/build/buildimage.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/service/build/buildimage.sh b/service/build/buildimage.sh index defd237..4e0c6f8 100755 --- a/service/build/buildimage.sh +++ b/service/build/buildimage.sh @@ -24,7 +24,7 @@ ENV=$ENV_CONFIG if [ "$ENV" = "prod" ]; then ENV_JAVA_PARAMS='-Xmx3g -Dnewrelic.environment=production -javaagent:$NEWRELIC_JAR' fi - +echo "deploy dir $DEPLOY_DIR" cd $DEPLOY_DIR pwd From 4fc6b59fc31925f28af3a6d9fc84b80aaeddb5a4 Mon Sep 17 00:00:00 2001 From: Gunasekar-K Date: Fri, 12 Apr 2019 12:13:35 +0530 Subject: [PATCH 4/5] MS integration --- service/build/buildimage.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/service/build/buildimage.sh b/service/build/buildimage.sh index 4e0c6f8..24c5c74 100755 --- a/service/build/buildimage.sh +++ b/service/build/buildimage.sh @@ -6,7 +6,7 @@ #APINAME=$3 #ap-review CONFIG=$1 ENV=$1 -WORKSPACE=$CIRCLE_WORKING_DIRECTORY +WORKSPACE=$(eval echo $CIRCLE_WORKING_DIRECTORY) DEPLOY_DIR=$WORKSPACE/service/build SERVICE=ap-review APINAME=ap-review @@ -17,7 +17,7 @@ DOCKER_REPO=appiriodevops VER=$CIRCLE_BUILD_NUM IMAGE="$SERVICE-microservice:$ENV.$VER" ENV_JAVA_PARAMS=" " -ENV_CONFIG=`echo "$ENV" | tr '[:lower:]' '[:upper:]'` +ENV_CONFIG=`echo "$ENV" | tr '[:upper:]' '[:lower:]'` ENV=$ENV_CONFIG # Elastic Beanstalk Application name # dev From f793f4ada1f4790b0c6a3ab91b155173032d6f41 Mon Sep 17 00:00:00 2001 From: Gunasekar-K Date: Fri, 12 Apr 2019 14:32:04 +0530 Subject: [PATCH 5/5] STS integration --- .circleci/config.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 7dbb7ff..7ead8d8 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -54,6 +54,10 @@ build_steps: &build_steps echo "deploy" #chmod +x /home/circleci/project/service/build/deploy.sh #/home/circleci/project/service/build/deploy.sh /home/circleci/project /home/circleci/project/service/build ap-review $DEPLOY_APP_ENV + source awsenvconf + ./buildenv.sh -e $DEPLOY_ENV -b ${DEPLOY_ENV}-ap-review-microservice-deployvar + source buildenvvar + ./master_deploy.sh -d EBS -e $DEPLOY_ENV -t "${DEPLOY_ENV}.${CIRCLE_BUILD_NUM}" jobs: "build-dev":