Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
cyberevents
6 лет назад

Creating CI / CD infrastructure for open source projects. Speaker: Denis Soldatov

В данном выпуске DevOps Parity Technologies Денис Солдатов расскажет о возможных проблемах разработки и доставки готового кода на примере проекта Parity.

Изначально Parity Technologies занимались разработкой кошелька для экосистемы Ethereum. Для создания структуры сборки кошелька команда компании решила следующие задачи:

  • Распределенность команды

Код проекта размещен на Github и изменения в коде требует сборки нового бинарного файла. Учитывая факт того, что команда компании распределена по всему миру, это доставляет некоторые неудобства. По этой причине в код были внесены определенные изменения для оперативной сборки бинарного файла

  • Кроссплатформенность 

Для решения данной задачи команда собирала код на языке программирования Rust, который обладает следующими характеристиками: 

  • Поддержка кроссплатформенности, многозадачности
  • Предполагает высокую скорость сборки 

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

Системы, которые были апробированы

Снимок экрана 2018-02-07 в 19.24.24.png

  • Travis CI Enterprice (Linux + MacOS)

Сервис хорошо функционирует и настраивается, но нет Windows 

  • AppVeyor (Windows)

Дорогая лицензия

  • Jenkins

Необходимо писать много скриптов

  • Drone CI

Нет полной поддержки языка Rust

  • Gitlab CI 

Команда остановилась именно на этой системе

Снимок экрана 2018-02-07 в 19.26.15.png

Gitlab поддерживает аналогичные функции Github, но Gitlab еще включает интеграцию и доставку конечной продукции.

Отметим используемые инструменты: 

Снимок экрана 2018-02-07 в 19.26.52.png

  • язык Rust
  • Node JS
  • Github
  • Gitlab

Какая в итоге получается цена за обслуживание:

Снимок экрана 2018-02-07 в 19.28.40.png

  • Оплата аренда сервера - 60 $
  • Оплата аренды Windows и MacOS - 100 $

Перспективы компании:

  • Расширились возможности для сборки нескольких проектов
  • Повышение гибкости и масштабируемости

Результат работы команды:

  • Полный контроль над процессом сборки
  • Дешевая система сборки для контента
  • Кроссплатформенность
  • Лицензионная чистота
  • Контроль сборки “одно окно”

Если вам интересно, присоединяетесь к проекту, команде

Снимок экрана 2018-02-07 в 19.33.16.png

0
6.120 GOLOS
На Golos с August 2017
Комментарии (1)
Сортировать по:
Сначала старые