Pull to refresh
  • by relevance
  • by date
  • by rating

TeamCity 2020.1: условия выполнения билд-шагов, запуск билд-агентов в Kubernetes, новые интеграции и нотификации

JetBrains corporate blog IT systems testing *Server Administration *DevOps *
Привет, Хабр! На прошлой неделе мы выпустили TeamCity 2020.1 — новую версию CI/CD-сервера от JetBrains. В этом посте я хочу рассказать, что в ней появилось интересного.


Читать дальше →
Total votes 11: ↑11 and ↓0 +11
Views 2.7K
Comments 7

Вышел релиз GitLab 13.5 с обновлениями для безопасности мобильных приложений и вики-страницами групп

GitLab corporate blog Open source *Git *Version control systems *DevOps *


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

Читать дальше →
Total votes 3: ↑3 and ↓0 +3
Views 1.4K
Comments 1

Вышел релиз GitLab 13.6 с автоматическим развёртыванием в EC2 и статистикой использования для инстанса

GitLab corporate blog Open source *Git *Version control systems *DevOps *


Команда GitLab стремится к повышению производительности и степени удовлетворённости разработчиков. Релиз 13.6 содержит все необходимые ингредиенты, которые помогут вам достичь этого и, возможно, чего-то ещё! Мы надеемся, что вам пригодятся основные фичи релиза, а также ещё более 60 новых фич и улучшений, добавленных в этом релизе.
Читать дальше →
Total votes 4: ↑4 and ↓0 +4
Views 757
Comments 0

Вышел релиз GitLab 13.7 с проверяющими для мерж-реквестов и автоматическим откатом при сбое

GitLab corporate blog Open source *Git *Version control systems *DevOps *


Ну и год же был 2020! Мы счастливы представить релиз 13.7 с более чем 45 фичами и улучшениями поставки ПО, вышедший как раз к праздникам.

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

Благодарим вас и всех членов команды GitLab, которые помогли сделать 2020 год невероятным, несмотря на невзгоды и непредсказуемые обстоятельства. Пожалуйста, оставайтесь в безопасности, будьте счастливы и здоровы в этот праздничный период.
Читать дальше →
Total votes 10: ↑9 and ↓1 +8
Views 3.1K
Comments 3

Вышел релиз GitLab 13.9 с панелью оповещений безопасности и режимом обслуживания

GitLab corporate blog Git *Version control systems *Build automation *DevOps *


GitLab 13.9 уже доступен — с улучшениями DevSecOps, панелью оповещений безопасности для обработки приоритетных уведомлений, режимом обслуживания для постоянной поддержки распределённых команд, улучшенной видимостью, включая расширенную поддержку метрик DORA, а также продвинутыми возможностями автоматизации, которые помогут вам поставлять более качественные продукты быстрее. Это лишь некоторые из более чем 60 новых фич и улучшений в этом релизе.
Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 1.9K
Comments 2

Прикрепите банковскую карту. GitLab рассказал, как будет бороться с злоупотреблениями майнингом в инструментах CI

Git *Cryptocurrencies IT-companies


17 мая 2021 года GitLab объявил, что новые пользователи сервиса должны предоставить данные своей банковской карты для получения бесплатного доступа к ресурсам инструментария CI/CD. Только в этом случае будут доступны 400 бесплатных минут для работы с конвейером. Без этого им не будут доступны общие раннеры на GitLab.com. Это сделано в рамках борьбы с многочисленными злоупотреблениями майнингом в инструментарии непрерывной интеграции, доставки и развертывания.
Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Views 7.3K
Comments 14

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

GitLab corporate blog Git *Version control systems *Build automation *DevOps *

Мы рады представить вам релиз GitLab 14.1 с возможностью собирать, публиковать и распространять Helm-чартысоздавать правила эскалации для ответственных за страницуподключать обработчики заданий GitLab к вашим кластерам Kubernetesобеспечивать соблюдение решений по покрытию кода и многим другим!

Это — лишь несколько основных из более чем 50 улучшений в этом релизе. Читайте далее, и вы узнаете всё об этих новых фичах. Чтобы узнать, что будет в следующем месяце, зайдите на страницу предстоящих релизов, там вы найдёте видео по будущему релизу 14.2.

А также...

Читать далее
Total votes 12: ↑11 and ↓1 +10
Views 1.7K
Comments 1

Asset helper в CodeIgniter

Lumber room
С помощью этой штуки чертовски удобно управлять материалами (ассетами) сайта, которые представляют из себя статические файлы, не связанные с фреймворком: CSS-стили, JavaScript-файлы, картинки. Создаём папку assets в корне проекта, в этой папке создаем следующие папки:

Читать дальше →
Total votes 10: ↑5 and ↓5 0
Views 320
Comments 4

Отправка почты в CodeIgniter

CodeIgniter *
Известно, что при отправке почты в CodeIgniter с использованием встроенной библиотеки email русские буквы в заголовках могут отображаться некорректно. Русский текст в заголовках сообщения необходимо кодировать вручную. У меня это реализовано так:

Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Views 5.3K
Comments 3

Фреймворк Kohana — впечатления от использования

Kohana *
Приветствую тебя, Хабрачеловек.

KohanaПолторы недели я пишу небольшой проект на Kohana. Сегодня решил немного рассказать об этом замечательном PHP-фреймворке и некоторых его особенностях, а также поделиться субъективными впечатлениями от работы. Надеюсь, кому-нибудь этот пост окажется полезен, особенно учитывая тот факт, что информации о Кохане в сети пока очень мало.

Итак.
Читать дальше →
Total votes 62: ↑53 and ↓9 +44
Views 15K
Comments 79

Программирование: Практики которые я возьму с собой

GTD *
Я имею довольно небольшой опыт работы в сфере разработки программного обеспечения (всего 6 лет), но я уже накопил ряд полезных и правильных практик (по моему скромному мнению), которые можно использовать при создании программного обеспечения.

В основном описаны моменты которые касаются поддержки процесса разработки программного обеспечения, не затрагиваются темы планирования хода выполнения работ. Также не затронут процесс программирования и полезные плюшки для него (например расслоение системы на уровни, использование шаблонов проектирования). Но все ниже приведенное было и остается полезным для меня лично, и я буду рад если и вам на что нибудь сгодится :)
Читать дальше →
Total votes 104: ↑82 and ↓22 +60
Views 2.2K
Comments 40

Автоматизация сборки web-приложения на платформе .NET

.NET *
NAnt logo
Добрый день!

Я попробовал описать здесь свой опыт автоматизации сборки приложений .NET (в основном, речь идет о web-приложениях).

Т.к. получилось много букв пришлось разбить статью две на части. Сейчас выкладываю первую часть, если это будет нужно кому-то, выложу остальное. Не пинайте сильно.

Читать дальше →
Total votes 49: ↑39 and ↓10 +29
Views 7.8K
Comments 28

Непрерывная интеграция на примере Hudson

IT systems testing *
Все мы прекрасно понимаем, что тестирование является неотъемлемой частью жизненного цикла разработки ПО. Чем чаще мы тестируем наш код, тем быстрее мы сможем обнаружить ошибку, вкравшуюся в него в ходе разработки, и быстрее её исправить. При этом стоит понимать, что тестирование крайне желательно проводить в окружении, максимально близком к боевому (ОС, ПО, Hardware, Нагрузка), что бы иметь возможность обнаружить ошибки, которые не проявляются на сервере разработки, но могут появиться в бою. Компануя два вышесказанных тезиса вместе мы получаем концепцию, называемую Continuous Integration.

Суть CI заключается в постоянной (например, после каждого commit'а) сборке и тестировании разрабатываемого ПО в максимально приближенной к боевой среде с целью как можно более раннего обнаружения ошибок и оповещения о них разработчиков. Сама идея CI принадлежит Martin Fowler, подробно описавшему её в своей статье.

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

Читать дальше →
Total votes 40: ↑38 and ↓2 +36
Views 32K
Comments 21

Непрерывное тестирование питонопроекта

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

Я уже некоторое время ковыряю TDD и задача постоянного контроля качества для меня становится всё актуальней. Особенно при пополнении команды новыми разработчиками.

Сначала я запускал тесты руками: save, switch, $ nosetests. Потом к тестам добавились проверялки качества кода и пришлось всё засунуть в скрипт:
pyflakes *.py
pep8 *.py
pylint *.py
nosetests


Скрипт запускать каждый раз ужасно лениво, поэтому небольшая оболочка на inotifywait стала запускать тесты и проверки после каждого сохранения:
while true; do
inotifywait -e modify project/*.py -qq; clear
./do_tests
done


Тут я стал более-менее доволен происходящим и даже на некоторое время расслабился. Но ведь программист кроме того, что ленив ещё и горд, поэтому результаты хочется кому-нибудь показать. Чтобы вести историю происходящего (которая очень помогает когда заходит начальник начальника и спрашивает: «ну-с, чем вы занимались последний месяц?») уже есть система контроля версий. Но она показывает только, что сделано и не даёт обзора успешности каждой ревизии. Получается что код лежит, но непонятно в каком он состоянии и что где ещё надо сделать.

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

И тут очень вовремя kmmbvnr@lj выпустил скринкаст, в котором он демонстрировал интеграцию тестирования для django-проектов с сабжем Jenkins (бывш. Hudson). Посмотрел я на все эти красоты, графики и отчёты и тоже захотел чтобы всё само пело и играло. Но у него django-jenkins, как и следует из названия, встраивается в джангу и генерит отчёты используя хитрую систему. Мой проект до джанги не дорос и скорее всего не дорастёт — это достаточно тривиальное WSGI-приложение, которое правда стремительно разрастается. Пришлось поднимать всё с нуля.

Воскресенье я на это убил, но в целом всё довольно прямолинейно и теперь у меня есть симпатичные отчёты:



Что внутри?
Читать дальше →
Total votes 61: ↑56 and ↓5 +51
Views 23K
Comments 20

Дружим GWT, Sonar + Clover

Java *
Любите ли вы GWT так, как люблю его я? Недавно возникла задача, повесить Sonar на проект, где используется GWT. Проблема возникла в тот момент, когда врубается Clover. Подробности этой истории под катом.
Читать дальше →
Total votes 8: ↑6 and ↓2 +4
Views 1.5K
Comments 0

Система непрерывной интеграции своими руками

Programming *
Sandbox
Доброго времени суток, %username%!

О непрерывной интеграции можно почитать здесь и вообще поискать литературу на данную тематику, если станет интересно. Если Вы уже осознали всю выгоду использования CI, то продолжу развивать мысль. Наиболее популярные из существующих систем непрерывной интеграции: Hudson, TeamCity и CruiseControl. Во всех этих системах настройка билда обычно осуществляется через UI. Выбираем что надо сделать в окошке браузера — и билд автоматизирован (естественно можно написать свои скрипты и запускать их). Обилие настроек и всяческих примочек. И я подумал, а что сделали создатели этих систем? А сделали они просто команды для различных билдеров, компиляторов, тестирующих и прочих инструментов, чтобы разработчик не тратил своё время на эти вещи. А так ли много времени уйдет на написание своей системы и команд?
Читать дальше →
Total votes 8: ↑6 and ↓2 +4
Views 7.9K
Comments 1

Расширение Google Crome для мониторинга сборок TeamCity

Programming *
Ребята из JetBrains радуют нас своим замечательным Continuous Integration сервером TeamCity. Одна из самых главных задач такого сервера, является очень быстрый feedback, с чем TeamCity великолепно справляется. В коробке имеется много нотификаторов (IntelliJ Platform plugin, Windows Tray Notifier, Addin for Visual Studio, Eclipse Plugin, Syndication Feed) и для программистов этого хватает. Наш отдел тестирования не имеет желания запускать у себя Idea и подобные «страшные штуки», для того что бы видеть статус сборки.
Читать дальше →
Total votes 6: ↑5 and ↓1 +4
Views 1.6K
Comments 1

Еще одно руководство по CCnet + SVN

Version control systems *
Sandbox
Cruise Control — одна из достаточно большого количества CI (continuous integration) систем. Речь пойдет о том, как настроить ее для связи с SVN и деплоя сайта на .NET.

Для начала немного о задачах СС на данном сервере:
  • Взять код из SVN репозитория
  • Скомпилировать его
  • Положить в директорию к IIS


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

Читать дальше →
Total votes 14: ↑11 and ↓3 +8
Views 4.8K
Comments 3