.gitlab-ci.yml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. build_branch:
  2. image: docker.infra.flowdat.com/fd3/sf-php:latest
  3. script:
  4. - chmod 0600 keys/*
  5. - eval $(ssh-agent); ssh-add keys/gogs.drone.id_rsa
  6. - git fetch --tags
  7. - 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/Installer.git ; fi
  8. - git checkout $CI_COMMIT_REF_NAME
  9. - git push -u gogs $CI_COMMIT_REF_NAME --tags
  10. only:
  11. - pushes
  12. - branches
  13. image: docker:stable
  14. services:
  15. - docker:dind
  16. variables:
  17. CONTAINER_IMAGE: docker.infra.flowdat.com/fd3/installer
  18. PMA_CONTAINER_IMAGE: docker.infra.flowdat.com/fd3/pma
  19. REDIS_CONTAINER_IMAGE: docker.infra.flowdat.com/fd3/redis
  20. GEOSERVER_CONTAINER_IMAGE: docker.infra.flowdat.com/fd3/geoserver
  21. DOCKER_USER: drone
  22. DOCKER_PWD: 6hd2dLfL
  23. GIT_STRATEGY: clone
  24. GITLAB_USER: ikdrone
  25. GITLAB_PASS: Flowdat3
  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 --build-arg DIR_INSTALL=/opt/installer/tools tools/
  33. - docker push $CONTAINER_IMAGE:latest
  34. only:
  35. refs:
  36. - pushes
  37. variables:
  38. - $CI_COMMIT_REF_NAME == "master"
  39. docker_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} --build-arg DIR_INSTALL=/opt/installer/tools tools/
  46. - docker push $CONTAINER_IMAGE:${CI_COMMIT_TAG}
  47. only:
  48. refs:
  49. - tags
  50. installer_branch:
  51. image: docker.infra.flowdat.com/fd3/sf-php:latest
  52. stage: build
  53. script:
  54. - chmod 0600 keys/*
  55. - eval $(ssh-agent); ssh-add keys/gogs.drone.id_rsa
  56. - cd tools
  57. - composer install --no-interaction --no-progress
  58. - php cmd.php make:tag:vendors repositories.ini ${CI_COMMIT_REF_NAME} --branch=true
  59. only:
  60. refs:
  61. - pushes
  62. variables:
  63. - $CI_COMMIT_REF_NAME == "v*"
  64. installer_tag:
  65. image: docker.infra.flowdat.com/fd3/sf-php:latest
  66. stage: build
  67. script:
  68. - chmod 0600 keys/*
  69. - eval $(ssh-agent); ssh-add keys/gogs.drone.id_rsa
  70. - cd tools
  71. - composer install --no-interaction --no-progress
  72. - php cmd.php make:installImages ../ --client='develop' --develop=1 --ini_file='./modules.gitlab.ini'
  73. #- chmod 0600 keys/bitbucket.id_rsa ; eval $(ssh-agent); ssh-add keys/bitbucket.id_rsa ; php cmd.php make:tag:vendors repositories.ini ${CI_COMMIT_TAG}
  74. - chmod 0600 keys/bitbucket.id_rsa ; eval $(ssh-agent); ssh-add keys/bitbucket.id_rsa ; php cmd.php get:source ../git.ini --timeout=120
  75. #- chmod 0600 keys/bitbucket.id_rsa ; eval $(ssh-agent); ssh-add keys/bitbucket.id_rsa ; php cmd.php composer:require ../git.ini 'ik/*' ${CI_COMMIT_TAG} --composer_update=0
  76. - chmod 0600 keys/bitbucket.id_rsa ; eval $(ssh-agent); ssh-add keys/bitbucket.id_rsa ; php cmd.php make:tag:modules ../git.ini ${CI_COMMIT_TAG}
  77. only:
  78. refs:
  79. - tags
  80. installer_tag_2:
  81. stage: build
  82. script:
  83. - docker pull $PMA_CONTAINER_IMAGE:latest || true
  84. - docker tag $PMA_CONTAINER_IMAGE:latest $PMA_CONTAINER_IMAGE:${CI_COMMIT_TAG}
  85. - docker push $PMA_CONTAINER_IMAGE:${CI_COMMIT_TAG}
  86. - docker pull $REDIS_CONTAINER_IMAGE:latest || true
  87. - docker tag $REDIS_CONTAINER_IMAGE:latest $REDIS_CONTAINER_IMAGE:${CI_COMMIT_TAG}
  88. - docker push $REDIS_CONTAINER_IMAGE:${CI_COMMIT_TAG}
  89. - docker pull $GEOSERVER_CONTAINER_IMAGE:latest || true
  90. - docker tag $GEOSERVER_CONTAINER_IMAGE:latest $GEOSERVER_CONTAINER_IMAGE:${CI_COMMIT_TAG}
  91. - docker push $GEOSERVER_CONTAINER_IMAGE:${CI_COMMIT_TAG}
  92. only:
  93. refs:
  94. - tags