Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

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

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


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

Американские СМИ назвали TeamCity компании JetBrains возможной причиной взломов в США

Информационная безопасностьСистемы сборкиIT-компании
Американское издание «Нью-Йорк таймс» назвало JetBrains возможной «точкой входа» для взломов государственных и частных структур США. В изначальной версии статьи «Таймса» JetBrains описывают как «малоизвестную» российскую компанию с главным офисом в Чехии. Как утверждает статья «Уолл-стрит джорнэла», взломщики SolarWinds получили доступ к серверу TeamCity компании, поэтому часть подозрений пала на разработчика этого продукта. JetBrains отрицает причастность к взломам.

В середине декабря прошлого года фирма кибербезопасности FireEye опубликовала отчёт о взломе систем компании SolarWinds. Программу Orion последней используют по всему миру, в том числе во всех подразделениях вооружённых сил США, АНБ и госдепартаменте. Как утверждает отчёт FireEye, скомпрометированы обновления Orion с марта по июнь 2020 года — в них разместили бэкдор SUNBURST. В размещении бэкдора американские СМИ обвинили хакеров, работающих на Россию.

Как говорит новая статья в «Таймсе», американские агентства по разведке и частные исследователи кибербезопасности начали изучать роль JetBrains в крупном взломе компании SolarWinds. Затем статья поясняет, что среди клиентов «малоизвестной» фирмы 79 компаний из списка Fortune 100, а вообще софт JetBrains используют 300 тыс. организаций. Среди них оказалась SolarWinds, с которой и начался взлом.
Читать дальше →
Всего голосов 33: ↑29 и ↓4+25
Просмотры17K
Комментарии 76

Интеграция с TeamCity

Ruby
В процессе разработки проекта на Ruby 1.9 нам потребовалось использовать систему непрерывной интеграции.

CruiseControl.rb в своё время не подошёл из-за несовместимости с Ruby 1.9, в результате мы остановились на бесплатной TeamCity Professional под Linux.

Начальная настройка тривиальна, потребует лишь распаковки дистрибутивов TeamCity и JRE, а также настройки переменной JRE_HOME.

Прямо из коробки мы можем получить запуск тестов Test::Unit, RSpec, с оценкой покрытия rcov.

Но нам потребовалось большее, например, использовать кастомные тесты.

Рассмотрим тривиальный пример — тесты на компилируемость (например, исходного кода, файлов в формате YAML etc.).

image

Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Просмотры4.1K
Комментарии 22

Введение в Continuous Integration

Разработка веб-сайтов
Недавно я попал на новый проект, с задачей создать небольшое приложение с нуля. Разговариваю с тестером:
— А как тебе новые версии поставлять?
— Можешь как все остальные на проекте, через SVN.
— То-есть ты сама билдить будешь?
— Да нет… Бинарники оттуда беру.


Оказывается, очень много программистов, даже имеющих в подписях слова вроде Senior или Superior никогда в жизни не стыкались с понятием CI, или слабо себе представляют что это такое. Не найдя отдельных публикаций на Хабре на эту тему, решил восполнить пробел, а заодно и по возможности заработать желанный инвайт.
Читать дальше →
Всего голосов 104: ↑91 и ↓13+78
Просмотры173K
Комментарии 65

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

PHP
Непрерывная интеграция (англ. Continuous Integration) — это практика разработки программного обеспечения, которая заключается в выполнении частых автоматизированных сборок проекта для скорейшего выявления и решения интеграционных проблем. В обычном проекте, где над разными частями системы разработчики трудятся независимо, стадия интеграции является заключительной. Она может непредсказуемо задержать окончание работ. Переход к непрерывной интеграции позволяет снизить трудоёмкость интеграции и сделать её более предсказуемой за счет наиболее раннего обнаружения и устранения ошибок и противоречий.

imageВ этом топике мы в общих чертах рассмотрим процесс реализации непрерывной интеграции на примере TeamCity Enterprise 6.0 EAP (build 15400) и обратим внимание на применении инструментов рассмотренных в прошлой теме: Обеспечение качества программного продукта.
Читать дальше →
Всего голосов 49: ↑44 и ↓5+39
Просмотры97K
Комментарии 49

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

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

HowTo: continuous integration проекта на Django с помощью TeamCity

Django

Введение


В процессе разработки, создавая новый функционал, всё чаще широкими мазками стал задевать старый код чем разрушал логику его работы. Это заставило всё-таки написать юнит и интеграционные тесты для старого кода и автоматизировать их запуск, т.к. гонять руками все тесты как-то грустно. Как раз вспомнилось недавнее руководство по CI Django в Jenkins и довольно старое по Webtest в Django. В итоге была совершена попытка поднять Дженкинса, но он как-то на моей убунте не взлетел и я грешным делом вспомнил про TeamCity. «Раз уж пишу в PyCharm и нашёл к нему подход, то, наверно, и TeamCity осилю, ведь конторка-то одна!» — подумалось мне… В общем-то я оказался прав, и, пока мне позволяет карма, решил подарить вам ультраполезный (и мегаподробный), в отличие от моего предыдущего, мануал :)

Итого: кому требуется руководство по поднятию интеграционного сервера TeamCity, и тестирование в нём Django проектов c тестами nose и webtest в виртуальном окружении python с автоматическим его (окружения) обновлением — добро пожаловать под кат.

Осторожно! Для работы TeamCity требуется (согласно документации) sun/oracle версия JVM…
Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Просмотры13K
Комментарии 16

Автоматическая проверка качества Java-кода (итерация 1)

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

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

В этой итерации, я буду настраивать проверку инспекций. Мы всей командой используем IntelliJ IDEA и TeamCity компании JetBrains, поэтому можно использовать те средства, которые они предоставляют. Для начала в IntelliJ IDEA будет настроен профиль инспекций, соответствие кода которому будет проверяться при каждой сборке при помощи TeamCity. Метод это штатный и описан в официальной базе знаний по TeamCity, но не всё получалось очень гладко…
Копаем!
Рейтинг0
Просмотры5.7K
Комментарии 2

Автоматизация сборки на .Net с использованием NuGet

.NET
Из песочницы

Что имелось вначале


Крупная enterprise-система, являющаяся основной платформой компании. В состав входит ядро системы и набор плагинов под разные задачи. Плагины развиваются независимо друг от друга, требуют внесения изменений и расширений в общие библиотеки.

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

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

При решении задачи использовались следующие инструменты: NuGet, TeamCity, NAnt, Visual Studio 2010, SlowCheetah.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Просмотры7K
Комментарии 11

Android — Сontinuous Integration. Часть 1

Разработка под Android
Не буду описывать в сотый раз что такое CI и зачем это нужно. Выдумщиком данной концепции считается, не безизвестный, Мартин Фаулер, а с его трудом можно ознакомиться здесь.

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

В первой статье цикла мы обозрим сложившуюся унылую ситуацию и набросаем план действий по спасению — то что ожидаем получить в конце и ради чего все затеваем. А затем, постепенно, начнем это воплощать в жизнь. Кого заинтересовал, прошу под кат.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Просмотры19K
Комментарии 15

Jax-Awards, PhpStorm и все, все, все (дайджест новостей с 9-15 июля)

Блог компании JetBrains
Множество событий может произойти в компании за неделю. Выходят релизы, выпускаются апдейты и багфиксы, наши представители выступают с докладами, которыми мы хотим поделиться с огромной аудиторией Хабра. К сожалению, далеко не все инфоповоды успевают перерасти в отдельные статьи.

Чтобы компенсировать это мы решили выпустить экспериментальный дайджест новостей, которые вы могли пропустить на прошлой неделе:

  • Прошлый вторник порадовал нас приятным известием из Сан-Франциско: на конференции JAX 2012 были объявлены итоги голосования за «JAX Innovation Awards», где мы стали победителями в номинации «The most innovative Java company»!

Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Просмотры3.4K
Комментарии 1

Кастомная обработка jUnit тестов в TeamCity

Тестирование IT-систем
Из песочницы
TeamCity поддерживает jUnit «на лету» и особых проблем с выполнением тестов нет. Но стандартная поддержка не покрывает все юзкейсы. Например, никогда нельзя быть уверенным, в какой очередности пройдут тесты. Кроме того, есть другие вариации тестовой архитектуры, которые просто невозможно сделать дефолтными средствами jUnit. Например, определение в рантайме, какие тесты нужно запускать, а какие нет. Причем с выводом в отчетах в TeamCity без проигнорированных тестов.
Читать дальше →
Всего голосов 2: ↑2 и ↓0+2
Просмотры4.5K
Комментарии 13

Дайджест новостей JetBrains с 26-го июля по 5 августа

Блог компании JetBrains
После того как 26-го июля вышел долгожданный мажорный релиз ReSharper 7, произошел целый ряд событий, о которых мы не можем не упомянуть хотя бы в формате дайджеста.

Итак, перечислим важнейшие из них в обратном хронологическом порядке:
К остальным новостям
Всего голосов 20: ↑19 и ↓1+18
Просмотры4.8K
Комментарии 8

Дайджест новостей JetBrains с 7 августа по 4 сентября

Блог компании JetBrains
Пришло время очередного дайджеста новостей. Как и прежде, мы постараемся рассказать про все или почти все основные события, а также самые свежие релизы и апдейты, которые состоялись за последний месяц.
image
  • Сегодня, 4 сентября RubyMine 4.5.3 улучшил поддержку Sass и LESS;



Читать дальше →
Всего голосов 4: ↑3 и ↓1+2
Просмотры3.1K
Комментарии 29

Играем с коднэймами

Блог компании JetBrainsKotlin
У программистов сложная работа. Чтобы подпитывать свой творческий дух, иногда необходимо отвлекаться. Например, мы в JetBrains подбираем кодовые имена для будущих релизов продукта. Вот парочка забавных историй их появления.

Интеллект от Бога

IDEAЗа одиннадцать лет на рынке информационных технологий наш лучший образец интегрированной среды разработки IntelliJ IDEA сменил несколько имен богинь: Stella, Vista, Pandora, Ariadna, Aurora, Pallada, Irida, Demetra, Selena, Diana, Maia, Nika, и самое недавнее — Leda.

Коднэймы находят отражение и в заставках к продуктам. Вот, например, Aurora. Если бы мы делали русскоязычный продукт, наверняка бы изобразили крейсер Аврора, но он ведь интернациональный… а Aurora, кроме богини, по-английски еще означает и «северное сияние». Вот такой коленкор!
Продолжение истории
Всего голосов 23: ↑23 и ↓0+23
Просмотры6.6K
Комментарии 11

Дайджест новостей JetBrains с 11 сентября по 9 октября

Блог компании JetBrainsKotlin
Помимо релиза PhpStorm 5.0 и очередного «майлстоуна» проекта Kotlin, про которые мы уже писали на Хабре, за последний месяц вышел еще целый ряд обновлений, которые могли ускользнуть от вашего внимания:

  • 9 октября — вышел минорный релиз AppCode 1.6.2;

  • 4 октября — команда YouTrack выпустила обновление YouTrack 4.0.4;


Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Просмотры3.1K
Комментарии 7

Continuous Delivery & Sitecore: наша реализация

Разработка веб-сайтов.NETC#
Из песочницы
Хочу представить Вам нашу концепцию Continuous Delivery (далее, CD) применительно к основной CMS в которой нашу компания ведет разработку – Sitecore. Наша концепция CD зиждется на трех китах:
  • Система контроля версий – Git (в принципе, можно применять и к другим, но Git наиболее удобен в виду того, что ветки в нем весьма просты, быстры и дешевы)
  • CI сервер – TeamCity
  • Код, который собственно и осуществляет всю доставку, установку и обработку (скрипты и дополнительные исполняемые файлы)

В данной статье, я попробую описать все вовлеченные аспекты.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Просмотры11K
Комментарии 3

FitNesse + TeamCity — добавь проекту тонуса

Тестирование IT-систем
Доброго времени суток, любители зажать конструируемую систему в рамки разнообразных тестов! Многие из вас пользуются средствами для создания системных тестов. Кто-то даже использует FitNesse, о котором на Хабре немного рассказывали. Поэтому не буду повторяться и писать про то, что такое FitNesse и с чем его едят. Лучше расскажу про то, как заставить проект «заниматься фитнесом» в процессе сборки, которая протекает при помощи TeamCity.
Интересненько? Тогда добро пожаловать под кат.
Читать дальше →
Всего голосов 5: ↑4 и ↓1+3
Просмотры7.8K
Комментарии 6

AIDA. Автоматизация работы с Git, JIRA и TeamCity

Блог компании BadooРазработка веб-сайтовТестирование IT-систем
При разработке и тестировании какого-либо продукта появляется много рутинной работы. Чтобы избежать ошибок, связанных с человеческим фактором, мы используем AIDA.

AIDA (англ. Automated Interactive Deploy Assistant) — это учётная запись, значительно облегчающая работу с Git, TeamCity и JIRA.
Сегодня речь пойдет о том, как с её помощью нам удалось автоматизировать многие рабочие процессы.

В первую очередь мы вспомним об используемой в Badoo системе контроля версий, далее расскажем о том, как было автоматизировано создание веток релиза и осуществлено автоматическое слияние веток в Git, поговорим о существенной помощи AIDA в работе с JIRA (контроль и изменение статуса задач, заполнение полей) и ТeamCity (непрерывная интеграция и развёртывание на тестовое окружение).
Читать дальше →
Всего голосов 53: ↑50 и ↓3+47
Просмотры37K
Комментарии 52