#Bitbucket-Pipeline-mobile-web-react image: name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/mobile-web-react:latest aws: access-key: $AWS_ACCESS_KEY_ID secret-key: $AWS_SECRET_ACCESS_KEY clone: depth: full definitions: caches: sonar: ~/.sonar/cache # services: # docker: # memory: 3072 steps: - step: &sonarcloud size: 2x name: Build & Test project against sonarcloud caches: - sonar image: node:12.13.0 script: - npm install --quiet - pipe: sonarsource/sonarcloud-scan:1.4.0 - pipe: sonarsource/sonarcloud-quality-gate:0.1.6 variables: SONAR_TOKEN: ${SONAR_TOKEN} # - step: &deployment-step # name: MG-Deployment # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # caches: # - docker # script: # - touch .env # - if [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "development" ]; then printf $ENV_DEV > .env; elif [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "alpha" ]; then printf $ENV_ALPHA > .env; elif [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "preprod" ]; then printf $ENV_PRE_PROD > .env; else echo "Please specify correct environment (development, alpha, preprod)"; fi # #ECR_PIPE # - printf "$ECR_PIPE" >> pipe.sh # - chmod 755 pipe.sh # - ./pipe.sh # - step: &shop-deployment-step # name: POPxo-Deployment # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # caches: # - docker # script: # - touch .env # - if [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "shopdevelopment" ]; then printf $SHOP_ENV_ALPHA > .env; elif [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "shopalpha" ]; then printf $SHOP_ENV_ALPHA > .env; else echo "Please specify correct environment (shopdevelopment, shopalpha)"; fi # #ECR_PIPE # - printf "$SHOP_PIPE" >> pipe.sh # - chmod 755 pipe.sh # - ./pipe.sh # - step: &shop-babychakra-deployment-step # name: Babychakra-Deployment # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # caches: # - docker # script: # - touch .env # - if [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "babychakrashopdevelopment" ]; then printf $BABYCHAKRA_SHOP_ENV_ALPHA > .env; elif [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "babychakrashopalpha" ]; then printf $BABYCHAKRA_SHOP_ENV_ALPHA > .env; else echo "Please specify correct environment (babychakrashopdevelopment, babychakrashopalpha)"; fi # #ECR_PIPE # - printf "$BABYCHAKRA_SHOP_PIPE" >> pipe.sh # - chmod 755 pipe.sh # - ./pipe.sh # - step: &shop-stbotanica-deployment-step # name: Stbotanica-Deployment # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # caches: # - docker # script: # - touch .env # - if [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "stbotanicashopdevelopment" ]; then printf $STBOTANICA_SHOP_ENV_ALPHA > .env; elif [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "stbotanicashopalpha" ]; then printf $STBOTANICA_SHOP_ENV_ALPHA > .env; else echo "Please specify correct environment (stbotanicashopdevelopment, stbotanicashopalpha)"; fi # #ECR_PIPE # - printf "$STBOTANICA_SHOP_PIPE" >> pipe.sh # - chmod 755 pipe.sh # - ./pipe.sh # - step: &shop-themomsco-deployment-step # name: TheMomsCo-Deployment # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # caches: # - docker # script: # - touch .env # - if [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "themomscoshopdevelopment" ]; then printf $THEMOMSCO_SHOP_ENV_ALPHA > .env; elif [ $BITBUCKET_DEPLOYMENT_ENVIRONMENT == "themomscoshopalpha" ]; then printf $THEMOMSCO_SHOP_ENV_ALPHA > .env; else echo "Please specify correct environment (themomscoshopdevelopment, themomscoshopalpha)"; fi # #ECR_PIPE # - printf "$THEMOMSCO_SHOP_PIPE" >> pipe.sh # - chmod 755 pipe.sh # - ./pipe.sh pipelines: default: - step: script: - echo "This script runs on all branches that don't have any specific pipeline assigned in 'branches'." #- step: *sonarcloud branches: sonar-poc: - step: *sonarcloud size: 2x # dev: # - step: *sonarcloud # - step: # <<: *deployment-step # deployment: Development # staging: # #- step: *sonarcloud # - parallel: # - step: # <<: *deployment-step # deployment: Alpha # - step: # <<: *shop-deployment-step # deployment: ShopAlpha # - step: # <<: *shop-babychakra-deployment-step # deployment: BabychakraShopAlpha # - step: # <<: *shop-stbotanica-deployment-step # deployment: StbotanicaShopAlpha # - step: # <<: *shop-themomsco-deployment-step # deployment: ThemomscoShopAlpha # preprod: # #- step: *sonarcloud # - step: # <<: *deployment-step # deployment: PreProd # feature/momsco: # - step: # name: This step runs on themomsco preprod branch # script: # - echo "This script runs on feature/momsco branch'." # - step: # name: Deploy to TheMomsCo Shop PreProd # trigger: manual # deployment: ThemomscoShopProduction # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # script: # - touch .env # - printf $THEMOMSCO_SHOP_ENV_PROD > .env # - printf "$THEMOMSCO_SHOP_PROD_PIPE" >> themomscoshopprodpipe.sh # - chmod 755 themomscoshopprodpipe.sh # - ./themomscoshopprodpipe.sh # - pipe: atlassian/aws-ecs-deploy:1.1.4 # variables: # AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID # AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY # AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION # CLUSTER_NAME: $CLUSTER_NAME # SERVICE_NAME: $THEMOMSCO_SHOP_SERVICE_NAME # TASK_DEFINITION: "task.json" # master: # - step: # name: This step runs on master branch # script: # - echo "This script runs on master branch'." # #- step: # # name: Pre-Deployment Lighthouse Analysis # # image: # # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/lighthouse_ci:node14 # # aws: # # access-key: $AWS_ACCESS_KEY_ID # # secret-key: $AWS_SECRET_ACCESS_KEY # # script: # # - npm install -g lighthouse-ci # # - lighthouse-ci --throttling-method "devtools" https://m.myglamm.com/ > pre.txt # # - lighthouse-ci --throttling-method "devtools" https://m.myglamm.com/product/manish-malhotra-hi-shine-lipstick-vintage-wine.html > mmpre.txt # # artifacts: # # - "pre.txt" # # - "mmpre.txt" # - step: # name: Deploy to MG Production # trigger: manual # deployment: Production # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # script: # # - text="$SLACK_TEMPLATE_PRE $( .env # - printf "$ECR_PROD_PIPE" >> prodpipe.sh # - chmod 755 prodpipe.sh # - ./prodpipe.sh # - pipe: atlassian/aws-ecs-deploy:1.1.4 # variables: # AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID # AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY # AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION # CLUSTER_NAME: $CLUSTER_NAME # SERVICE_NAME: $SERVICE_NAME # TASK_DEFINITION: "task.json" # #- step: # # name: Synthetic Testing # # image: node # # script: # # - npm install -g @datadog/datadog-ci # # - export NEW_ID=$(cat /dev/urandom | tr -dc 'a-z' | fold -w 32 | head -n 1) # # - echo $DatadogSynthetic > synthetics.json # # - sed -i "s/NEWID/$NEW_ID/g" synthetics.json # # - sed -i "s/PUBLIC_ID/$SYNTHETICS_PUBLIC_ID_MOBILE/g" synthetics.json # # - echo $DatadogConfig > datadog-ci.json # # - sed -i "s/NEWID/$NEW_ID/g" datadog-ci.json # # - sed -i "s/DD_API_KEY/$DD_API_KEY/g" datadog-ci.json # # - sed -i "s/DD_APP_KEY/$DD_APP_KEY/g" datadog-ci.json # # - datadog-ci synthetics run-tests --config datadog-ci.json # - parallel: # - step: # name: Deploy to Shop Production # deployment: ShopProduction # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # script: # - touch .env # - printf $SHOP_ENV_PROD > .env # - printf "$SHOP_PROD_PIPE" >> shopprodpipe.sh # - chmod 755 shopprodpipe.sh # - ./shopprodpipe.sh # - pipe: atlassian/aws-ecs-deploy:1.1.4 # variables: # AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID # AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY # AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION # CLUSTER_NAME: $CLUSTER_NAME # SERVICE_NAME: $SHOP_SERVICE_NAME # TASK_DEFINITION: "task.json" # - step: # name: Deploy to Stbotanica Shop Production # deployment: StbotanicaShopProduction # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # script: # - touch .env # - printf $STBOTANICA_SHOP_ENV_PROD > .env # - printf "$STBOTANICA_SHOP_PROD_PIPE" >> stbotanicashopprodpipe.sh # - chmod 755 stbotanicashopprodpipe.sh # - ./stbotanicashopprodpipe.sh # - pipe: atlassian/aws-ecs-deploy:1.1.4 # variables: # AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID # AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY # AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION # CLUSTER_NAME: $CLUSTER_NAME # SERVICE_NAME: $STBOTANICA_SHOP_SERVICE_NAME # TASK_DEFINITION: "task.json" # - step: # name: Deploy to Babychakra Shop Production # deployment: BabychakraShopProduction # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # script: # - touch .env # - printf $BABYCHAKRA_SHOP_ENV_PROD > .env # - printf "$BABYCHAKRA_SHOP_PROD_PIPE" >> babychakrashopprodpipe.sh # - chmod 755 babychakrashopprodpipe.sh # - ./babychakrashopprodpipe.sh # - pipe: atlassian/aws-ecs-deploy:1.1.4 # variables: # AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID # AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY # AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION # CLUSTER_NAME: $CLUSTER_NAME # SERVICE_NAME: $BABYCHAKRA_SHOP_SERVICE_NAME # TASK_DEFINITION: "task.json" # - step: # name: Deploy to TheMomsCo Shop Production # deployment: ThemomscoShopProduction # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/ecr-pipe:latest # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # services: # - docker # script: # - touch .env # - printf $THEMOMSCO_SHOP_ENV_PROD > .env # - printf "$THEMOMSCO_SHOP_PROD_PIPE" >> themomscoshopprodpipe.sh # - chmod 755 themomscoshopprodpipe.sh # - ./themomscoshopprodpipe.sh # - pipe: atlassian/aws-ecs-deploy:1.1.4 # variables: # AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID # AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY # AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION # CLUSTER_NAME: $CLUSTER_NAME # SERVICE_NAME: $THEMOMSCO_SHOP_SERVICE_NAME # TASK_DEFINITION: "task.json" #- step: # name: Post-Deployment Lighthouse Analysis # image: # name: 616035352558.dkr.ecr.ap-south-1.amazonaws.com/lighthouse_ci:node14 # aws: # access-key: $AWS_ACCESS_KEY_ID # secret-key: $AWS_SECRET_ACCESS_KEY # script: # - npm install -g lighthouse-ci # - lighthouse-ci --throttling-method "devtools" https://m.myglamm.com/ > post.txt # - text="$SLACK_TEMPLATE_POST $( mmpost.txt # - mmtext="$SLACK_TEMPLATE_MM_POST $(