Skip to content
Snippets Groups Projects
.gitlab-ci.yml 5.59 KiB
stages:
  - test
  - build
  - manual-db-copy
  - deploy
  - quality

default:
  services:
    - name: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:25-dind
      alias: docker
  before_script:
    - export IMAGE_TAG=$CI_COMMIT_REF_NAME
    - echo $IMAGE_TAG

variables:
  DEPENDENCY_PROXY: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/

build:
  stage: build
  only:
    - dev
  needs: []
  variables:
    DOCKER_TLS_CERTDIR: ''
    DOCKER_HOST: tcp://docker:2375/
    DOCKER_DRIVER: overlay2
  image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:25
  script:
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker login ${CI_DEPENDENCY_PROXY_SERVER} -u ${CI_DEPENDENCY_PROXY_USER} -p ${CI_DEPENDENCY_PROXY_PASSWORD}
    - docker build --pull -t "$CI_REGISTRY_IMAGE:$IMAGE_TAG" --build-arg DEPENDENCY_PROXY="$DEPENDENCY_PROXY" .
    - docker push "$CI_REGISTRY_IMAGE:$IMAGE_TAG"

build-tag:
  stage: build
  only:
    - tags
  variables:
    DOCKER_TLS_CERTDIR: ''
    DOCKER_HOST: tcp://docker:2375/
    DOCKER_DRIVER: overlay2
  image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:25
  script:
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker login ${CI_DEPENDENCY_PROXY_SERVER} -u ${CI_DEPENDENCY_PROXY_USER} -p ${CI_DEPENDENCY_PROXY_PASSWORD}
    - docker build --pull -t "$CI_REGISTRY_IMAGE:$IMAGE_TAG" --build-arg DEPENDENCY_PROXY="$DEPENDENCY_PROXY" .
    - docker push "$CI_REGISTRY_IMAGE:$IMAGE_TAG"

deploy_dev:
  stage: deploy
  tags:
    - deploy
  only:
    - dev
  needs: ['test', 'build']
  script:
    - cd /home/mps/ram
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker-compose pull service-ram
    - docker-compose up -d --force-recreate service-ram
    - docker system prune -a -f
  environment:
    name: dev
    url: https://resin-dev.grandlyon.com

test:
  stage: test
  only:
    - dev