Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2018
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.03 KB | None | 0 0
  1. version: 2
  2. jobs:
  3. build:
  4. working_directory: ~/wager-service
  5. docker:
  6. - image: circleci/python:3.6.1
  7. environment:
  8. ECR_IMAGE_NAME: 552100158756.dkr.ecr.us-east-1.amazonaws.com/clive/applications/wager-service
  9. steps:
  10. - checkout
  11. - setup_remote_docker:
  12. version: 17.05.0-ce
  13. reusable: true
  14. exclusive: false
  15. - run:
  16. name: Install aws cli
  17. command: sudo pip install awscli
  18. - run:
  19. name: Install ansible and decrypt ssh-key and secrets
  20. command: |
  21. sudo pip install ansible
  22. echo $ANSIBLE_VAULT_PASSWORD >> vault-pass.txt
  23. ansible-vault decrypt --vault-password-file=vault-pass.txt external/keys/id_rsa.wager
  24. ansible-vault decrypt --vault-password-file=vault-pass.txt wager/secrets.py
  25. - run:
  26. name: docker-login
  27. command: eval `aws ecr get-login --no-include-email`
  28. - restore_cache:
  29. key: v1-{ checksum "wager/" }
  30. - run:
  31. name: Build the docker image
  32. command: |
  33. docker build -t ${ECR_IMAGE_NAME}:$(git describe --always) .
  34. - save_cache:
  35. key: v1-{ checksum "wager/" }
  36. paths:
  37. - /home/circleci/cached
  38. - run:
  39. name: Run tests
  40. command: |
  41. docker run --rm -it ${ECR_IMAGE_NAME}:$(git describe --always) pytest -n 2 -v --cov-config .coveragerc --cov=wager
  42. - run:
  43. name: Run linter
  44. command: |
  45. docker run --rm -it ${ECR_IMAGE_NAME}:$(git describe --always) flake8 wager
  46. - deploy:
  47. name: Push docker image
  48. command: |
  49. APPNAME=wager-service
  50. DOCKER_BRANCH=${CIRCLE_BRANCH//\//-}
  51.  
  52. docker tag ${ECR_IMAGE_NAME}:$(git describe --always) ${ECR_IMAGE_NAME}:${DOCKER_BRANCH}
  53.  
  54. ./circle_retry docker push ${ECR_IMAGE_NAME}:$(git describe --always)
  55. ./circle_retry docker push ${ECR_IMAGE_NAME}:${DOCKER_BRANCH}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement