Обновить
2.9

Системы сборки *

Системы автоматизации сборки

Сначала показывать
Порог рейтинга
Уровень сложности

Монорепозитории: пожалуйста, не надо (часть 2)

Время на прочтение10 мин
Количество просмотров20K
Всем привет!

Итак, новая порция обещанного холивара про монорепозитории. В первой части мы обсуждали перевод статьи уважаемого инженера из Lyft (и ранее Twitter) о том, какие есть недостатки у монорепозиториев и почему они нивелируют почти все достоинства этого подхода. Лично я во многом согласен с доводами, приведенными в оригинальной статье. Но, как и обещал, чтобы поставить точку в этом обсуждении, я бы хотел озвучить еще несколько моментов, на мой взгляд даже более важных и более практических.
Читать дальше →

Вышел GitLab 11.6 с бессерверными функциями и кластерами Kubernetes для групп

Время на прочтение13 мин
Количество просмотров6.4K

Картинка для привлечения внимания


Мы рады представить релиз GitLab 11.6, в котором мы расширили возможности бессерверной архитектуры на GitLab и добавили групповые кластеры Kubernetes для упрощения работы с нативной облачной инфраструктурой.

Читать дальше →

Вышел GitLab 11.5 с панелями управления для операторов и специалистов по безопасности и контролем доступа GitLab Pages

Время на прочтение19 мин
Количество просмотров6.6K

Картинка для привлечения внимания


Панель управления безопасностью в рамках группы


Разработчики уже давно используют GitLab как инструмент для обеспечения безопасности своего кода. Теперь GitLab дает больше прав и возможностей специалистам, отвечающим за безопасность, так что они могут использовать его для повышения безопасности приложений и обеспечения совместимости. С релизом 11.5, новая панель безопасности группы собирает воедино всю информацию, которая может потребоваться специалистам по безопасности, в удобном виде, разработанном специально для них. Эта панель содержит новые возможности отображения: общий обзор информации о безопасности разных проектов, а также углубленная информация о каждом из них. В 11.5 мы начинаем с отчетов SAST, в дальнейших релизах будем добавлять новые отчеты на эту панель. Наша цель — создать удобный инструмент, единую панель безопасности, которую специалисты по безопасности смогут использовать вместо переключения между множеством инструментов.

Читать дальше →

Azure DevOps бесплатно для маленьких компаний за 1 час

Время на прочтение2 мин
Количество просмотров14K
Доброго времени суток!

Давно хотели внедрить devOps, но не было времени и жалко денег на обслуживание или хотите понять как работает devOps в действии на примере интернет агентства, тогда читаем дальше.

В этой статье рассмотрим как можно без особых технических навыков и множества настроек развернуть бесплатный devops от Azure для своей компании (до 5 разработчиков бесплатно).

image
Читать дальше →

Вышел GitLab 11.4 с ревью мерж-реквестов и подключаемыми фичами

Время на прочтение17 мин
Количество просмотров12K

Картинка для привлечения внимания


Мы рады представить новый релиз GitLab 11.4 с долгожданными обновлениями, призванными помочь командам работать эффективнее. Большинство команд, применяющих DevOps, стремятся к сокращению времени цикла поставки. Поэтому разработчики всегда рады улучшениям, которые уменьшат количество работы и потери во времени, так как за счет этого ускоряется поставка продукта и повышаются бизнес-показатели.

Читать дальше →

Как автоматизировать с Jenkins сборку и раскатку артефактов модели метаданных для таблиц в хранилище

Время на прочтение11 мин
Количество просмотров7.3K
Все началось с того, что мы столкнулись с потребностью быстро и правильно формировать структуры EDWEX, JSON, DDL и затем раскатывать их на разных контурах реляционных БД. Под контурами я подразумеваю знакомые всем аббревиатуры — DEV, TST, UAT, PRD.



На тот момент мы делали практически все вручную: и генерировали DDL, и собирали edwex-ы и json-ы на основе метаданных из Oracle БД. Входных параметров множество. Упустишь один — и некорректно сформируешь сущность. А так как весь процесс формирования был последовательным и непрерывным, то ошибка обнаружится только в самом конце. О том, как мы все автоматизировали и побороли ошибки, читайте под катом.
Читать дальше →

