SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
Rozum Robotics
Nikolay Lagutko
Кобот Сервомоторы
Мечта любого пользователя!
И в чём проблема?
Код Продукт
И что в этом сложного?
● Docker?
● AWS?
● Kubernetes?
● Puppet/Chef?
● ещё куча модных DevOps слов
● Один робот – один PC
● У робота нет доступа в
интернет
● У пользователей робота
нет доступа к ОС
Почему не можем как у обычных
людей?
Как было раньше
Software Firmware
Что не так?
● обновление происходят
спонтанно
● пользователь не может
обновить робота без
“магии”
● кодовая база не
зафиксировано
● никто не знает что сейчас
установлено на роботе
Как было раньше
Software Firmware
Pipeline
Код Артефакт PC OS
собрать в залить на установить в
С кодом всё легко
Упаковывать тоже умеем
● dpkg-deb – это
вообще стандарт
● gradle + nebula
плагин – для java
проектов
И что дальше?
Самая главная часть робота
Самая главная часть робота
куча всего интересного
PC
Мозги робота
● Ubuntu
● собственный iso
образ системы
● полный доступ
Установка
● apt-get install
● .deb скрипты
(preinstall, postinstall,
prerm, postrm)
Версии и зависимости
● depends
● а еще есть conflicts,
breaks, replaces
Backend
v 1.1.0
актуальные
прошивки
v 1.1.0
старые
прошивки
v 1.0.0
depends (>= 1.1.0)
диапазон версий
не позволит
сделать обновление
Запуск
● systemd
● автозапуск при
загрузке
● зависимости между
сервисами
● права доступа
Предварительные итоги
АртефактКод Артефакт PC OS
собрать в залить на установить в
Предварительные итоги
АртефактКод Артефакт PC OS
собрать в установить в
Update Center
загружаем
update’ы
проверяем
update’ы
Упаковка релиза
backend
frontend
прошивальщик
прошивки моторов
Доставка релиза
{
“model”: “pulse-75”,
“customer”: “any”,
“version”: “1.1.1-release”
}есть обновления для меня?
да, тащи 1.1.2-release
{
“model”: “t-800”,
“customer”: “skynet”,
“version”: “1997”
}
мне нужны твои обновления
нет доступных обновлений
Разделяет dev и prod
проданные роботы
разработческие роботы
release/stable
beta/rc
И последнее...
Update Center
● наш собственный
софт
● может делать всё
что хочет
● точнее то что мы
напишем
нотификация
разграничение доступа разные модели робота
Подобьём итоги
Код Артефакт PC OS
собрать в установить в
update-center
Результат
● когда не хватает
современных средств –
всегда можно обратиться
к классике
● там очень много
стабильных и классных
вещей
● если чего-то не хватает –
это можно дописать

Weitere ähnliche Inhalte

Was ist angesagt?

Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав БахмутовПлюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав БахмутовYandex
 
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовGo в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовYandex
 
Введение в язык программирования Go
Введение в язык программирования GoВведение в язык программирования Go
Введение в язык программирования GoElena Grahovac
 
Publishing a Unity based Title on mobile, PC and consoles
Publishing a Unity based Title on mobile, PC and consolesPublishing a Unity based Title on mobile, PC and consoles
Publishing a Unity based Title on mobile, PC and consolesDevGAMM Conference
 
Как мы делаем раскладку Календаря@Mail.Ru
Как мы делаем раскладку Календаря@Mail.RuКак мы делаем раскладку Календаря@Mail.Ru
Как мы делаем раскладку Календаря@Mail.RuVladimir Rudnyh
 
Go в автобусе
Go в автобусеGo в автобусе
Go в автобусеArtem Kovardin
 
Как писать на PHP и не стать быдло-кодером
Как писать на PHP и не стать быдло-кодеромКак писать на PHP и не стать быдло-кодером
Как писать на PHP и не стать быдло-кодеромKirill Kovalchuk
 
Как ВКонтакте использует Go
Как ВКонтакте использует GoКак ВКонтакте использует Go
Как ВКонтакте использует GoArtem Kovardin
 
Повышаем и следим за качеством PHP кода
Повышаем и следим за качеством PHP кодаПовышаем и следим за качеством PHP кода
Повышаем и следим за качеством PHP кодаAleksandr Makhomet
 
My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014Alex Chistyakov
 
Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)
Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)
Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)PingWin Software
 
Опыт внедрения Docker .
 Опыт внедрения Docker .  Опыт внедрения Docker .
Опыт внедрения Docker . phpfriendsclub
 
Platypus platform ivbit
Platypus platform ivbitPlatypus platform ivbit
Platypus platform ivbitjskonst
 
"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23
"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23
"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23MoscowJS
 
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)Ontico
 
"Мы два месяца долбались, а потом построили индекс" (c) Аксенов
"Мы два месяца долбались, а потом построили индекс" (c) Аксенов"Мы два месяца долбались, а потом построили индекс" (c) Аксенов
"Мы два месяца долбались, а потом построили индекс" (c) АксеновAlex Chistyakov
 
Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»SpbDotNet Community
 
JavaScript завтра / Сергей Рубанов (Exante Limited)
JavaScript завтра / Сергей Рубанов  (Exante Limited)JavaScript завтра / Сергей Рубанов  (Exante Limited)
JavaScript завтра / Сергей Рубанов (Exante Limited)Ontico
 
My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015Alex Chistyakov
 

Was ist angesagt? (20)

Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав БахмутовПлюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
 
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав БахмутовGo в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
Go в продакшене Яндекса: отчёт после года использования — Вячеслав Бахмутов
 
Введение в язык программирования Go
Введение в язык программирования GoВведение в язык программирования Go
Введение в язык программирования Go
 
Use Grunt Luke
Use Grunt LukeUse Grunt Luke
Use Grunt Luke
 
Publishing a Unity based Title on mobile, PC and consoles
Publishing a Unity based Title on mobile, PC and consolesPublishing a Unity based Title on mobile, PC and consoles
Publishing a Unity based Title on mobile, PC and consoles
 
Как мы делаем раскладку Календаря@Mail.Ru
Как мы делаем раскладку Календаря@Mail.RuКак мы делаем раскладку Календаря@Mail.Ru
Как мы делаем раскладку Календаря@Mail.Ru
 
Go в автобусе
Go в автобусеGo в автобусе
Go в автобусе
 
Как писать на PHP и не стать быдло-кодером
Как писать на PHP и не стать быдло-кодеромКак писать на PHP и не стать быдло-кодером
Как писать на PHP и не стать быдло-кодером
 
Как ВКонтакте использует Go
Как ВКонтакте использует GoКак ВКонтакте использует Go
Как ВКонтакте использует Go
 
Повышаем и следим за качеством PHP кода
Повышаем и следим за качеством PHP кодаПовышаем и следим за качеством PHP кода
Повышаем и следим за качеством PHP кода
 
My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014My talk on Salt and Ansible from DevConf 2014
My talk on Salt and Ansible from DevConf 2014
 
Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)
Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)
Поддержка пользователей силами Community (Влад Животнев, Ubuntu Loco Team)
 
Опыт внедрения Docker .
 Опыт внедрения Docker .  Опыт внедрения Docker .
Опыт внедрения Docker .
 
Platypus platform ivbit
Platypus platform ivbitPlatypus platform ivbit
Platypus platform ivbit
 
"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23
"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23
"Непрерывная интеграция или "Кто всё сломал?", Виктор Русакович, MoscowJS 23
 
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
 
"Мы два месяца долбались, а потом построили индекс" (c) Аксенов
"Мы два месяца долбались, а потом построили индекс" (c) Аксенов"Мы два месяца долбались, а потом построили индекс" (c) Аксенов
"Мы два месяца долбались, а потом построили индекс" (c) Аксенов
 
Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»
 
JavaScript завтра / Сергей Рубанов (Exante Limited)
JavaScript завтра / Сергей Рубанов  (Exante Limited)JavaScript завтра / Сергей Рубанов  (Exante Limited)
JavaScript завтра / Сергей Рубанов (Exante Limited)
 
My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015My talk on Docker, Youcon 2015
My talk on Docker, Youcon 2015
 

Ähnlich wie Rozum robotics release cycle

Meet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakMeet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakAmasty
 
Николай Сивко "Хорошо поддерживаемое в продакшне приложение"
Николай Сивко "Хорошо поддерживаемое в продакшне приложение"Николай Сивко "Хорошо поддерживаемое в продакшне приложение"
Николай Сивко "Хорошо поддерживаемое в продакшне приложение"Tanya Denisyuk
 
Евгений Жарков "Как быть хорошим фронтенд-разработчиком"
Евгений Жарков "Как быть хорошим фронтенд-разработчиком"Евгений Жарков "Как быть хорошим фронтенд-разработчиком"
Евгений Жарков "Как быть хорошим фронтенд-разработчиком"Fwdays
 
"Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно..."Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно...it-people
 
Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"Fwdays
 
Linux Terminal Server Project
 Linux Terminal Server Project Linux Terminal Server Project
Linux Terminal Server ProjectIlya Siganov
 
Tech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест ДжоэлаTech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест ДжоэлаTech Talks @NSU
 
Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Fwdays
 
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»Unity: WebGL и IL2CPP — будущее скриптинга в Unity»
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»DevGAMM Conference
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеSQALab
 
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...CodeFest
 
Special linux distribution for national GRID network connection
Special linux distribution for national GRID network connectionSpecial linux distribution for national GRID network connection
Special linux distribution for national GRID network connectionТранслируем.бел
 
Инструментарий начинающего разработчика Drupal.
Инструментарий начинающего разработчика Drupal.Инструментарий начинающего разработчика Drupal.
Инструментарий начинающего разработчика Drupal.PVasili
 
специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)Ontico
 
Wargaming.net: Архитектура современных 3D движков
Wargaming.net: Архитектура современных 3D движковWargaming.net: Архитектура современных 3D движков
Wargaming.net: Архитектура современных 3D движковDevGAMM Conference
 
Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.DrupalForumZP2012
 
А так ли нужен DevOps инженер в проекте?
А так ли нужен DevOps инженер в проекте?А так ли нужен DevOps инженер в проекте?
А так ли нужен DevOps инженер в проекте?Mad Devs
 
Kolosov drupalconf2011 2_kolosov
Kolosov drupalconf2011 2_kolosovKolosov drupalconf2011 2_kolosov
Kolosov drupalconf2011 2_kolosovdrupalconf
 

Ähnlich wie Rozum robotics release cycle (20)

Meet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy SamilyakMeet Magento Belarus - Andriy Samilyak
Meet Magento Belarus - Andriy Samilyak
 
Николай Сивко "Хорошо поддерживаемое в продакшне приложение"
Николай Сивко "Хорошо поддерживаемое в продакшне приложение"Николай Сивко "Хорошо поддерживаемое в продакшне приложение"
Николай Сивко "Хорошо поддерживаемое в продакшне приложение"
 
Евгений Жарков "Как быть хорошим фронтенд-разработчиком"
Евгений Жарков "Как быть хорошим фронтенд-разработчиком"Евгений Жарков "Как быть хорошим фронтенд-разработчиком"
Евгений Жарков "Как быть хорошим фронтенд-разработчиком"
 
"Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно..."Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно...
 
Vagrant puppet
Vagrant puppetVagrant puppet
Vagrant puppet
 
Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"
 
Linux Terminal Server Project
 Linux Terminal Server Project Linux Terminal Server Project
Linux Terminal Server Project
 
Tech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест ДжоэлаTech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест Джоэла
 
Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"Serghei Iakovlev "Chaos engineering in action"
Serghei Iakovlev "Chaos engineering in action"
 
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»Unity: WebGL и IL2CPP — будущее скриптинга в Unity»
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
 
Special linux distribution for national GRID network connection
Special linux distribution for national GRID network connectionSpecial linux distribution for national GRID network connection
Special linux distribution for national GRID network connection
 
Drupal conf2011 2_kolosov
Drupal conf2011 2_kolosovDrupal conf2011 2_kolosov
Drupal conf2011 2_kolosov
 
Инструментарий начинающего разработчика Drupal.
Инструментарий начинающего разработчика Drupal.Инструментарий начинающего разработчика Drupal.
Инструментарий начинающего разработчика Drupal.
 
специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)специализированные http-демона (Сергей Боченков, Александр Панков)
специализированные http-демона (Сергей Боченков, Александр Панков)
 
Wargaming.net: Архитектура современных 3D движков
Wargaming.net: Архитектура современных 3D движковWargaming.net: Архитектура современных 3D движков
Wargaming.net: Архитектура современных 3D движков
 
Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.
 
А так ли нужен DevOps инженер в проекте?
А так ли нужен DevOps инженер в проекте?А так ли нужен DevOps инженер в проекте?
А так ли нужен DevOps инженер в проекте?
 
Kolosov drupalconf2011 2_kolosov
Kolosov drupalconf2011 2_kolosovKolosov drupalconf2011 2_kolosov
Kolosov drupalconf2011 2_kolosov
 

Rozum robotics release cycle