Сегодня мы отойдём от классического клише второсортных детективов и расскажем вам о случае из нашей практики, когда дворецкий сам выступил в роли жертвы, а поиски настоящего преступника привели нас к неожиданному результату. Но не стоит пугаться. Речь, конечно же, пойдет не о настоящих людях, а о программах. И о том, что нам не страшно признавать собственные ошибки: мы-то знаем, что от них не застрахован ни один коллектив разработчиков.
Читать полностью »
Рубрика «devops» - 113
Когда дворецкий — жертва
2017-12-07 в 11:41, admin, рубрики: devops, pvs-studio, windows, Блог компании PVS-Studio, разработка под windows, системное администрированиеКак мы внедряли DevOps: тестирование production-окружения с Azure Web App
2017-12-07 в 10:51, admin, рубрики: azure, devops, microsoft, Microsoft Azure, web, Блог компании Microsoft, Тестирование веб-сервисовИногда возникает необходимость обновить приложение без прерывания его работы. Помогают ли в этом слоты развертывания Azure App Service и функция маршрутизации трафика? Что это всё вообще такое? Читайте под катом.
Расширяем функционал Ansible с помощью плагинов: часть 1
2017-12-07 в 4:00, admin, рубрики: Ansible, devops, infrastructure as code, Блог компании D2C.io, Серверное администрированиеУ себя в D2C мы активно используем Ansible. С его помощью мы создаем виртуальные машины у облачных провайдеров, устанавливаем программное обеспечение, а также управляем Docker-контейнерами с приложениями клиентов. В прошлой статье я рассказывал о том, как заставить Ansible работать быстрее, теперь расскажу о том, как расширить его функциональность.
Автоматизация процессов разработки: как мы в Positive Technologies внедряли идеи DevOps
2017-12-05 в 12:10, admin, рубрики: devops, Блог компании Positive Technologies, разработка, управление, управление разработкойПривет! В этой статье расскажу, как мы в Positive Technologies создавали и развивали отдел автоматизации разработки, внедряли идеи DevOps в практику разработки и какие инструменты и технологии для этого использовали, а также как организовали процессы CI/CD. В том числе поделюсь успехами и планами на будущее. Читать полностью »
Хранение метрик: как мы перешли с Graphite+Whisper на Graphite+ClickHouse
2017-12-05 в 10:42, admin, рубрики: clickhouse, devops, graphite, monitoring, Блог компании Avito, системное администрирование, хранилища данныхВсем привет! В своей прошлой статье я писал об организации модульной системы мониторинга для микросервисной архитектуры. Ничего не стоит на месте, наш проект постоянно растёт, и количество хранимых метрик — тоже. Как мы организовали этот переход в условиях высоких нагрузок, об ожиданиях от него и результатах миграции читайте под катом.
Развёрнутый ответ
2017-12-05 в 8:36, admin, рубрики: devops, pvs-studio, Блог компании PVS-Studio, мнения, ответ, Программирование, Проектирование и рефакторинг, разработка, рефакторинг, статический анализ кода, статический анализатор кода, управление проектами, управление разработкой![Развёрнутый ответ - 1 Ответ](https://www.pvsm.ru/images/2017/12/05/razvyornutyi-otvet.png)
К одной из моих статей прозвучали комментарии, в которых собрано так много предубеждений касательно статического анализа кода, что я решил оформить ответ в виде отдельной публикации. Надеюсь, ответ позволит автору комментариев и всем сомневающимся программистам по-новому взглянуть на инструменты статического анализа вообще, и PVS-Studio в частности.
Комментарии
Комментарии написаны к статье "Передаю привет разработчикам компании Yandex". Первый находится здесь. Процитирую его:
Все эти анализаторы кроме пользы добавляют гемор в виде замедления билда, ложных срабатываний, информационного шума и ложного чувства безопасности. Для себя я решил, что профессионалам чем меньше таких тулзов тем лучше — гемор легко перевешивает пользу. А нубасам такое тоже особо не поможет — им бы учиться писать юнит тесты, а не тратить время на затыкание варнингов. Возможно, в Яндексе думают так же. Хотя если тесты гонять перед релизом, то гемор будет меньше, и можно будет выцедить нормальное соотношение время/ошибки, так что хз. Дисклеймер: PVS-Studio я не пробовал. |
Дискуссия о статическом анализе кода
2017-12-05 в 8:36, admin, рубрики: devops, pvs-studio, Блог компании PVS-Studio, мнения, ответ, Программирование, Проектирование и рефакторинг, разработка, рефакторинг, статический анализ кода, статический анализатор кода, управление проектами, управление разработкой![Дискуссия о статическом анализе кода - 1 Ответ](https://www.pvsm.ru/images/2017/12/05/diskussiya-o-staticheskom-analize-koda.png)
К одной из моих статей прозвучали комментарии, в которых собрано так много предубеждений касательно статического анализа кода, что я решил оформить ответ в виде отдельной публикации. Надеюсь, ответ позволит автору комментариев и всем сомневающимся программистам по-новому взглянуть на инструменты статического анализа вообще, и PVS-Studio в частности.
Комментарии
Комментарии написаны к статье "Передаю привет разработчикам компании Yandex". Первый находится здесь. Процитирую его:
Все эти анализаторы кроме пользы добавляют гемор в виде замедления билда, ложных срабатываний, информационного шума и ложного чувства безопасности. Для себя я решил, что профессионалам чем меньше таких тулзов тем лучше — гемор легко перевешивает пользу. А нубасам такое тоже особо не поможет — им бы учиться писать юнит тесты, а не тратить время на затыкание варнингов. Возможно, в Яндексе думают так же. Хотя если тесты гонять перед релизом, то гемор будет меньше, и можно будет выцедить нормальное соотношение время/ошибки, так что хз. Дисклеймер: PVS-Studio я не пробовал. |
Не было печали, апдейтов накачали
2017-12-04 в 20:26, admin, рубрики: apt-get, Debian, devops, howto, linux desktop, Ubuntu, Настройка Linux, Серверное администрирование, системное администрирование, управление пакетамиУ меня дома используется Debian Sid. Большей частью он весьма и весьма хорош, но местами он слишком Bleeding слишком Edge. Например, когда отгружает пакеты, ломающие работоспособность системы. Вчера приехал wpasupplicant, который сломал мне wifi. Я его откатил, но в процессе я подумал, что многие пользователи не умеют этого делать. Рассказ "как откатить плохой apt-get install/upgrade" — в этом посте.
Ситуация
Мы сделали apt-get install что-то, или apt-get upgrade, или даже apt-get dist-upgrade, и после перезагрузки (или даже сразу же) обнаружили, что так нельзя. Сервис не стартует, убрана важная нам фича, кто-то падает и т.д. Мы хотим откатиться. Но вот, незадача — куда именно мы не знаем, потому что какая была версия до обновления мы не знаем.
[Питер] Встреча JUG.ru с Олегом Ненашевым из CloudBees — Groovy DSL в Jenkins и Pipeline. Реализации и подводные грабли
2017-12-03 в 9:30, admin, рубрики: configuration-as-code, devops, dsl, groovy, Groovy & Grails, java, Jenkins, Блог компании JUG.ru GroupВ понедельник, 4 декабря, в офисе компании Oracle состоится встреча с Олегом Ненашевым, разработчиком в компании CloudBees, которая является одним из основных контрибьюторов Jenkins. Тема встречи — Groovy DSL в Jenkins и Pipeline.
Несмотря на появление новых средств CI/CD, Jenkins остается одним из наиболее популярных серверов автоматизации. Он фактически является распределенным веб-сервисом и предоставляет различные DSL, в том числе с доступом к JVM и внутренним API. Давать такой доступ нужно аккуратно, а то в продакшне будет мучительно больно: security, UX, performance, и т.д. О предотвращении этой боли и пойдет разговор.
Олег расскажет:
- как в Jenkins реализованы Groovy DSL и почему их так много;
- как в Jenkins Pipeline реализованы Groovy Sandbox, доступ к API Java, Script Security и персистентность контекста при рестарте;
- какие архитектурные проблемы это вызывает;
- как можно при всем этом расширять и поддерживать DSL для частных задач.
Знаю, он не идеальный, но по крайней мере я попытаюсь рассказать, как его к этому приблизить.
В одну заметку всё не войдёт, поэтому сначала план:
- Постановка задачи — описание той конфигурации проектов с которой мы будем работать, целей и проблем
- Как настроить мавен для разработки в рамках нашей задачи
- Как настроить CI/CD (билды, релизы, деплоймент)
- Нерешенные проблемы
Задача
Итак, начнем с постановки задачи. Предположим у нас есть группа людей (компания, фирма, кружок), которые разрабатывают проекты на Java. При этом у них есть как проекты с открытым кодом (OSS), так и проекты с закрытым кодом. Проекты, назовём их внутренние, разрабатываются независимо друг от друга, но между ними есть зависимости. Что хочется:
- Централизованное управление зависимостями на внешние библиотеки
- OSS проекты в центральном мавен репозитории
- Закрытые проекты в своём мавен репозитории.
- «Простой» релиз внутренних проектов с обновлением зависимости в зависимых проектах.
- Максимальная автоматизация всех хотелок.