Замедляем Windows, часть 2: создание процессов

Время на прочтение5 мин
Количество просмотров23K


Windows давно упрекают за медлительность файловых операций и создания процессов. А вы когда-нибудь пробовали сделать их ещё медленнее? Эта статья покажет технику, как постепенно замедлять создание процессов в Windows (до бесконечности) незаметно для большинства пользователей!

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

Это реальная проблема, с которой я столкнулся в начале года, и статья объясняет, как я её обнаружил и нашёл обходной путь. Предыдущие статьи о замедлении Windows:

Читать дальше →

Webpack 4 и разделение конфигурационного файла на модули

Время на прочтение3 мин
Количество просмотров19K
Привет, Хабр! Сегодня я расскажу вам о Webpack 4 с разделением кода на отдельные модули, а также о интересных решениях, которые помогут вам быстрее собрать сборку на webpack 4. В конце, я предоставлю свою базовую сборку на webpack c самыми необходимыми инструментами, которую вы в последствие сможете расширить. Данная сборка вам поможет понять данный материал, а также возможно поможет быстрее написать свою реализацию и быстрее решить возможные проблемы.
Читать дальше →

Вышел GitLab 11.3 с репозиторием Maven и защищенными окружениями

Время на прочтение12 мин
Количество просмотров5.8K

Картинка для привлечения внимания


С новым релизом GitLab 11.3 мы рады представить вам поддержку репозиториев Maven, владельцев кода (Code Owners), защищенные окружения и прогнозы для эпиков. Все это поможет автоматизировать управление окружениями и кодом, что позволит разработчикам на Java быть еще эффективнее.

Читать дальше →

Еще один способ использования docker-compose

Время на прочтение4 мин
Количество просмотров10K

По следам статьи Docker + Laravel = ? хочу рассказать о довольно необычном способе использования утилиты docker-compose.


Для начала, для тех кто не знает, зачем нужен docker-compose. Это утилита, которая позволяет запускать на отдельном хосте набор связанных сервисов, запакованных в docker-контейнеры. Изначальная версия была написана на python и могла быть установлена двумя способами:

Читать дальше →

Вышел GitLab 11.2: предпросмотр в Web IDE и импорт проектов под Android

Время на прочтение15 мин
Количество просмотров5.4K

Картинка для привлечения внимания


Мы с воодушевлением представляем вам новые возможности версии 11.2, которые помогут вам быстрее стартовать и выпускать новые версии. В этот раз мы запускаем улучшения для Web IDE, поддержку импорта манифестов Андроид-проектов и настраиваемые шаблоны проектов.

Читать дальше →

Enterprise DevОps: как в большой компании собирают микросервисы

Время на прочтение12 мин
Количество просмотров9.6K

Всем привет!


Компания Netсracker уже много лет разрабатывает и поставляет enterprise-приложения для мирового рынка операторов связи. Разработка таких решений достаточно сложна: в проектах участвуют сотни людей, а количество активных проектов исчисляется десятками.


Раньше продукты были монолитными, но сейчас мы уверенно двигаемся в направлении микросервисных приложений. Перед DevOps появилась достаточно амбициозная задача — обеспечить этот технологический скачок.


В итоге мы получили удачную концепцию сборок, которой хотим поделиться в качестве передовой практики. Описание реализации с техническими деталями будет достаточно объёмным, в рамках данной статьи мы не будем этого делать.

Читать дальше →

Вышел GitLab 11.1: Панель управления безопасностью и улучшенный поиск

Время на прочтение12 мин
Количество просмотров5.2K

image


В GitLab 11.1 мы улучшили отображение безопасности за счёт панелей, усовершенствовали поиск по коду для своевременного получения нужной информации, внесли изменения в UX и многое другое.

Читать дальше →

Ближайшие события

Вышел GitLab 11.0: Auto DevOps и управление лицензиями

Время на прочтение18 мин
Количество просмотров14K

Картинка для привлечения внимания



Создание качественного ПО — непростой процесс. Во-первых, нужно решать бизнес-проблемы и писать качественный код. Однако, на этом сложности не заканчиваются: нужно еще удостовериться в том, что ваш код работает быстро, безопасно и надежно. Работа с кодом — это конвейер из множества этапов, таких как сборка, интеграция, тестирование, обеспечение безопасности, ревью, настройка и развертывание. На выполнение всех этих действий уходит много времени и сил.


Вышел GitLab 10.8: зеркалирование пушей в открытом доступе и инкрементное развертывание

Время на прочтение12 мин
Количество просмотров7.8K

Картинка для привлечения внимания


Мы с радостью представляем вам новую версию GitLab со множеством нововведений и улучшений! В данном релизе мы улучшили автоматизацию релизов, вывели в общий доступ ранее платную функциональность, ускорили исправление уязвимостей безопасности и многое другое.

Читать дальше →

Сборка проектов с dapp. Часть 2: JavaScript (frontend)

Время на прочтение6 мин
Количество просмотров4.9K


Этот материал продолжает цикл о сборке Docker-образов для приложений на различных языках программирования с помощью утилиты dapp. Предыдущая статья была о сборке приложений на Java — теперь же поговорим о приложениях на JavaScript. Для начала это будет frontend-приложение, а в следующей части планируется рассказать о сборке backend'а и запуске всего в Kubernetes.

Обновлено 13 августа 2019 г.: в настоящее время проект dapp переименован в werf, его код переписан на Go, а документация значительно улучшена.

В качестве иллюстрации будут использованы приложения nodejs-pool и poolui. Да-да, подготовим к запуску в Kubernetes свой майнинг-пул с блокчейном и выплатами!
Читать дальше →

Вышел GitLab 10.7: Web IDE в открытом доступе и отчеты SAST для Go и C/C++

Время на прочтение14 мин
Количество просмотров7.1K

Картинка для привлечения внимания


Добавление новой функциональности, ревью изменений и развертывание кода — все это стандартные рабочие процессы, с которыми ежедневно сталкиваются разработчики. С выходом данного релиза мы упрощаем их выполнение с помощью нашего Web IDE, более гибких конвейеров, дополнительного тестирования безопасности и многого другого.


Читать дальше →

Возможности dapp, которые делают жизнь проще

Время на прочтение5 мин
Количество просмотров5.3K

В статье представлен (и продемонстрирован в коротких видеороликах) инструментарий, облегчающий разработку и отладку конфигураций с dapp — Open Source-утилитой, которую мы ежедневно используем при построении и сопровождении процессов CI/CD.


Обновлено 13 августа 2019 г.: в настоящее время проект dapp переименован в werf, его код переписан на Go, а документация значительно улучшена.


Читать дальше →

Сделаем Windows медленнее! Часть первая: файловый доступ

Время на прочтение7 мин
Количество просмотров43K
imageОС Windows долгое время попрекали за медлительность её файловых операций и медленное создание процессов. А почему бы не попробовать сделать их ещё более медленными? Эта статья покажет способы замедления файловых операций в Windows примерно в 10 раз от их нормальной скорости (или даже больше), причём способы эти практически не поддаются отслеживанию обычным пользователем.

А ещё, конечно же, мы научимся подобные ситуации обнаруживать и исправлять. Весь текст написан на основе проблемы, с которой я столкнулся пару месяцев назад, так что всё, написанное ниже, полностью реально.
Читать дальше →

Для чего программисту Continuous Integration и с чего начинать

Время на прочтение8 мин
Количество просмотров53K
Представьте что в Роскосмосе решили собрать новую ракету не имея при этом чертежей и четкого понимания как ракета должна быть устроена. Отдельный завод занимается корпусом ракеты, отдельный выпускает двигатели, еще один — сопла. Главный менеджер Роскосмоса сказал что он доверяет профессионалам, и мастерски сделегировал всю работу заводам.



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

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

При разработке ПО мы не можем себе позволить долгий этап проектирования, т.к. за это время потеряется бизнес-ценность того что мы пытаемся разработать — нас тупо обойдут конкуренты.

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

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

В 1991 году Гради Буч, видимо, устал от такого безобразия, и предложил делать сборку всего проекта каждый день, чтобы выяснять несовместимости не в день релиза, а пораньше — и назвал этот подход Continuous Integration.
Читать дальше →

Вклад авторов