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

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

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

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

Вышел GitLab 14.5 с SAST-сканированием инфраструктуры как кода и групповыми настройками подтверждений мерж-реквестов

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

Заголовок: Вышел GitLab 14.5 с SAST-сканированием инфраструктуры как кода и групповыми настройками подтверждений мерж-реквестов
Автор оригинала: Jackie Porter, GitLab
Ссылка на оригинал


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


Мы рады объявить о выходе нового релиза GitLab 14.5, включающего сканирование безопасности инфраструктуры как кода, групповые настройки подтверждения мерж-реквестов (в русской локализации GitLab «запросы на слияние»), GitLab Kubernetes Agent для бесплатных планов, темы проектов и многое другое!

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

Как сделать заоблачный GitLab CI при помощи SberCloud.Advanced — опыт сервиса Rabota.ru

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

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

Первое время мы строили решения на собственной «железной» инфраструктуре с LXC-контейнерами. Но мы довольно быстро обнаружили, что она перестала справляться с нагрузкой и только тормозила развитие. Чтобы исправить ситуацию, мы перешли в облако SberCloud.Advanced. Сегодня покажу, как выглядит наша инфраструктура, и как мы ей управляем. Также расскажу об инструменте для сontinuous deployment (CD) в Kubernetes — Helmwave.

Всех заинтересовавшихся приглашаю под кат.

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

werf v1.2 — стабильный релиз Open Source-утилиты для доставки приложений в Kubernetes

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

werf — это CLI-утилита с открытым кодом для сборки приложений и их деплоя в Kubernetes. С версией v1.2 она получила множество изменений и улучшений, которые мы так тщательно тестировали и дорабатывали, что релиз долгое время — с января 2021-го — находился в статусе Early-Access. Наконец, мы рады объявить о его переводе в категорию Stable!

Эта статья представляет актуальную версию werf, рассказывая о её предназначении и основных принципах работы.

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

Когда Marlin встретил ВСК

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

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

Читать далее
Рейтинг0
Комментарии0

Истории

Осваиваем кросс-компиляцию с помощью Clang и LLVM

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

Каждый, кто когда-либо пробовал собрать программу на C/C++ через кросс-компиляцию знает, насколько болезненным может быть этот процесс. Главными причинами столь печального положения вещей являются недружелюбность систем сборки при конфигурации кросс-компиляции, а также запутанность процесса настройки набора утилит (тулчейна).


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

Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии8

Вышел релиз GitLab 14.4 с запуском DAST-сканирований по расписанию и встроенным отслеживанием ошибок

Время на прочтение13 мин
Количество просмотров2.3K
Читать дальше →
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

TeamCity C# script runner

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

На операционных системах Windows администраторы традиционно используют PowerShell как средство автоматизации. Хотя PowerShell имеет .NET в своей основе, синтаксис его сценариев отличается от языка C#, к которому привыкли разработчики .NET, многие из которых занимаются и настройкой сборок. Для них альтернативой сценариям PowerShell могут быть сценарии C#, синтаксис которых практически идентичен синтаксису C#. В TeamCity 2021.2 появился специальный раннер для их поддержки.

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

Python как инструмент сборки

Время на прочтение7 мин
Количество просмотров9.3K
Предлагаем вашему вниманию перевод поста Никиты Прокопова, разрабочика с 15-летним стажем.

image Обычно, начиная проект на Java (или любой другой проект), вы не хотите заново изобретать колесо. Вы де-факто выбираете систему сборки, структуру папок, окружение и т.д. То, что использует весь остальной мир.

Тем не менее, и Skija, и JWM сделаны с помощью скриптов Python вместо более традиционных Ant/Maven/Gradle/SBT. Почему? Давайте узнаем!

Maven


Когда мы только начинали Skija, я использовал Maven, потому что хорошо его знал. Очень скоро мы столкнулись с ограничениями Maven: это очень жесткая система. Он хорошо работает на стандартных проектах, но когда вам нужно что-то дополнительное, он становится препятствием.

А у нас был очень нестандартный проект. Skija — это проект 50/50 из Java и C++. Мы создаем нативные артефакты и упаковываем их в JAR-файлы. У нас есть несколько разных JAR, собранных из одного источника (по одному на платформу). Мы также предварительно обрабатываем исходники Java с помощью Lombok перед их компиляцией.

Забавный факт: единственной IDE, которая поддерживает одновременную разработку на Java и C++, является Android Studio. Нет, мы не были готовы пойти на эту жертву.


С каждым усложнением я упорно боролся за то, чтобы все работало с Maven. Но его негибкость делала простые вещи чрезвычайно сложными. Например, я не мог контролировать, какие файлы из каталога должны попасть в JAR, а какие нет. Я не мог указать в каком каталоге их искать.
Читать дальше →
Всего голосов 8: ↑6 и ↓2+4
Комментарии13

Автоматизация наполнения Changelog через CI

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

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

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

Как мы ускорили сборку CAD-программы на С++ в несколько раз

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

Если вы пишете на C++, то скорее всего сталкивались с тем, что компиляция, кодогенерация и компоновка проектов, написанных на нём, занимают время и с развитием проекта начинают мешать как CI конвейеру так и итерации разработки на рабочем месте. Наша команда не понаслышке знает об этих проблемах, и в этой статье мы хотим поделиться опытом внедрения широко известного в узких кругах инструмента - сборочной системы FASTBuild.

Подробнее про ускорение
Всего голосов 17: ↑17 и ↓0+17
Комментарии9

Вышел релиз GitLab 14.3 с правилами сканирований безопасности для проекта и SAST нового поколения

Время на прочтение16 мин
Количество просмотров2.5K
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Laconic POM для Maven: скрываем многословность pom.xml

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

Зачастую, одна из претензий к Maven - выбор многословного XML для описания проекта. Polyglot for Maven должен был решить эту проблему, но проект не "взлетел". Для буквального сокрытия этой проблемы существует IDEA-плагин Laconic POM.

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

Тайные знания: библиотеки для С++

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

Рун не должен резать
Тот, кто в них не смыслит.
В непонятных знаках
Всякий может сбиться.
Десять знаков тайных
Я прочел и знаю...(Сага об Эгиле)

Многие начинающие программисты, уже освоив синтаксис C++, обнаруживают, что нет простого способа, как подключить библиотеку, так и собрать программу для другой ОС, или чего хуже, под другим компьютером с той же ОС. Эта проблема отчасти порождается спорной практикой обучения, когда код учат писать и запускать лишь средствами IDE, таких как Visual Studio, Code::Blocks, и других.
Поначалу такой подход работает, но лишь до первой реальной задачи сделать что-то, что запустится не только на вашей машине. Тут-то новички и сталкиваются с отсутствием стандартной системы сборки и менеджера зависимостей. После осознания этой сложности, большинство студентов, как правило, переходят на другие языки, попутно тиражируя в индустрии миф о том, что C++ де не кроссплатформенный язык, а вот мой Python/Java/C# - да.
Между тем нас окружает множество замечательных кроссплатформенных программ написанных на C++. Если вы обучаетесь C++ и хотите понять как создавать такое ПО, то эта статья для вас.

Узнать заклинания кроссплатформености
Всего голосов 11: ↑6 и ↓5+1
Комментарии34

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

Подружить QtTest с GCOV/LCOV для покрытия кода используя сборочную систему QBS

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

Интеграция утилит покрытия кода gcov/lcov в проект на базе сборочной системы QBS.

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

Компактные Vue компоненты из самописных SVG иконок

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


История вопроса


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


Мне уже давно и прочно нравится мир Vue. Особенно завораживает скорость, с которой в нём рождаются новые возможности писать код более лёгким и понятным. Недавно появились Composition API, VueUse, Vite… По ходу освоения этих новых инструментов я нашёл шаблон Vitesse, буквально насыщенный удобными средствами — и для управления макетами (layout), и для маршрутизации, и для локализации и ещё для много чего… Возможно, есть смысл написать отдельный обзор этого арсенала по русски (чего в Интернете пока ещё нет). Но сейчас речь не об этом.

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

Вышел релиз GitLab 14.2 с бета-версией Build Cloud для macOS и предварительным просмотром Markdown

Время на прочтение22 мин
Количество просмотров2.8K
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии4

Сварные соединения в SOLIDWORKS Simulation

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

Дополнительный модуль SOLIDWORKS Simulation позволяет проводить инженерные расчеты в деталях и сборках. В этой статье мы рассмотрим реализацию сварных соединений на примере небольшой части трубопровода.

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

Как мы переезжали на новую версию GitLab и внедряли LFS. А потом чинили бэкапы

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

Исторически мы использовали GitLab 8, который работал на хосте Mac на VirtualBox. Потом конфигурация перестала устраивать, поэтому в локальной сети завели отдельную полноценную Ubuntu-машину. Заодно и GitLab обновили до версии 11.2.1-ee.

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

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

Вышел релиз GitLab 14.1 с реестром Helm Chart и правилами эскалации

Время на прочтение27 мин
Количество просмотров4K
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии1

Анализ сборки с соединениями в SOLIDWORKS Simulation

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

Дополнительный модуль SOLIDWORKS Simulation позволяет проводить инженерные расчеты в деталях и сборках. В этой статье мы рассмотрим некоторые соединения для сборок и покажем, чем они отличаются и как выбор соединения влияет на результаты перемещения.

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

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

Работа

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