Рубрики
Uncategorized

Git Hooks и Docker для непрерывной интеграции — часть 2

Локальная непрерывная интеграция Поток пользователя — Pre -Push Git Cool A Ci Build … Tagged с Docker, DevOps, Cloud, Codequality.

Пользовательский филиал — Pre -Push Git Hook

Процесс сборки CI будет вызван пользователем pre-push Git крюк. В конце каждой сборки статус конвейера CI будет отображаться в репозитории GIT (если хотите, вы даже можете остановить изменение кода пользователя, если процесс CI не удастся 🛑)

Основная филиал — после слияния

Если пользовательский ветвь или запрос на вытягивание равен ✅, мы можем использовать API GitHub или BitBucket для объединения запроса кода/вытягивания. После объединения PR мы можем запустить автоматический конвейер CI на главной/главной ветви.

Как запустить несколько параллельных конвейеров CI с Docker

Сначала мы должны знать, как создать частные подсчеты с помощью Docker Engine. В Docker вы можете создать несколько мостовых сетей. Контейнеры, подключенные к одной и той же пользовательской мостовой сети, могут эффективно разрешать друг друга. Использование пользовательской сети обеспечивает сеть областей, в которой только контейнеры, прикрепленные к этой сети, способны общаться.

Docker Engine позволяет создавать несколько сетей. Пример: мы хотим максимум 254 параллельных трубопроводов CI с макс 126 контейнеры Для каждой сети.

Конфигурация Docker будет:

  • «Подсеть»: «172.20.x.0/24»,//172.20.x.1 — 172.20.x.254
  • «Iprange»: «172.20.x.0/25»,//172.20.x.1 — 172.20.x.126
  • «Gateway»: «172.20.x.12»

где 1

Конфигурация одной сети:

const availableNetwork = 1;

const networkConfig = {
  "Subnet": `172.20.${availableNetwork}.0/24`,  
  "IPRange": `172.20.${availableNetwork}.0/25`,
  "Gateway": `172.20.${availableNetwork}.12`
}

const networkOption = {
  "Name": networkName,
  "Driver": "bridge",
  "Labels": {
    "name": networkLabel
  },
  "IPAM": {
    "Config": [networkConfig]
  }
}

Статья Часть 1: GIT Hooks и Docker для непрерывной интеграции — Часть 1

Проверьте Localci: localci.io

Оригинал: «https://dev.to/simone_a/git-hooks-and-docker-for-continuous-integration-part-2-54jb»