Обновить
9.24

Atlassian *

Jira, Confluence и вот это всё

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

Реализация RESTful Table в Atlassian User Interface

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

О чём это вообще?


Для тех, кто вообще не в теме: у компании Atlassian, известной своими продуктами для обеспечения рабочих процессов (прежде всего JIRA и Confluence, но, наверное, любой айтишник без труда назовёт ещё несколько), есть также SDK для разработки плагинов к этим продуктам. Среди инструментария, доступного разработчикам в составе этого SDK, есть подсистема для разработки веб-интерфейсов Atlassian User Interface (AUI). А среди возможностей AUI есть так называемая RESTful Table — готовое решение для реализации интерактивной таблицы, все изменения в которой в реальном времени сохраняются на серверной стороне с помощью набора REST-сервисов.


Недавно мне потребовалось написать такую таблицу — до того мне этим заниматься не приходилось, посему я обратился к актуальной (AUI 7.6.2) версии официального руководства, но обнаружил, что его недостаточно. Пришлось добирать информацию — по форумам и в исходниках самого AUI, благо последние доступны (и, кстати, также содержат хороший пример работающей RESTful-таблицы, но, к сожалению, не имеющий подробных комментариев). Восполняющего обнаруженные пробелы руководства я в сети не обнаружил, и мне захотелось собрать воедино то, что успел накопать я, чтобы облегчить аналогичную задачу и другим, и, возможно, себе же в будущем. Основываться при работе, конечно, всё равно следует на официальном руководстве, но это текст, вероятно, будет полезен как дополнение… во всяком случае, пока оно не будет обновлено.

Читать дальше →

Atlassian Jira Software функциональность в Jira плагине

Время на прочтение6 мин
Количество просмотров6.4K
Часто вижу вопросы о том, как сделать плагин с использованием функциональности из Jira Software. В интернете найти информацию сложно, поэтому я решил сделать статью, в которой расскажу, как подключить Jira Software функциональность к плагину для Jira.
Читать дальше →

Опыт перехода на Atlassian Stride (от слова Страдай)

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


Ввиду блокировок телеграма, актуально было бы написать про Atlassian Stride, как мы на него перешли, и с какими прелестями решения от любимого Atlassian столкнулись.


Atlassian Stride был запущен в ноябре 2017, как замена облачному HipChat. Де-факто, основной конкурент, это, конечно же, Slack. Я постараюсь сравнивать Stride со Slack, и Telegram со стороны текстовой переписки.


Плюсы


Встраивание в Экосистему Atlassian, контроль за пользователями


Самый большой плюс, это, безусловно, бесшовная интеграция в экосистему Atlassian. Есть у вас jira, confluence — и единый аккаунт у пользователя, где вы можете управлять доступом к разным кускам и возможностям этих двух приложений. А теперь у вас есть третье приложение — Stride, и управление пользователями чатика доступно из той же админки.

Читать дальше →

Spring AOP и JavaConfig в плагинах для Atlassian Jira

Время на прочтение11 мин
Количество просмотров5.3K
В этой статье разработаем плагин для Atlassian Jira, где с помощью JavaConfig определим бин с областью видимости прототип, залогируем вызовы методов бина, используя AOP, и выведем информацию из внешних бинов (ApplicationProperties, JiraAuthenticationContext и ConstantsManager).

Исходный код плагина можно взять вот здесь.
Читать дальше →

Логирование в Adaptivist ScriptRunner

Время на прочтение10 мин
Количество просмотров3.5K
В этой статье я хотел бы поговорить о логировании в Adaptivist ScriptRunner. Логи являются основным инструментом разработчиков и экспулатирующего персонала для анализа нештатных ситуаций в промышленной среде. Поэтому при разработке приложения мы должны подумать о том, что нам будет необходимо при анализе возникающих инцидентов.

image
Читать дальше →

Простая Kanban-доска для Jira

Время на прочтение14 мин
Количество просмотров38K
Здесь я расскажу, как сделать канбан-доску для проекта в Jira, пользуясь только QML и JavaScript. С небольшими доработками вместо Jira вы можете использовать любой другой трекер, имеющий REST API.



Предыстория


Некоторое время назад, теперь уже практически в другой жизни, в мою бытность руководителем проекта, я понял, что теряю представление о занятости участников нашего проекта. Кто-то занимается Большим и Важным делом, кто-то исправляет срочные баги, а может быть кто-то, извините, балду пинает, а я об этом не в курсе и задачи ему не ставлю. И мне захотелось иметь наглядную картинку текущих дел.
Читать дальше →

Централизованный сontinuous deployment за год vol 2

Время на прочтение7 мин
Количество просмотров8.6K
В нашей прошлой статье мы рассказали о том как строили централизованный конвейер, но описали его довольно поверхностно. Это породило массу вопросов, которые мы не можем оставить без ответа. Здесь мы попробуем максимально глубоко залезть «под капот» и рассказать, как работает наш централизованный конвейер.

Читать дальше →

Три способа обновить запрос в Jira из ScriptRunner, используя Jira Java API

Время на прочтение13 мин
Количество просмотров12K
В этой статье будут рассмотрены три способа обновления запроса в Jira, используя Jira Java API.
Я буду использовать следующие методы Jira Java API:

  • Issue.setCustomFieldValue(CustomField customField, Object value)
  • CustomField.updateValue(FieldLayoutItem fieldLayoutItem, Issue issue, ModifiedValue modifiedValue, IssueChangeHolder issueChangeHolder)
  • IssueService.update(ApplicationUser user, IssueService.UpdateValidationResult updateValidationResult)

Будут приведены примеры скриптов для обновления всех типов кастомных полей, доступных в Jira из «коробки», с таблицей, в которой указаны отличия работы рассматриваемых методов друг от друга.

Читать дальше →

Atlassian User Group Moscow в гостях у Райффайзенбанка

Время на прочтение1 мин
Количество просмотров2.4K
15 февраля приглашаем гостей на встречу Atlassian User Group Moscow в Райффайзенбанк.
Мы поговорим о тонкостях учета рабочего времени сотрудников, об опыте использования CI/CD конвейера в Райффайзенбанке и об эволюции процессов в SkuVault.


Читать дальше →

Как работать с Jira плагином из ScriptRunner или как избежать дублирования кода

Время на прочтение4 мин
Количество просмотров7.6K
В этой статье я хотел бы обсудить проблему дублирования кода в Adaptivist ScriptRunner.
Когда начинаешь писать скрипты в ScriptRunner, то обычно весь код пишешь в одном скрипте и затем добавляешь этот скрипт в пост функцию, валидатор, условие и тому подобное.

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

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

Atlassian User Group Ufa — первый блин не комом

Время на прочтение1 мин
Количество просмотров1.4K
Вот и Уфа дозрела до Atlassian Community и единого пространства жалоб на новый дизайн, стабильность и практического решения проблем с продуктами Atlassian. Мы провели Ufa AUG #1 и могу точно сказать, что первый блин — не комом!



Программа:

  1. Трагедия в трех томах: как мы упрощали процессы в SkuVault, и как отражали и автоматизировали это в Atlassian Jira | Презентация
  2. Цикл документооборота фич в Confluence
  3. Q&A сессия с вопросами по доскам, интеграциям, тайм-трекингу в таск-трекере, и миллиону других вещей

Как компания Atlassian построила бизнес стоимостью 10 млрд долларов. Часть 2

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


Продолжаем рассказывать историю Atlassian. 1 часть вы можете прочитать тут.

2015 год — настоящее время: расширение на прибыльные конкурентные рынки


Для многих SaaS-компаний сегодняшний бизнес Atlassian выглядит как «конечная цель»: вырасти в огромную работающую на мировом рынке публичную компанию со сложным набором интегрированных продуктов для самых разных команд.

Но Atlassian понимает, что успех — это не точка на графике, а непрерывная линия: если вы успешны, но не можете поддерживать рост и уверенное присутствие на своих рынках, вас вышвырнут. Поэтому сегодня цель компании — не просто создать лучший в своем классе набор инструментов для разработчиков, а скорее сделать так, чтобы организации целиком, вместе со всеми отделами, использовали соответствующие продукты из семейства Atlassian.

С одной стороны, Atlassian работает над тем, чтобы ее решениями могли пользоваться самые разные отделы организаций. С другой стороны, компании нужно каким-то образом сохранить актуальность для небольших команд, поскольку для них многие приносящие компании доход продукты становятся излишне сложными. Однако вместо того, чтобы тратить время на разработку «облегченных» версий собственных решений, Atlassian идет опробованным путем: приобретает продукты с более простой функциональностью, интегрирует их и пополняет таким образом свое семейство.

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

Переведено в Alconost
Читать дальше →

Как при разработке плагина для Jira упаковать зависимую библиотеку в obr

Время на прочтение5 мин
Количество просмотров4.5K
При разработке плагинов для Jira периодически приходится использовать библиотеки, которых в Jira нет, поэтому их нужно установить вместе с разрабатываемым плагином. В Jira сторонние библиотеки можно упаковать в плагин двумя способами:

Указать у сторонней библиотеки область видимости компилирования, и тогда классы из этой библиотеки будут упакованы в jar-файл разрабатываемого плагина. Для этого необходимо в файле pom.xml написать:

  <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.2.2-atlassian-1</version>
	<scope>compile</scope>   
</dependency>

Собрать плагин таким образом, чтобы jar-файл сторонней библиотеки находился в папке dependencies файла obr разрабатываемого плагина.
Читать дальше →

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

Как компания Atlassian построила бизнес стоимостью 10 млрд долларов. Часть 1

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

«Было много умных людей, которые не собирались присоединяться к нашей компании, давать деньги или советы — потому что наш бизнес не имел для них никакого смысла».
— Майк Кэннон-Брукс, сооснователь Atlassian


Когда компания Atlassian еще только появилась (в 2002 году), перед ее основателями стоял выбор.

С одной стороны, они могли пойти обычным путем и сделать то, что делало большинство SaaS-компаний: набрать отдел продаж, постучаться в двери инвесторов и попытаться превратить идею в миллионы долларов в виде финансирования.

Однако основатели Atlassian не пошли таким (ожидаемым) путем — они решили действовать иначе, и это в конечном итоге позволило им построить бизнес стоимостью 10 млрд долларов.

Переведено в Alconost
Читать дальше →

Распространенные примеры использования продвинутых JQL-запросов

Время на прочтение2 мин
Количество просмотров48K
В данной статье приведены наиболее часто используемые JQL-запросы с использованием различных функций. Данный материал удобно иметь под рукой при необходимости создания сложных JQL-запросов для проектов в JIRA. В первую очередь информация будет полезна менеджерам и тим-лидам. В данной статье собраны примеры запросов, которые наиболее часто используются мною в ежедневной проектной деятельности.
Читать дальше →

Приглашаем на Atlassian Meetup 12 декабря

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


Друзья, приглашаем всех неравнодушных на очередную встречу Atlassian Meetup, которая пройдёт 12 декабря в московском офисе Mail.Ru Group. Как всегда, в программе интересные доклады о способах и особенностях использования продуктов линейки Atlassian.
Читать дальше →

J.A.R.V.I.S. для (не)железного человека: как Perf станет ассистентом каждого Delivery менеджера

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

Гениальный изобретатель Тони Старк стал рок-звездой киновселенной и одним из самых узнаваемых героев не только из-за фирменного юмора, ума и денег. У человека с атомным реактором вместо сердца есть одно исключительное преимущество – информация. Причем, личный смарт-помощник J.A.R.V.I.S. не просто выводит для Старка на экран статистику, но и анализирует происходящее, а еще – дает советы. Таким интеллектуальным личным ассистентом для Delivery менеджеров станет Perf, над которым работают в EPAM. О новом слове в Delivery менеджменте, которое скоро будет звучать чаще других, наши коллеги Сергей Сахоненко и Иван Кащенко рассказали на Atlassian Day в Минске.

Читать дальше →

Централизованный сontinuous deployment за год

Время на прочтение6 мин
Количество просмотров11K
В одном из предыдущих постов про DevOps мы обещали рассказать про технологическую составляющую нашего CI/CD-конвейера.

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


Читать дальше →

Феншуйная автоматизация CI & CD с помощью Jenkins и Jira

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

image alt text


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


Рассказывать о долгом и тернистом пути всегда непросто. Однако за последние годы инфраструктура разработки Яндекс.Денег сделала большой шаг в сторону автоматизации самого важного для нас процесса — релиза, о чем просто грех не рассказать. Фактически получилось полноценное решение Continuous Integration и Continuous Delivery на базе связки Bitbucket, Jenkins и Jira.

Читать дальше →

OpenShift + Jenkins + Bitbucket, непрерывная интеграция и публикация из коробки

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

В этой статье я покажу, как быстро развернуть среду для сборки, тестирования и публикации приложений используя платформу OpenShift на примере PHP проекта. Использовать буду OpenShift online, но всё это же можно развернуть и на собственных серверах или в VirtualBox (есть готовая сборка). Git-сервером для хранения и версионирования кода будет Bitbucket.
Читать дальше →