Powered by Shower
Доклад Дмитрия Захарова
Постоянное слияние кода в рабочую ветку с выполнением авто-тестов и сборок.
Постоянное развертывание нового кода на серверах.
CI/CD сервис интегрированный в Битбакет. Нужно включить, чтобы начать пользоваться.
Repository settings → Pipelines → Settings
pipelines:
default:
- step:
image: node:12.18.3
script:
- npm install
- npm test
Это файлы созданные шагом в пайплайне, которые можно передавать следующим шагам или скачать.
Поведение пайплайна можно контролировать в зависимости от ветки.
Сервис предоставляет переменные окружения, которые могут использоваться в пайплайнах. Так же можно определить свои переменные окружения, в т.ч. и зашифрованные.
Repository settings → Pipelines → Repository variables
Repository settings → Pipelines → SSH Keys
pipelines: ...
definitions:
services:
postgres:
image: postgres:12.3
variables:
POSTGRES_PASSWORD: $PG_PASS
POSTGRES_USER: $PG_USER
POSTGRES_DB: $PG_DB_NAME
На проекте несколько сред для развертывания: dev, test, prod.
Repository settings → Pipelines → Deployments
Облегчают сложные задачи, делая всю работу "под капотом". Например: подключение по ssh, копирование файлов на сервер по scp, изменение статуса тикета в Jira.
Связывание коммитов и пул реквестов с тикетми через ссылки.
Repository settings → Workflow → Links
Оповещение о создании или изменениях в пул реквесте.
Repository settings → Pull Requests → Default Reviewers