Как стать автором
Обновить
4.6

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

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

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

Путь в GitOps или как мы перевели кластер Kubernetes под управление Argo CD

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

Всем привет! Если вы работаете с Kubernetes, то, скорее всего, используете kubectl, kustomize или Helm для развёртывания сервисов в кластере. Про последнюю утилиту я уже писал статью — можно посмотреть тут. Тогда я рассказал о своём опыте внедрения этого инструмента для собственных нагрузок и сравнил подходы kubectl apply и helm install.

Управление конфигурацией в Kubernetes может осуществляться с помощью различных инструментов. Помимо Helm, можно использовать просто YAML-манифесты или же kustomize. Для каждого из этих инструментов предусмотрена своя команда.

В данной статье мы рассмотрим подход GitOps для K8s-кластеров и применим такой инструмент, как Argo CD.

Читать далее
Всего голосов 12: ↑12 и ↓0+17
Комментарии8

Новости

Дымовая Завеса в Eclipse IDE

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.7K

Прошивки часто пишут в Eclipse.

В Eclipse есть такая возможность как серая дымка неиспользуемых сейчас кусков кода. Якобы то, что не используется в коде визуально становится серой зоной отчуждения.

Именно этот аргумент огромная fun база Eclipse плагинов и приводит в качестве главного за Eclipse плагины.

В этом же тексте я написал как активировать эту пресловутую опцию даже при сборке сторонними скриптами. Причем любыми.

Читать далее
Всего голосов 7: ↑3 и ↓4+3
Комментарии21

Интеграция clang-format в Процесс Сборки

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.9K

Есть такая тема, как автоматическое выравнивание отступов в исходных текстах программ на Си или С++. Притом для этого есть специальные утилиты. Например clang-format или GNU indent.

В этом тексте я написал, как встроить процесс выравнивания исходных кодов прямо в систему сборки проекта.

Цель данного текста- показать, как интегрировать clang-format в процесс сборки прошивки. Просто в одно касание и выровнять код, и собрать бинари.

Читать далее
Всего голосов 14: ↑5 и ↓9+2
Комментарии25

Как Проинициализировать Микроконтроллер [часть 2]

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров4.1K

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

В этом тексте я написал как автоматически выявить правильную последовательность инициализации

Читать далее
Всего голосов 11: ↑7 и ↓4+8
Комментарии27

Истории

Искусство сетапа: автоматизируем подготовку стека под новые проекты

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров2.4K

Привет, меня зовут Грант, я фронтенд-разработчик в KTS. В этой статье я хочу поделиться опытом заведения проектов от нашей команды.

Читать далее
Всего голосов 34: ↑34 и ↓0+36
Комментарии9

Пайплайны Gitlab CI: моя коллекция граблей

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров9.6K

Привет, Хабр! Я Евгений Малышев, SRE-инженер в Купере (так теперь называется СберМаркет). Моя основная задача — это надежная работа сервисов фронтенда, и немалую роль в этом играют правильно построенные пайплайны CI/CD. В этом нам помогает Gitlab CI. В компании мы широко используем этот инструмент для создания общих шаблонов для сервисов на различных языках. На уровне отдельного репозитория легко расширить или настроить шаблонные джобы и добавить свои.

До этого у меня был опыт с Jenkins и Azure Devops, так что Gitlab CI мне показался довольно простым: есть стадии, есть правила запуска джоб с shell-подобным синтаксисом, да и скрипты джоб тоже используют bash-интерпретатор. Но в процессе близкого знакомства не раз возникали ситуации, когда поднимается то одна бровь, то обе, а то и руки в праведном гневе. Заходите посмотреть, какую коллекцию граблей собрал я.

Весь код с примерами граблей можно посмотреть в репозитории.

Пройтись по граблям
Всего голосов 28: ↑23 и ↓5+23
Комментарии9

Вышел релиз GitLab 17.0 с каталогом CI/CD в общем доступе и новой метрикой аналитики цикла разработки AI Impact

Уровень сложностиСредний
Время на прочтение28 мин
Количество просмотров3.5K
Читать дальше →
Всего голосов 4: ↑4 и ↓0+6
Комментарии10

Создаем собственные линтеры в Rust с DyLint

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.4K

Привет, Хабр!

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

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

Читать далее
Всего голосов 9: ↑9 и ↓0+12
Комментарии0

Дневник альтруиста. dfu-util

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров1.5K

В данной статье я рассмотрю подключение утилиты dfu‑util, написанную на языке С, к С++ проекту на CMake в виде сабмодуля.

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

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

* Превью сгенерировано с помощью Adobe Firefly

Читать дальше ->
Всего голосов 6: ↑5 и ↓1+6
Комментарии7

Как создать свой сборщик проектов

Уровень сложностиСредний
Время на прочтение23 мин
Количество просмотров6.8K

В данной статье предлагаю рассмотреть историю создания мной сборщика Java проектов под названием Conveyor (https://github.com/maximtereshchenko/conveyor): опыт написания проекта сложности выше средней, различные проблемы, причины принятия технических решений, примеры использования шаблонов проектирования

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии4

Вышел релиз GitLab 16.11 с GitLab Duo Chat в общем доступе

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров2K
Читать дальше →
Всего голосов 3: ↑2 и ↓1+2
Комментарии0

Вселенная кода, доступная каждому: презентация GitVerse

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

Привет, Хабр! На связи Андрей Аврамчук (@Mimizavr). Недавно я побывал на онлайн-презентации GitVerse — платформы для совместной разработки и хостинга кода. Планируется, что она станет инструментом нового поколения, избавляющим разработчика от многих болей. Под катом вы узнаете:

— Чем GitVerse может помочь открытому ПО.

— Почему перенос своих проектов на платформу — это легко и приятно.

— Куда спрятаться от ИИ (спойлер: никуда).

— Умеет ли GitVerse в CI/CD.

— И наконец, какие есть причины смотреть в будущее с оптимизмом.

Читать далее
Всего голосов 46: ↑28 и ↓18+29
Комментарии66

Безопасный Continuous Deployment БД по принципам DB-First

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров3.6K

В статье рассматривается Continuous Deployment для БД с бесшовными релизами за счёт обратно-совместимых обновлений и автоматизации проверок совместимости с помощью подхода DB-First.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии8

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

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн

Rolldown — новый сборщик на основе Rollup

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

Rollup - это лучший и наиболее полный сборщик на сегодняшний день. Он опередил свое время, став первопроходцем в таких ключевых концепциях, как tree shaking, и до сих пор ему нет равных в этом отношении. Когда Эван Ю представил Vite - Rollup был краеугольным камнем процесса сборки. Плагины Vite - это (по большей части) плагины Rollup.

Читать далее
Всего голосов 6: ↑4 и ↓2+3
Комментарии0

Вышел релиз GitLab 16.10 с семантическим версионированием каталога CI/CD

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров5.3K
Читать дальше →
Всего голосов 6: ↑6 и ↓0+7
Комментарии0

Замена мотора на дорожке LifeSpan Fitness TR5000

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.5K

Несколько внеочередная заметка... Со времён Короны я работаю дома на подстольной дорожке. Когда я искал что же купить, я наткнулся на небольшой местный магазинчик FitOffice, где выбор был TR1200 или TR5000. По отзывам обе хороши, но одна требует регулярного смазывания и предполагает использование на несколько часов в день -- а вторая не требует смазывания и подходит для ходьбы хоть весь день. Жена настояла на второй :)

Если вкратце, то за 4 года использования, я находил на ней всего около 10 тысяч км, но она начала шуметь до невозможности -- по замерам телефона более 60 дБ на 5км/ч, да еще с жуткой высокочастотной составляющей, которая делала шум еще хуже. Ну то есть я мог за ней работать (стол экранировал от прямого шума), но шум рядом с ней становился отвратительным.

Официальный суппорт по почте сказал мне "это нормально" -- а FitOffice сказали что это похоже на проблему мотора -- аналогично высказался кто-то на reddit, да и на мой слух звучало как проблема какого-то из подшипников. В качестве простой меры мне предложили поменять щётки мотора, эту инструкцию я нашел (осторожно: видео). Но щетки оказались почти не израсходованными (меньше 1мм съелось), и на звук замена не повлияла. Осталась опция только замены мотора.

Учитывая, что дорожка уже за гарантией, а замена сама выглядела как простое дело -- я решил поменять его сам, хоть и не нашел никакой инструкции. Так что теперь заполняю этот вакуум :)

Учтите: я тыжпрограммист и не должен уметь менять моторы. Ну то есть заменить мотор в дорожке я могу, но не потому, что тыжпрограммист. Если решитесь что-то делать по инструкции, делайте это на свой страх и риск и действуйте по обстоятельствам! Я не мастер и эта инструкция нифига не официальная.

Изучить процедуру
Всего голосов 10: ↑8 и ↓2+13
Комментарии15

Сборка приложения для AppStore. Используем Jenkins, Fastlane, TestFlight

Уровень сложностиСложный
Время на прочтение17 мин
Количество просмотров2.9K

Большой туториал настройки CI/CD пайплайна с использованием Jenkins и Fastlane.

Внедрение CI/CD в процесс создания iOS-приложений  позволяет разработчикам сосредоточиться на инновациях и улучшении функциональности приложений, в то время как рутинные процессы выполняются автоматически. Jenkins и Fastlane способны обеспечивать необходимую автоматизацию и гибкость в разработке. Помогают поддерживать высокий стандарт качества при более быстром цикле, что в конечном итоге приводит к созданию лучшего продукта для пользователей.

Читать далее
Всего голосов 3: ↑3 и ↓0+4
Комментарии2

Настраиваем CI/CD с GitHub Actions и werf: инструкция для новичков

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров12K

В этой статье мы рассмотрим, как настроить пайплайн CI/CD в GitHub: подготовим репозиторий, зальём туда приложение, создадим файлы конфигурации GitHub Actions, в которых опишем, как собирать наше приложение и деплоить его в кластер Kubernetes, развёрнутый под управлением Deckhouse Kubernetes Platform. Деплоить будем с помощью Open Source CLI-утилиты werf. Она помогает организовать полный цикл доставки приложений в Kubernetes и рассматривает Git как единый источник истины для состояния развёрнутого приложения. Статья рассчитана на тех, кто только начинает свой путь в мире облаков и кластеризации.

Читать далее
Всего голосов 22: ↑21 и ↓1+26
Комментарии2

Почему Сборка с Помощью Есlipse ARM GCC Плагинов это Тупиковый Путь

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров2.7K

В программировании микроконтроллеров часто используют Eclipse с плагинами.
Главным образом от незнания языков скриптов сборки (Make, Cmake, Ninjia и т п).

В этом тексте я напишут почему способ сборки из Eclipse c ARM плагинами — это тупиковый путь в разработке больших промышленных командных проектов.

И как можно частично компенсировать недостатки Eclipse с плагинами.

Читать далее
Всего голосов 10: ↑5 и ↓5+3
Комментарии22

Автоматическая Генерация Конфигураций для Make Сборок (или Лучшее Программирование — Конфигурирование)

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.3K

При разработке программного обеспечения придется столкнуться с тем, что надо как-то передавать конфигурации для данного проекта.

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

В этом тексте представлен механизм автоматической конфигурации сборки.

Читать далее
Всего голосов 10: ↑8 и ↓2+6
Комментарии13
1
23 ...

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

Работа

DevOps инженер
55 вакансий