Advertisement
Guest User

Untitled

a guest
Feb 9th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. image: docker:git
  2.  
  3. stages:
  4. - test
  5. - build
  6. - deploy_to_staging
  7.  
  8. variables:
  9. MYSQL_ROOT_PASSWORD: xxx
  10. MYSQL_USER: xxx
  11. MYSQL_PASSWORD: xxx
  12. MYSQL_DATABASE: xxx
  13. DB_HOST: mysql
  14. # Speed up builds
  15. cache:
  16. key: $CI_BUILD_REF_NAME
  17. paths:
  18. - vendor
  19. - node_modules
  20. - ~/.composer/cache/files
  21. - ~/.yarn-cache
  22.  
  23. variables:
  24. DOCKER_HOST: tcp://localhost:2375
  25. DOCKER_DRIVER: overlay2
  26. CONTAINER_BRANCH_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
  27. CONTAINER_TESTING_IMAGE: $CI_REGISTRY_IMAGE:testing
  28.  
  29. before_script:
  30. - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
  31.  
  32. test:
  33. stage: test
  34. before_script:
  35. - hostname
  36. only:
  37. - merge_requests
  38. services:
  39. - mysql:5.7
  40. image: edbizarro/gitlab-ci-pipeline-php:7.2
  41. script:
  42. - hostname
  43.  
  44. build:
  45. image: docker:dind
  46. stage: build
  47. script:
  48. - docker pull $CONTAINER_BRANCH_IMAGE || true
  49. - docker build --cache-from $CONTAINER_BRANCH_IMAGE -t $CONTAINER_BRANCH_IMAGE .
  50. - docker push $CONTAINER_BRANCH_IMAGE
  51. only:
  52. - merge_requests
  53.  
  54. # staging deploy
  55. deploy to staging:
  56. image: linkyard/docker-helm
  57. before_script:
  58. - helm deploy
  59. stage: deploy_to_staging
  60. only:
  61. - merge_requests
  62. script:
  63. - docker pull $CONTAINER_BRANCH_IMAGE
  64. - docker tag $CONTAINER_BRANCH_IMAGE $CONTAINER_TESTING_IMAGE
  65. - docker push $CONTAINER_TESTING_IMAGE
  66. - helm init --upgrade
  67. - helm repo add stable https://kubernetes-charts.storage.googleapis.com
  68. - helm upgrade --install php-app --namespace default --wait --set image.tag=${CI_PIPELINE_ID} --set replicaCount=2 .helm/
  69. environment:
  70. name: staging/$CI_COMMIT_REF_NAME
  71. url: https://staging.xxx.com.ua/
  72. when: manual
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement