Найти в Дзене
Webest

Почему мы переехали с Битбакета на Гитлаб и что из этого вышло

Оглавление

С 2015 года мы использовали в качестве git сервис Bitbucket, но недавно нам пришлось с ним попрощаться. Рассказываем, как искали замену Битбакету, почему выбрали Гитлаб и как мигрировали на новый сервис.

Предыстория

Очень давно для контроля разработки проектов мы начали использовать веб-сервис на системе контроля версий Git. Как-то исторически сложилось, что им стал Битбакет — проект Атлассиана.

В свое время на выбор Битбакета повлияла облачная инфраструктура Атлассиана с возможностью бесплатно создавать приватные репозитории кода (private) в неограниченном количестве и другими встроенными возможностями.

Какое-то время мы жили с Битбакетом и не знали бед: все работало исправно и мы были довольны.

И тут в марте Атлассиан объявил о том, что приостанавливает продажи лицензий в России.

Как говорится, кто предупрежден, тот вооружен. Мы начали постепенно искать другие варианты гита. И как выяснилось, не зря. В октябре 2022 года Алитласиан объявил, что уходит из РФ.

Как мы искали варианты

Смотрели альтернативы Битбакету среди отечественных и зарубежных сервисов.

Определили для себя критерии:

  1. Цена
    Сравнивали цену за подписку с теми возможностями, которые сервисы за эту цену предоставляют.
  2. Вероятность ситуации ухода с российского рынка.
    Нам нужна была уверенность, что на новом гите мы сможем работать автономно и не будем зависеть от действий владельца. Мы искали гит, который может работать на локальном сервере, чтобы не повторилась ситуация с уходом с рынка.
  3. Управляемость.
    В целом почти все варианты, которые мы рассматривали, обладают +/- одинаковым функционалом. Мы определили самый необходимый для нас:
  • Удобный интерфейс работы с кодом (тут все сервисы в целом одинаковые)
  • Наличие ci/cd
  • Наличие вики
  • Наличие issues
  • Наличие механизмов миграции данных
  • Понятный механизм управления командами и проектами

В итоге остановили выбор на коробочной версии GitLab CE

Причины:

  • Лежит на собственном сервере — встать и уйти не может
  • Делает регулярные резервные копии
  • Можно добавить неограниченное число пользователей
  • Имеет полный функционал облака

Настройка и миграция проектов

Сам процесс установки и настройки VPS и GitLab описывать бессмысленно, мануалов довольно много. Расскажем, какими этапами мы шли.

  1. Вначале мы развернули портал и перенесли несколько проектов для теста в ручном режиме. В таком состоянии поработали несколько недель, убедились, что система стабильна.
  2. Настроили интеграцию с Битбакетом для миграции всех проектов. В целом это заняло около дня.
  3. Организовали планерку со всеми нашими специалистами, кто в этом участвует, и выбрали подходящий день для переезда, чтобы избежать сбоев в работе с проектами. Договорились на выходной день, когда и перенесли все проекты и подключили всех пользователей к системе.
  4. С Битбакета мы удалили почти всех пользователей, чтобы не было проблем с дубликатами и выгрузкой не с того репозитория.
  5. Написали небольшой мануал для разработчиков с конфигами под новый гит:
-2

С понедельника начали работать на новом сервисе.

Какое понадобилось железо

Мы хостим свой проект на Beget. Чтобы использовать крайнюю версию Ubuntu и типовую установку, особых требований у Beget не было. К тому же у него даже есть вариант развернуть VPS сразу c GitLab.

Минимальные требования к серверу:

  • Сервер должен быть не менее 4 CPU, RAM: 6 Гб, NVMe: 80 Гб
  • Средняя нагрузка на процессор около 20%

В целом эти требования подходят для всех серверов. Но благодаря простому доступу к ресурсам нашего сервера, нас эти требования особо не беспокоят. Если система будет потреблять больше, мы легко можем увеличить мощность сервера.

Бекапирование

Без гита проблематично хранить рабочие версии кода и вносить изменения в проекты. Поскольку гит важен нам для работы, в автоматическом режиме мы ежедневно собираем резервную копию всей VPS. У нас эта функция есть на хостинге.

Риски

Поскольку Гитлаб приостановил продление лицензий в РФ, обновление GitLab CE до версии с расширенными функциями GitLab EE невозможно. Также это исключает использование платных функций версии GitLab CE.

-3

История схожа с ситуацией про Атлассиан в марте 2022 года, но нас это не пугает.

Изменения в мире постоянно требуют усилий, чтобы адаптироваться к новым условиям. К изменениям мы привыкли, а вот без гита работать не можем.

-4

Нюансы переезда

Особых сложностей с переездом не было. Напишем, на что еще стоит обратить внимание.

  • Поначалу несколько людей не попали в свои проекты. Решается быстро через панель администрирования.
-5
  • Могут быть нюансы с доступами со стороны Битбакета, но решение этому можно легко нагуглить.
  • Сотрудникам нужно было принять новую систему и в процессе работы с проектами менять файл конфигурации подключения с Битбакета на Гитлаб.
  • Раньше цена на Биткакете была около 100$ в месяц. Сейчас мы платим около 1800 рублей в месяц, но это только за железо.
  • Мы ставили сразу обычную версию. Если вы не уверены, что сервис вам подойдет, используйте пробную 30-дневную версию.
  • Мы не использовали расширенные функции Битбакета раньше, поэтому то, что схожие платные функции GitLab стали недоступны, нас не коснулось.

Ещё больше наших кейсов, статей, практических рекомендаций для предпринимателей и маркетологов про разработку, маркетинг, аналитику, дизайн на нашем сайте: https://webest.ru/