четверг, 19 сентября 2019 г.

Изменить кодировку в CMD на UTF-8

Компилируя в cmd Java и выводя результат с русскими символами сталкиваюсь с проблемами отображения

Нашел статью и чтобы не забывать, опубликую себе памятку тут:
набрав
chcp - мы выводим текущую кодировку. По умолчанию это 866

а введя необходимую нам UTF-8
chcp 65001
мы установим кодировку на требуемую UTF-8


И теперь вывод будет с русскими символами

пятница, 13 сентября 2019 г.

JIRA: Как сбросить счетчик задач в проекте

Зачастую, после подготовки нового проекта - нам необходимо сбросить счетчик задач, после создания тестовых Issue
Решение простое, но не всегда под рукой: 
в БД выполняем поочередно:
(где А - это ключ вашего проекта)
UPDATE project SET pcounter=0 WHERE pkey='A';
затем 
DELETE FROM moved_issue_key WHERE old_issue_key like 'A-%';

четверг, 12 сентября 2019 г.

SIL: Живой поиск дублируемых задач

Из жизни

Я решил создать отдельный проект, который я задействую как базу данных по компаниям-клиентам. 
Смысл простой: одна issue - один клиент. Внутри напичкано различными полями по клиенту, с информацией. 
Но изначально надо предусмотреть то, что когда у тебя будет хотя-бы овер 50 таких "карточек" - то велика вероятность, что кто-то ошибется и создаст дубликат уже имеющейся компании. 
Для этого я решил создать некий "живой поиск" по имеющимся компаниям. на помощь пришел SIL с Live Fields
О том как я это реализовал - ниже

понедельник, 15 июля 2019 г.

JIRA: Установка\обновление сертификата с помощью Portecle

Запустить программу Portecle (при необходимости скачать). С правами администратора!!! Иначе не будет права сохранить данные в контейнере! 
Важно!
Для того, чтобы обновить сертификат в хранилище JVM, в первую очередь, надо не ошибиться с расположением этого хранилища. 
Вам необходимо перейти в JIRA - System - System Info secure/admin/ViewSystemInfo.jspa
И найти там параметр: java.library.path у которого найти свойство, где исполнительная директория вашей JVM 
Это означает, что именно в этом каталоге будет находиться используемый контейнер сертификатов и нигде иначе. Потому как cacerts у вас может-быть в разных местах, в т.ч. в подкаталогах установленной JIRA. Но используется именно тот, где работает JVM. 

четверг, 27 июня 2019 г.

SIL: Отложенный запуск скрипта

Не помню историю возникновения такой потребности, но была задача запустить какую-то часть скрипта с отложенным временем. 
Как, например, sleep в батнике (исполняемом файле).
И как оказалось, ничего сложного в этом нет. Я написал вот такой вариант: 
date d1 = currentDate(); //текущая дата как нужный штамп для вычислений
date d2 = d1 + "15s"//нужное нам время после задержки
  
int x; //просто для цикла. не знаю как его еще заставить крутиться
for (date d3 = currentDate(); d3 < d2; x++)
    {
        //делаем какую-то хуету
        //можем даже if сюда-же прикрутить, чтобы выполнить то, что требовалось
    }

В инете это валяется по адресу: https://pastebin.com/vgZtk7Fs

четверг, 30 мая 2019 г.

JIRA: Авторизация OAuth 2.0 через Google Apps

В этой статье я расскажу детально, как подключить и успешно использовать авторизацию Google вашего домена в JIRA. 
Данное решение требуется по разным причинам в организациях. Возможно вы используете Google Apps как провайдера почты, для вашего домена. Возможно, переезжаете с Cloud версии, где вы использовали авторизацию Google аккаунта или по другим причинам. 
Для данного решения я тестировал два плагина, и дабы не наступать на мои ошибки - сообщу о том, что Kantega SSO, SAML / Kerberos for Jira (версии 3.5.9 для JIRA 8.1.0) оказался нерабочим (warning) Как будут с этим аддоном обстоять дела далее - нужно тестировать. 
Настройка этого аддона достаточно муторная, с точки зрения кол-ва требуемых шагов, сам аддон достаточно дорогой ,а простейшую задачу решить не мог. Для справки: по завершению получения всех требуемых данных - последним шагом является загрузка JSON файла и сохранения конфигурации. Но при попытке сохранения данных JIRA выпадет в ошибку, т.к. метод пытается найти GROUP в JSON а его там нет. Поэтому - плагин в топку. 
Для решения нашей задачи, нам потребуется: 
  • Google Apps права администратора домена
  • JIRA Software (отдельно на JSD я не тестировал)
  • Купленный аддон OpenID Authentication for Jira 

вторник, 28 мая 2019 г.

JIRA: отключение таймера административной сессии

По умолчанию - сессия администратора ограничена временем. И всякий раз, когда вы будете на некоторый период бездействовать - сессия будет сбрасываться и запрашивать пароль снова и снова. 
Чтобы это отключить - необходимо перейти jira-config.properties файл и добавить строчку: 
jira.websudo.is.disabled = true

Если файла нет

Если этого файла у вас нет - его необходимо создать. Мой путь, для примера: F:\Atlassian\Jira\Application\jira-config.properties
Затем перезапустить сервис JIRA
Чтобы изменить кол-во минут таймаута на бездействие, необходимо в тот же файл написать другую строчку:
jira.websudo.timeout = 10

понедельник, 27 мая 2019 г.

MSSQL: Ошибка поставщика WMI. 0x80071779

Впервые, столкнулся с ошибкой. При попытке конфигурации сетевых протоколов SQL Server - любые изменения на вкладке IP-адреса выдают ошибку:
Ошибка поставщика WMI
Указанный файл имеет атрибут "только для чтения". [0x80071779]
Даже переключал интерфейс на EN и там это написано так:
WMI Provider Error
The specified file is read only. [0x80071779]




воскресенье, 14 апреля 2019 г.

SIL confluence. Как узнать родителя страницы и собирать информацию об изменениях.

Для Confluence существует знакомый нам инструмент SIL на базе БЕСПЛАТНОГО (пока еще (!) ) аддона: Power Scripts for Confluence
На этом языке можно так же делать различные плюшки, получая информацию из вашего Confluence. 
Так же этот аддон несет с собой 4 макроса для вывода информации. 
Один из таких макросов я буду использовать для следующей задачи: 

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

На примере структуры моего тестового пространства, рассмотрим детально задачу.

воскресенье, 7 апреля 2019 г.

Суммирование времени из подзадач и его конвертация в 8-часовой рабочий день

Попробую описать задачу, которую мне довелось решать. 
Допустим, у нас есть какая-то "главная задача". Которая подразумевает в себе наличие подзадач и дополнительно - другие связанные задачи, которые тоже будут считаться "дочерними". 
Примерная структура будет выглядеть так: 
Главная задача (User Story) →
--------------------------------- Other task
--------------------------------- BA Sub-task
--------------------------------- BA2 Sub-task
--------------------------------- UI Sub-task
--------------------------------- DEV Sub-task
В каждой из этих задач и подзадач планируется время. Что подразумевает наличие: Original Estimate \ Remaining Estimate \ Time Spent
А моя задача состоит в том, чтобы это время суммировать и выводить в кастомные поля на экране главной задачи US
Поскольку мне требовались расчеты реального времени - я решил использовать аддон от CPRIME: PCFU (Power Custom Field Premium) и производить расчеты средствами SIL
Но столкнулся с некоторыми сложностями, о которых ниже.

среда, 27 февраля 2019 г.

JIRA. SIL. Кнопки создания \ редактирования \ перехода

Порой возникает необходимость работы с кнопками "Создания" "Обновления" (на экране редактирования) "обновления" (на экране перехода).

В SIL имеются alias этих кнопок:
"editSubmit"
"transitionSubmit"
"createIssueSubmit" - экран создания
"issueCreateSubmit"

Используются они в LF, например:
lfDisable ("editSubmit"); //кнопка Update/Обновить будет  отключена

воскресенье, 24 февраля 2019 г.

JIRA: JS. инфо-блоки на экранах между полями с помощью JSincluder

Задача

Необходимо разграничить или просто добавить информационные блоки между полей, на различных экранах (View\Edit\Create)
Пример на скрине: