Skip to content

Commit

Permalink
Merge branch 'release/1.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
theshadowco committed May 7, 2019
2 parents 270b13e + db75aec commit 96500f9
Show file tree
Hide file tree
Showing 7 changed files with 648 additions and 2 deletions.
15 changes: 14 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

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

Для закрытия замечаний необходимо вызвать команду `issue-resolver` и передать ей информацию для авторизации, данные родительского и дочерних проектов.
Для закрытия замечаний необходимо вызвать команду **`issue-resolver`** и передать ей информацию для авторизации, данные родительского и дочерних проектов.

#### Логика закрытия замечаний

Expand All @@ -36,3 +36,16 @@ SonarQube может создавать несколько замечаний п
**Пример 3:** В родительском проекте есть 3 замечания на строке, исправлено два. В дочернем тоже 3 замечания, исправленных 1. В результате - в дочернем проекте будет закрыто еще одно замечание, и общее количество закрых станет 2.

**Пример 4:** В родительском проекте есть 3 замечания на строке, исправлено два. В дочернем 4 замечания, исправленных 1. В результате - в дочернем проекте не будет закрыто ни одного нового замечния.

### Отчет по проектам

При необходимоси получить отчет по проектам (по интересующим метрикам) и использовать его в других приложениях (либо рассылать по почте) можно вручную собирать информацию по страницам SonarQube, но проще использовать **`sonar-helper`**, вызвав команду **`report`** и передав ей информации для авторизации, список проектов и интересующих метрик.

На данный момент поддерживаются следующие варианты формирования отчета:

- **JSON** - формируется отчет в формате json, метрики выгружаются дважды - для идентификатора метрики и для русского представления. [Пример: examples\example-report.json](examples\example-report.json)
- **HTML** - формируется отчет в формате html, метрики выгнржаются только для русского представления. [Пример: examples\example-report.html](examples\example-report.html)

## Примеры

Примеры отчетов и конфигурационных файлов находятся в каталоге [examples](examples)
8 changes: 8 additions & 0 deletions examples/example-report.cfg-file.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"--token": "2ef785ca946170b7086668132175eb01386943a1",
"--server": "http://my.sonar.server:9000",
"--projects": "bsp,mdm",
"--total-metrics": "ncloc,bugs,sqale_index",
"--report-path": "rep.json",
"--report-format": "JSON"
}
104 changes: 104 additions & 0 deletions examples/example-report.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<title>Отчет sonar-helper</title>
<meta name="description" content="Отчет sonar-helper">
</head>
<style>
table {
margin: 20px 0;
text-align: left;
border: 1px solid gray;
border-spacing: 0px;
border-radius: 3px;
font-size: 14px;
width: auto;
}

td,
th {
border: 1px solid gray;
padding: 3px;
}

table#head {
margin: 20px 0;
text-align: left;
border: 0px;
border-spacing: 0px;
font-size: 14px;
width: auto;
}

table#head td {
border: 0px;
padding: 3px;
}
</style>
<body>
<h1>Отчеты по проектам</h1>
<h2>Данные формирования</h2>
<table id="head">
<tr>
<td><b>Адрес сервера:</b></td>
<td>http://my.sonar.server:9000</td>
</tr>
<tr>
<td><b>Дата формирования:</b></td>
<td>06.05.2019 14:17:17</td>
</tr>
<tr>
<td><b>Количество отчетов:</b></td>
<td>2</td>
</tr>
</table>
<h2>Отчеты по проектам</h2>
<div>
<table>
<caption><b>Проект: </b>bsp</caption>
<tr>
<th>Метрика</th>
<th>Значение</th>
</tr>
<tr>
<td>Ошибки</td>
<td>0</td>
</tr>
<tr>
<td>Технический долг</td>
<td>16734</td>
</tr>
<tr>
<td>Строки кода</td>
<td>112092</td>
</tr>

</table>
</div>
<div>
<table>
<caption><b>Проект: </b>mdm</caption>
<tr>
<th>Метрика</th>
<th>Значение</th>
</tr>
<tr>
<td>Строки кода</td>
<td>147102</td>
</tr>
<tr>
<td>Ошибки</td>
<td>110</td>
</tr>
<tr>
<td>Технический долг</td>
<td>30632</td>
</tr>

</table>
</div>

</body>
</html>
28 changes: 28 additions & 0 deletions examples/example-report.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"ДатаФормирования": "2019-05-06T14:17:17.5125591",
"СерверSonarQube": "http:\/\/my.sonar.server:9000",
"Количество": 2,
"Отчеты": [{
"КлючПроекта": "bsp",
"Метрики": {
"Технический_долг": "16734",
"sqale_index": "16734",
"Ошибки": "0",
"bugs": "0",
"Строки_кода": "112092",
"ncloc": "112092"
}
},
{
"КлючПроекта": "mdm",
"Метрики": {
"Технический_долг": "30632",
"sqale_index": "30632",
"Строки_кода": "147102",
"ncloc": "147102",
"Ошибки": "110",
"bugs": "110"
}
}
]
}
Loading

0 comments on commit 96500f9

Please sign in to comment.