Gitlab CI несколько докеров создают среды в одном и том же бегуна - PullRequest
0 голосов
/ 19 марта 2019

Я пытаюсь реализовать конвейер CI в Gitlab CI (частный раннер), выполняю сборку проекта в контейнере docker, а затем использую docker-compose для управления существующим сервисом (UP / DOWN) через тот же gitlab-ci.файл yml, но с двумя средами в одном и том же средстве выполнения.

Конвейер работает только при запуске фиксации мастера.

проблема заключается в том, что при попытке загрузить следующую среду предыдущуюподавляет !, другая альтернатива, о которой я думал, это сделать контейнеры LXC и иметь бегун внутри, но это кажется немного излишним!

мой текущий файл выглядит примерно так!

    stages:
    - dev
    - docker
job dev:    
  stage: dev
  tags:
    - dev,backend
  only:
   - master
   - master@xxxxx/xxxxxxx.git    
  script:
    - docker build -t backend:dev .
    - echo "MONGO_ENV=$MONGO_DEV" > .env  
    - docker-compose -f docker-compose.yml  down 
    - docker-compose -f docker-compose.yml up -d
  allow_failure: true

job docker:    
  stage: docker
  tags:
    - dev,backend
  only:
    - master
    - master@xxxxx/xxxxxx.git    
  script:
    - docker build -t backend:dev .
    - echo "MONGO_ENV=$MONGO_QA" > .env  
    - docker-compose -f docker-compose.yml down
    - docker-compose -f docker-compose.yml up -d
  allow_failure: true
...