Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac404fest
Идея доклада — рассказать об использовании Jenkins как не типичного инструмента для построения распределенной сборки продукта, зарабатывающего миллионы долларов. Мы поделимся секретами его адаптации под сборку билдов сложных систем/продуктов с многими компонентами и ускорения в разы этой задачи.
Наша проблема: линейная сборка продукта занимает 8 часов. А Jenkins «из коробки» не умеет собирать сложные иерархии. При этом писать код самостоятельно не хочется. В итоге мы придумали, как использовать существующий инструмент, пройдясь по нему напильником.
Кому будет интересно: Эти знания могут помочь людям, которые хотят построить эффективный CI, но не хотят тратить много времени на исследования.
Мы выложим наш код и материалы на GitHub. Это будет довольно практично.
Лайфхаки:
Используем Build Flow + Groovy скрипты чтобы оркестрировать сложную иерархию с параллельными ветвями и собирать результаты
Правильное использование префиксов в названиях job-ов помогают автоматизировать группировку по бранчам
Переиспользуем окружения сборки много раз, не удаляя их
Предыдущий пункт в итоге оставляет за собой кучу мусора, которую мы периодически очищаем при помощи системных Groovy скриптов по job префиксу
Группировка большого количества job-ов в проекты и бранчи с использованием Nested View
Дамп и разворачивание job-ов из системы контроля версий по шаблону
Ну и взгляд в будущее: автоматический анализ билд проблем.
http://2014.404fest.ru/reports/jenkins/
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac404fest
Идея доклада — рассказать об использовании Jenkins как не типичного инструмента для построения распределенной сборки продукта, зарабатывающего миллионы долларов. Мы поделимся секретами его адаптации под сборку билдов сложных систем/продуктов с многими компонентами и ускорения в разы этой задачи.
Наша проблема: линейная сборка продукта занимает 8 часов. А Jenkins «из коробки» не умеет собирать сложные иерархии. При этом писать код самостоятельно не хочется. В итоге мы придумали, как использовать существующий инструмент, пройдясь по нему напильником.
Кому будет интересно: Эти знания могут помочь людям, которые хотят построить эффективный CI, но не хотят тратить много времени на исследования.
Мы выложим наш код и материалы на GitHub. Это будет довольно практично.
Лайфхаки:
Используем Build Flow + Groovy скрипты чтобы оркестрировать сложную иерархию с параллельными ветвями и собирать результаты
Правильное использование префиксов в названиях job-ов помогают автоматизировать группировку по бранчам
Переиспользуем окружения сборки много раз, не удаляя их
Предыдущий пункт в итоге оставляет за собой кучу мусора, которую мы периодически очищаем при помощи системных Groovy скриптов по job префиксу
Группировка большого количества job-ов в проекты и бранчи с использованием Nested View
Дамп и разворачивание job-ов из системы контроля версий по шаблону
Ну и взгляд в будущее: автоматический анализ билд проблем.
http://2014.404fest.ru/reports/jenkins/
Как мы собираем проекты в выделенном окружении в Windows DockerPositive Hack Days
1. Обзор Windows Docker (кратко)
2. Как мы построили систему билда приложений в Docker (Visual Studio\Mongo\Posgresql\etc)
3. Примеры Dockerfile (выложенные на github)
4. Отличия процессов DockerWindows от DockerLinux (Долгий билд, баги, remote-регистр.)
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС2ГИС Технологии
Если наш проект это не коробочный продукт, а, например, веб-сервис, на который постоянно ходят пользователи, их много и они сразу видят изменения, то в жизненном цикле разработки у нас возникает еще одна задача — задача деплоя готово кода в боевое окружение. В самом начале, когда наш проект маленький и простой на эту задачу никто может и не обращать внимание, так как все происходит быстро и просто. Процесс деплоя состоит из 2-3 общеизвестных шагов - git pull, yii migrate, etc...которые легко запомнить и в которых сложно ошибиться.
С развитием проекта его сложность возрастает — он уже крутится на нескольких серверах, появляются новые компоненты (утилититы, библиотеки и т.д.), новые сущности (балансеры, кешы, и т.д.). Держать всю инфраструктуру в голове становится невозможным, ведение документации привносит больше проблем чем решений, люди ошибаются чаще и т.д.
В докладе:
— Рассмотрим подробно вышеуказанные проблемы, с которыми неизбежно сталкиваются проекты.
— Обсудим какие решения существуют в индустрии (chef, ansible, etc), чем они отличаются, в чем их задача и какое решение выбрать;
— Поговорим про административные вопросы, которые с этим связаны.
Типовая сборка и деплой продуктов в Positive TechnologiesPositive Hack Days
1. Проблемы в построении CI процессов в компании
2. Структура типовой сборки
3. Пример реализации типовой сборки
4. Плюсы и минусы от использования типовой сборки
Codeception + Docker + Robo и что из этого вышлоCOMAQA.BY
Параллелизация тестов, а именно: лучший пхп тулл для автоматизации (Codeception); основы Docker контейнирезации; robo - что это и зачем он нам нужен; profit
Тестируем инфраструктуру как код / Игорь Курочкин (Express 42)Ontico
Если инфраструктура становится кодом, то хороший код должен быть покрыт тестами. Тестирование инфраструктуры особенно актуально, если у вас частые изменения, сложная логика, или используется сторонний код.
Я расскажу про основные инструменты и подходы в тестировании инфраструктуры, как все это автоматизировать и про наш опыт в Express 42. Начиная с анализа кода, интеграционных тестов и заканчивая использованием CI систем. Также расскажу про публикацию инфраструктурного кода в open source.
Доклад будет интересен пользователям любой из систем управления конфигурацией - Chef, Puppet, Ansible или SaltStack.
Как мы собираем проекты в выделенном окружении в Windows DockerPositive Hack Days
1. Обзор Windows Docker (кратко)
2. Как мы построили систему билда приложений в Docker (Visual Studio\Mongo\Posgresql\etc)
3. Примеры Dockerfile (выложенные на github)
4. Отличия процессов DockerWindows от DockerLinux (Долгий билд, баги, remote-регистр.)
Эволюция процесса деплоя в проекте — Денис Яковлев, 2ГИС2ГИС Технологии
Если наш проект это не коробочный продукт, а, например, веб-сервис, на который постоянно ходят пользователи, их много и они сразу видят изменения, то в жизненном цикле разработки у нас возникает еще одна задача — задача деплоя готово кода в боевое окружение. В самом начале, когда наш проект маленький и простой на эту задачу никто может и не обращать внимание, так как все происходит быстро и просто. Процесс деплоя состоит из 2-3 общеизвестных шагов - git pull, yii migrate, etc...которые легко запомнить и в которых сложно ошибиться.
С развитием проекта его сложность возрастает — он уже крутится на нескольких серверах, появляются новые компоненты (утилититы, библиотеки и т.д.), новые сущности (балансеры, кешы, и т.д.). Держать всю инфраструктуру в голове становится невозможным, ведение документации привносит больше проблем чем решений, люди ошибаются чаще и т.д.
В докладе:
— Рассмотрим подробно вышеуказанные проблемы, с которыми неизбежно сталкиваются проекты.
— Обсудим какие решения существуют в индустрии (chef, ansible, etc), чем они отличаются, в чем их задача и какое решение выбрать;
— Поговорим про административные вопросы, которые с этим связаны.
Типовая сборка и деплой продуктов в Positive TechnologiesPositive Hack Days
1. Проблемы в построении CI процессов в компании
2. Структура типовой сборки
3. Пример реализации типовой сборки
4. Плюсы и минусы от использования типовой сборки
Codeception + Docker + Robo и что из этого вышлоCOMAQA.BY
Параллелизация тестов, а именно: лучший пхп тулл для автоматизации (Codeception); основы Docker контейнирезации; robo - что это и зачем он нам нужен; profit
Тестируем инфраструктуру как код / Игорь Курочкин (Express 42)Ontico
Если инфраструктура становится кодом, то хороший код должен быть покрыт тестами. Тестирование инфраструктуры особенно актуально, если у вас частые изменения, сложная логика, или используется сторонний код.
Я расскажу про основные инструменты и подходы в тестировании инфраструктуры, как все это автоматизировать и про наш опыт в Express 42. Начиная с анализа кода, интеграционных тестов и заканчивая использованием CI систем. Также расскажу про публикацию инфраструктурного кода в open source.
Доклад будет интересен пользователям любой из систем управления конфигурацией - Chef, Puppet, Ansible или SaltStack.
Connect NC Presentation for Chapel Hill Downtown PartnershipKristen Smith
#VoteYesToInvest!
More info:
voteyestoinvest.com
connectnc.gov
Portions of the presentation were provided by the Connect NC campaign committee and UNC.
In this July 26, 2012 webinar, CMS Innovation Center staff provided an overview of the State Innovation Models Initiative.
More information can be found at: http://innovations.cms.gov/initiatives/state-innovations/index.html.
- - -
CMS Innovation Center
http://innovation.cms.gov
We accept comments in the spirit of our comment policy:
http://newmedia.hhs.gov/standards/comment_policy.html
CMS Privacy Policy
http://cms.gov/About-CMS/Agency-Information/Aboutwebsite/Privacy-Policy.html
20 апреля, DEV {highload} - конференция о Highload веб-разработке, "Инженерны...IT-Portfolio
20 апреля DEV {highload} - конференция о Highload веб-разработке, "Инженерный дзен. DevOps на практике", Александр Титов (DevOps-эксперт "Экспресс 42")
Аннотация
Разработать программное обеспечение в веб-индустрии - это еще не все, надо его еще выкатить в производственное окружение и при этом не разочаровать пользователей. Обычно этот процесс происходит раз в месяц или две недели и сопровождается стрессом для всех участников, а часто заканчивается очень неприятной процедурой отката изменений, далеко не всегда безболезненной.
Проведем параллель с эволюцией в природе, разве там происходит так? Что-то меняется слишком резко и происходит откат? Нет, природа плавно меняет себя, делая небольшие изменения и пропуская их через проверку временем.
Инженерам, работающим в сфере программного обеспечения, дан уникальный шанс, они могут вносить изменения в работающий продукт каждый день, но для этого надо выполнить несколько условий:
- наладить в команде доверительные отношения;
- постоянно интегрировать продукт в тестовой среде;
- поддерживать непрерывный контекст при интеграции;
- использовать подходящие инструменты для управления конфигурацией и деплоя.
Доклад будет про то, как подобрать подходящие инструменты и процессы для работы и начать регулярно выкатывать ваш продукт. В мире принято такие практики называть DevOps.
Биография
Совладелец компании по внедрению DevOps-инструментов и процессов "Экспресс 42". Александр был техническим директором первого облака в России "Оверсан-Скалакси", потом руководил отделом системного администрирования в компании Скайп, подготовил инфраструктуру для запуска проекта видеосообщений.
Видео: http://www.youtube.com/watch?v=vz0U3jQpHSM
Это обзор опыта применения лучших практик разработки программного обеспечения на разных проектах от госзаказов до видеоконференций в командах от 5 до 50 человек. В докладе будут описаны не только практики, но и то, как они применяются на реальных проектах и какие выгоды они действительно приносят.
Современный мир ускоряется, и от тестирования требуется быстрые и стабильные тесты. В этом мастер-классе предлагается уйти от UI автоматизации и перейти на уровень ниже "пирамиды тестирования", на уровень WEB API. Не обещаю теорию, но будет много практических кейсов. В качестве примера я возьму популярный веб сайт с открытым API и покажу как за относительно небольшое время можно создавать хорошие тесты! Причем тесты мы будем создавать совместно, и особых навыков программирования от участников здесь не потребуется, достаточно включить логику и желание освоить что-то новое.
Приемы Сontinuous Integration при разработке приложений на CachéInterSystems CEE
Об организации автоматизированного рабочего процесса в InterSystems Caché, Лебедюк /
Implementing modern developement practices with InterSystems Caché, Eduard Lebedyuk
Approach on how make Continuous Integration development cycle with InterSystems Caché.
Caché Object Script solution for CI with Github
https://github.com/intersystems-ru/CacheGitHubCI
Как развивать библиотеку компонентов, не ломая ее / Артур Удалов (Mail.Ru Group)Ontico
HighLoad++ 2017
Зал «Пекин + Шанхай», 8 ноября, 17:00
Тезисы:
http://www.highload.ru/2017/abstracts/2991.html
Нынче стало модно выделять UI-компоненты в отдельную библиотеку и использовать её в нескольких проектах. Мы в команде почты Mail.ru делаем так же, но столкнулись с проблемой: каждый разработчик, меняя библиотеку под свои нужды, обязательно ломает что-нибудь, что работало у других.
Я расскажу о том, как мы решили эту проблему, и о том, какие инструменты для этого можно использовать. Storybook, BackstopJS, Jest, Webdriver.io, TypeScript - в их числе.
За более чем 20 лет развития платформа Pega превратилась в уникальный мир с собственной экосистемой: собственными методологиями и техниками создания корпоративных приложений, собственным ни на что не похожим инструментарием разработки. Стремясь сохранить «самобытность» платформа очень острожно подходила к освоению новых тенденций из внешнего мира ИТ-технологий, отказываясь от многих из них, как от противоречащих «генеральной линии партии». Инженерные практики — это как раз то, что долго оставалось «под запретом» в платформе Pega. В нашем докладе мы расскажем, как достичь DevOps с Pega вопреки всем ограничениям платформы.
25. Не забываем
• Приватная информация
• Тесты и статус сборки
• История изменений и документация
• Совместимость и конфликты
• Синхронизация с платформой
• Лицензия
26. Как это делаем мы
• Любое изменение на GitHub
• Запуск тестов в Travis CI
• Вызов Rubocop и Foodcritic проверок
• Запуск виртуалки в Digital Ocean через Test Kitchen
• Выполнение Serverspec тестов
• Загрузка в Chef Supermarket
• Нотификация в Slack чат и обновление статуса сборки