Advertisement
Guest User

Untitled

a guest
Dec 8th, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Variables
  4. PROJECT_NAME="${PROJECT_NAME:=${CIRCLE_PROJECT_REPONAME}}"
  5.  
  6. ARTIFACT_NAME="${PROJECT_NAME}-${CIRCLE_TAG:=${CIRCLE_BRANCH}@${CIRCLE_SHA1}}"
  7. ARTIFACT_PATH="${CIRCLE_ARTIFACTS}/${ARTIFACT_NAME}.zip"
  8. ARTIFACT_DESCRIPTION=$(git log --format=oneline -n 1 "${CIRCLE_SHA1}")
  9.  
  10. AWS_S3_BUCKET=${AWS_S3_BUCKET:=${PROJECT_NAME}-eb}
  11. AWS_EB_ENVIRONMENT=(${1:?'Please select an environment!'})
  12.  
  13. # Create artefact
  14. zip -x .git\* -x node_modules\* -x vendor\* -r "${ARTIFACT_PATH}" .
  15.  
  16. # Push artefact to s3
  17. aws s3 cp "${ARTIFACT_PATH}" "s3://${AWS_S3_BUCKET}/versions/${ARTIFACT_NAME}.zip"
  18.  
  19. # Push to eb
  20. aws elasticbeanstalk create-application-version \
  21. --application-name "${PROJECT_NAME}" \
  22. --description "${ARTIFACT_DESCRIPTION}" \
  23. --source-bundle "S3Bucket=${AWS_S3_BUCKET},S3Key=versions/${ARTIFACT_NAME}.zip" \
  24. --version-label "${ARTIFACT_NAME}"
  25.  
  26. aws elasticbeanstalk update-environment \
  27. --application-name "${PROJECT_NAME}" \
  28. --environment-name "${AWS_EB_ENVIRONMENT}" \
  29. --version-label "${ARTIFACT_NAME}"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement