.gitlab-ci.yml 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. build_branch:
  2. image: docker.infra.flowdat.com/fd3/sf-php:latest
  3. variables:
  4. GIT_STRATEGY: clone
  5. script:
  6. - ssh-keyscan -p 222 -t rsa gogs.infra.flowdat.com >> ~/.ssh/known_hosts
  7. - git fetch --tags
  8. - if git ls-remote --exit-code gogs &>/dev/null; then echo 'Existe el remote gogs' ; else git remote add gogs ssh://git@gogs.infra.flowdat.com:222/VendorSoftwareFlowdat3/statsd.git ; fi
  9. - git checkout $CI_COMMIT_REF_NAME
  10. - chmod 0600 keys/* && eval $(ssh-agent); ssh-add keys/gogs.drone.id_rsa && git push -u gogs $CI_COMMIT_REF_NAME --tags
  11. only:
  12. - pushes
  13. - branches
  14. image: docker:19.03.8
  15. variables:
  16. MYSQL_ROOT_PASSWORD: ""
  17. MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
  18. CONTAINER_IMAGE: docker.infra.flowdat.com/fd3/statsd
  19. CONTAINER_IMAGE_JSONEP: docker.infra.flowdat.com/fd3/jsonep
  20. CONTAINER_IMAGE_JSONEP_MONGO: docker.infra.flowdat.com/fd3/jsonep_mongo
  21. CONTAINER_IMAGE_JSONEP_MYSQL: docker.infra.flowdat.com/fd3/jsonep_mysql
  22. CLIENT: fd3
  23. DOMAIN: flowdat.com
  24. DOCKER_USER: drone
  25. DOCKER_PWD: 6hd2dLfL
  26. docker:
  27. stage: build
  28. script:
  29. - docker info
  30. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  31. - docker pull $CONTAINER_IMAGE:latest || true
  32. - docker build --no-cache --tag $CONTAINER_IMAGE:latest ./statsd
  33. - docker push $CONTAINER_IMAGE:latest
  34. only:
  35. refs:
  36. - pushes
  37. variables:
  38. - $CI_COMMIT_REF_NAME == "master"
  39. docker_version_tag:
  40. stage: build
  41. script:
  42. - docker info
  43. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  44. - docker pull $CONTAINER_IMAGE:latest || true
  45. - docker build --no-cache --tag $CONTAINER_IMAGE:${CI_COMMIT_TAG} ./statsd
  46. - docker push $CONTAINER_IMAGE:${CI_COMMIT_TAG}
  47. only:
  48. refs:
  49. - tags
  50. variables:
  51. - $CI_COMMIT_TAG =~ /^v[0-9]+(.[0-9]+)*/
  52. docker_jsonep:
  53. stage: build
  54. script:
  55. - docker info
  56. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  57. - docker pull $CONTAINER_IMAGE_JSONEP:latest || true
  58. - docker build --no-cache --tag $CONTAINER_IMAGE_JSONEP:latest ./endpoint/json
  59. - docker push $CONTAINER_IMAGE_JSONEP:latest
  60. only:
  61. refs:
  62. - pushes
  63. variables:
  64. - $CI_COMMIT_REF_NAME == "master"
  65. docker_version_tag_jsonep:
  66. stage: build
  67. script:
  68. - docker info
  69. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  70. - docker pull $CONTAINER_IMAGE_JSONEP:latest || true
  71. - docker build --no-cache --tag $CONTAINER_IMAGE_JSONEP:${CI_COMMIT_TAG} ./endpoint/json
  72. - docker push $CONTAINER_IMAGE_JSONEP:${CI_COMMIT_TAG}
  73. only:
  74. refs:
  75. - tags
  76. variables:
  77. - $CI_COMMIT_TAG =~ /^v[0-9]+(.[0-9]+)*/
  78. docker_jsonep_mongo:
  79. stage: build
  80. script:
  81. - docker info
  82. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  83. - docker pull $CONTAINER_IMAGE_JSONEP_MONGO:latest || true
  84. - docker build --no-cache --tag $CONTAINER_IMAGE_JSONEP_MONGO:latest ./endpoint/mongodb
  85. - docker push $CONTAINER_IMAGE_JSONEP_MONGO:latest
  86. only:
  87. refs:
  88. - pushes
  89. variables:
  90. - $CI_COMMIT_REF_NAME == "master"
  91. docker_version_tag_mongo:
  92. stage: build
  93. script:
  94. - docker info
  95. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  96. - docker pull $CONTAINER_IMAGE_JSONEP_MONGO:latest || true
  97. - docker build --no-cache --tag $CONTAINER_IMAGE_JSONEP_MONGO:${CI_COMMIT_TAG} ./endpoint/mongodb
  98. - docker push $CONTAINER_IMAGE_JSONEP_MONGO:${CI_COMMIT_TAG}
  99. only:
  100. refs:
  101. - tags
  102. variables:
  103. - $CI_COMMIT_TAG =~ /^v[0-9]+(.[0-9]+)*/
  104. docker_jsonep_mysql:
  105. stage: build
  106. script:
  107. - docker info
  108. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  109. - docker pull $CONTAINER_IMAGE_JSONEP_MYSQL:latest || true
  110. - docker build --no-cache --tag $CONTAINER_IMAGE_JSONEP_MYSQL:latest ./endpoint/mysql
  111. - docker push $CONTAINER_IMAGE_JSONEP_MYSQL:latest
  112. only:
  113. refs:
  114. - pushes
  115. variables:
  116. - $CI_COMMIT_REF_NAME == "master"
  117. docker_version_tag_jsonep_mysql:
  118. stage: build
  119. script:
  120. - docker info
  121. - docker login -u $DOCKER_USER -p $DOCKER_PWD docker.infra.flowdat.com
  122. - docker pull $CONTAINER_IMAGE_JSONEP_MYSQL:latest || true
  123. - docker build --no-cache --tag $CONTAINER_IMAGE_JSONEP_MYSQL:${CI_COMMIT_TAG} ./endpoint/mysql
  124. - docker push $CONTAINER_IMAGE_JSONEP_MYSQL:${CI_COMMIT_TAG}
  125. only:
  126. refs:
  127. - tags
  128. variables:
  129. - $CI_COMMIT_TAG =~ /^v[0-9]+(.[0-9]+)*/