Независимая от кода CI для микросервисов в монорепо - PullRequest
0 голосов
/ 08 ноября 2018

В настоящее время у нас есть монолитное приложение NodeJS. Тесты выполняются в Codeship, и, если они отображаются зеленым цветом, код будет развернут в Heroku. Это довольно легко.

Итак, мы хотели бы разбить наше монолитное приложение на микросервисы, и мы предпочитаем монорепольное решение.

Например, у нас есть service-1 и service-2 в репо. Мы хотели бы настроить независимый CI и конвейер развертывания для каждого сервиса в Codeship.

my-repo
  - service-1
    - src
    - package.json
    - docker-compose.yml
    - codeship-steps.yml
  - service-2
    - src
    - package.json
    - docker-compose.yml
    - codeship-steps.yml

Есть ли у вас идеи, как мы можем настроить идеальный CI?

1 Ответ

0 голосов
/ 09 ноября 2018

Да CodeShip Pro предоставляет Docker Compose-подобный подход к настройке нескольких служб из одного пространства проекта. Предполагая, что микросервисы уже разбиты на отдельные папки, codeship-services.yml может выглядеть следующим образом:

    service-a:
      build:
        context: ./service-a
        dockerfile: Dockerfile # The Dockerfile in ./service-a directory

    service-b:
      build:
        context: ./service-b

Пожалуйста, ознакомьтесь с нашим полным вводным руководством для получения дополнительной информации

...