Advertisement
Guest User

.gitlab-ci.yml

a guest
Mar 29th, 2020
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. stages:
  2. - build
  3. - deploy
  4.  
  5. variables:
  6. DOCKER_IMAGE_NAME: ocr-gateway-landing
  7. DOCKER_IMAGE_TAG: "${CI_COMMIT_SHA}"
  8.  
  9. build:
  10. stage: build
  11. image: docker:latest
  12. services:
  13. - docker:dind
  14. variables:
  15. DOCKER_HOST: tcp://docker:2375/
  16. DOCKER_DRIVER: overlay2
  17. DOCKER_TLS_CERTDIR: ""
  18. before_script:
  19. - docker login -u _json_key --password-stdin https://gcr.io < $GCP_CI_SERVICE_ACCOUNT_KEY
  20. script:
  21. - docker build -t gcr.io/${GCP_PROJECT}/${DOCKER_IMAGE_NAME}:${DOCKER_IMAGE_TAG} .
  22. - docker push gcr.io/${GCP_PROJECT}/${DOCKER_IMAGE_NAME}:${DOCKER_IMAGE_TAG}
  23.  
  24. deploy_staging:
  25. stage: deploy
  26. image: claranet/gcloud-kubectl-docker:latest
  27. variables:
  28. ENVIRONMENT: staging
  29. APP_REDIRECT_URL: 'https://ocrf.ocrgateway.com'
  30. before_script:
  31. - gcloud auth activate-service-account --key-file=$GCP_CI_SERVICE_ACCOUNT_KEY
  32. - gcloud container clusters get-credentials ${GKE_CLUSTER_NAME} --zone ${GKE_CLUSTER_ZONE} --project ${GCP_PROJECT}
  33. script:
  34. - cat ocr-gateway-landing-deployment.yml | envsubst | kubectl apply -f -
  35. environment:
  36. name: staging
  37. url: https://ocrl.ocrgateway.com
  38. only:
  39. - dev
  40.  
  41. deploy_prod:
  42. stage: deploy
  43. image: claranet/gcloud-kubectl-docker:latest
  44. variables:
  45. ENVIRONMENT: prod
  46. APP_REDIRECT_URL: 'https://app.ocrgateway.com'
  47. before_script:
  48. - gcloud auth activate-service-account --key-file=$GCP_CI_SERVICE_ACCOUNT_KEY
  49. - gcloud container clusters get-credentials ${GKE_CLUSTER_NAME} --zone ${GKE_CLUSTER_ZONE} --project ${GCP_PROJECT}
  50. script:
  51. - cat ocr-gateway-landing-deployment.yml | envsubst | kubectl apply -f -
  52. environment:
  53. name: production
  54. url: https://ocrgateway.com
  55. on_stop: stop_prod
  56. when: manual
  57. only:
  58. - tags
  59.  
  60. stop_prod:
  61. stage: deploy
  62. variables:
  63. GIT_STRATEGY: none
  64. ENVIRONMENT: prod
  65. image: claranet/gcloud-kubectl-docker:latest
  66. before_script:
  67. - gcloud auth activate-service-account --key-file=$GCP_CI_SERVICE_ACCOUNT_KEY
  68. - gcloud container clusters get-credentials ${GKE_CLUSTER_NAME} --zone ${GKE_CLUSTER_ZONE} --project ${GCP_PROJECT}
  69. script:
  70. - cat ocr-gateway-landing-deployment.yml | envsubst | kubectl apply -f -
  71. when: manual
  72. environment:
  73. name: production
  74. action: stop
  75. only:
  76. - master
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement