25 февраля 2018 года вышел релиз webpack 4.0.0 (и на сегодняшний день 4.0.1). Одна из полезных и сравнительно новых фич webpack — code splitting, перенесена в новой версии из плагинов в основную конфигурацию. При практически полном отсутствии документации, как теперь нужно конфигурировать code splitting в версии 4 — я немного испытал шок, но все же попытался собрать информацию, чтобы по минимуму начать работать с новой версией. Я надеюсь, что через некоторое время появятся и обстоятельные tutorials, и статьи. Пока же спешу сделать заметки по найденной информации, чтобы не потерять ее на просторах интернета.
Читать полностью »
Рубрика «системы сборки» - 10
Webpack 4 и code splitting
2018-03-03 в 1:57, admin, рубрики: es2017, javascript, node.js, webpack, webpack 4, веб-дизайн, системы сборкиЛучшие практики CI-CD с Kubernetes и GitLab (обзор и видео доклада)
2017-12-22 в 8:26, admin, рубрики: continuous delivery, devops, gitlab, gitlab ci, kubernetes, Блог компании Флант, Серверное администрирование, системное администрирование, системы сборки, Флант
7 ноября на конференции HighLoad++ 2017, в секции «DevOps и эксплуатация» прозвучал доклад «Лучшие практики CI/CD с Kubernetes и GitLab». В нём мы делимся практическим опытом решения проблем, возникающих при построении эффективного процесса CI/CD на базе указанных Open Source-решений.
По традиции рады представить видео с докладом (около часа, гораздо информативнее статьи) и основную выжимку в текстовом виде.Читать полностью »
Вышел GitLab 10.2: Настраиваемые доски задач и GitLab Geo в общем доступе
2017-12-08 в 5:08, admin, рубрики: Git, gitlab, open source, softmart, системы сборки, Системы управления версиями
В данном релизе мы добавили возможности по улучшению планирования, развертывания, надежности и многое другое.
Почему repository в pom.xml — плохая идея
2017-12-05 в 11:05, admin, рубрики: enterprise, java, maven, nexus, байка, Блог компании ГК ЛАНИТ, Программирование, системы сборкиГде-то полгода назад я опубликовал туториал, посвящённый добавлению в проект библиотек, которых нет в репозиториях maven. Речь шла о маленьких проектах, и я порекомендовал ставить тег repository прямо в pom.xml, чтобы можно было собирать проект без необходимости править settings.xml.
В комментариях этот подход критиковали sshikov, igor_suhorukov, jbaruch и многие другие. Там же в комментариях мне дали ссылку на статью Брайана Фокса, в которой чётко и понятно изложено, чем чреваты repository в pom.xml. Статья 2009 года, но не потеряла актуальности до сих пор. Перевода на Хабре я не нашел — поэтому предлагаю вашему вниманию свой.
Как мы настраивали процесс CI-CD для наших SOA-проектов
2017-11-13 в 16:58, admin, рубрики: Ansible, automatization, build management, configuration management, continuos integration, continuous delivery, devops, django, docker, Jenkins, python, системы сборки
Хотел бы поделиться опытом настройки CI/CD в нашей компании, плюс, послушать советы, если у вас похожая структура проектов.
Кому, как мне кажется, данная статья может оказаться полезной:
— ваши проекты содержат несколько отдельных репозиториев с приложениями;
— вы хотите быть уверены, что каждый репозиторий проходит тесты;
— вы хотите быть уверены в совместимости версий между репозиториями;
— вы ещё не успели, но планируете, перевести свои проекты на докер;
— хотите посмотреть пару playbook'ов Ansible.
Читать полностью »
Полное руководство по написанию утилиты для Go
2017-11-07 в 15:34, admin, рубрики: Go, golang, open source, Анализ и проектирование систем, Блог компании Mail.Ru Group, никто не читает теги, системы сборки
Некоторое время назад я начал делать утилиту, которая упростила бы мне жизнь. Она называется gomodifytags. Утилита автоматически заполняет поля структурных тегов (struct tag) с помощью имён полей. Пример:
Эта утилита облегчает управление многочисленными полями структуры. Она умеет добавлять и удалять теги, управлять их опциями (например, omitempty), определять правила трансформации (snake_case, camelCase и пр.) и многое другое. Как эта утилита работает? Какие Go-пакеты она использует? Наверное, у вас есть много вопросов.
В этой очень длинной статье я подробно расскажу о том, как написать и собрать такую утилиту. Здесь вы найдёте много советов и хитростей, а также кода на Go.
Налейте кофе и начинайте читать!
Пошаговое руководство работы с Antlr4 с Maven проектом для Java через Intellij Idea
2017-11-07 в 8:31, admin, рубрики: antlr, intellij idea, java, java 8, maven, oracle, системы сборкиANTLR — это генератор парсеров, который позволяет создавать парсер по описанию грамматики на одном из основных языков программирования. Он сам написан на java и прекрасно работает с Java.
Пошаговое руководство:
1) Поставить Oracle Java JDK и Intellij Idea, (можно пропустить этот шаг, если они уже поставлены), и запустить Intellij Idea
2) File-Setting-Plugins
Вышел GitLab 10.1: комментирование изображений и блокировка неподписанных коммитов
2017-11-01 в 10:08, admin, рубрики: continuous delivery, continuous deployment, continuous integration, Git, gitlab, open source, Блог компании Softmart, системы сборки, Системы управления версиями
Καλημέρα! (Доброе утро!) В этот раз мы приветствуем вас из греческого города Гераклиона.
С самого начала работы над GitLab мы стремимся создать инструмент, позволяющий каждому внести свой вклад. С каждым релизом мы становимся на шаг ближе к этой цели. В GitLab 10.1 появились новые инструменты для совместной работы, повысилась безопасность, улучшился механизм аутентификации, производительность выросла, а интерфейс стал еще удобнее.Читать полностью »
Объясняем современный JavaScript динозавру
2017-10-27 в 11:47, admin, рубрики: javascript, node.js, Блог компании Mail.Ru Group, никто не читает теги, Разработка веб-сайтов, системы сборки
Если вы не изучали JavaScript с самого начала, то осваивать его современную версию сложно. Экосистема быстро растёт и меняется, так что трудно разобраться с проблемами, для решения которых придуманы разные инструменты. Я начал программировать в 1998-м, но начал понимать JavaScript только в 2014-м. Помню, как просматривал Browserify и смотрел на его слоган:
Browserify позволяет делать require («модули») в браузере, объединяя все ваши зависимости
Я не понял ни слова из предложения и стал разбираться, как это может помочь мне как разработчику.
Цель статьи — рассказать о контексте, в котором инструменты в JavaScript развивались вплоть до 2017-го. Начнём с самого начала и будем делать сайт, как это делали бы динозавры — безо всяких инструментов, на чистом HTML и JavaScript. Постепенно станем вводить разные инструменты, поочерёдно рассматривая решаемые ими проблемы. Благодаря историческому контексту вы сможете адаптироваться к постоянно меняющемуся ландшафту JavaScript и понять его.
Сборка проектов с GitLab CI: один .gitlab-ci.yml для сотни приложений
2017-10-26 в 8:02, admin, рубрики: continuous integration, devops, Git, gitlab, gitlab ci, Блог компании Флант, системы сборки
В статье решается задача управления описанием сборки для большого количества однотипных приложений. Чтобы в проекте заработал GitLab CI, нужно в репозиторий добавить файл .gitlab-ci.yml
. Но что, если в сотне репозиториев это файл с одинаковым содержимым? Даже если разложить его по репозиториям один раз, то как его потом изменять? А что, если одного .gitlab-ci.yml
мало для сборки — нужны Dockerfile
или Dappfile
, разные скрипты и структура YAML-файлов для Helm? Как обновлять их?
С чего начать решение задачи по сборке сотни однотипных приложений? Конечно же, посмотреть, можно ли GitLab CI указать использовать .gitlab-ci.yml
из другого репозитория или компоновать .gitlab-ci.yml
из файлов в других репозиториях…Читать полностью »