Возможно ли завершить сборку maven, если сканирование сообщает об ошибках?

У меня есть проект Maven. Для этого я запустил сканирование Fortify и успешно сгенерировал отчет в формате PDF. Сейчас я пытаюсь интегрировать это как часть сборки Maven и предполагаю добавление соответствующих банок, поскольку зависимости должны выполнять эту работу.

Мой вопрос,

  1. Можно ли вызвать сбой сборки, даже если весь код в порядке, но отчеты Fortify выдают ошибку?
  2. Если да, как мне указать, что я хочу, чтобы сборка завершалась сбоем только, скажем, при высоких и критических ошибках, а не при низких и средних.

person tubby    schedule 15.12.2016    source источник


Ответы (2)


Вы можете использовать Maven Enforcer, чтобы обеспечить сбой сборки, если отчет не создан, или вы можете использовать другие правила Enforcer.

Например, что-то вроде этого: вы можете установить phase и Rules, когда хотите потерпеть неудачу.

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-enforcer-plugin</artifactId>
    <executions>
      <execution>
        <id>enforce-fortify-reports</id>
        <phase>verify</phase>
        <goals>
          <goal>enforce-once</goal>
        </goals>
        <configuration>
          <rules>
           <requireFilesExist>
                  <files>
                   <file>${project.build.outputDirectory}/report.frp</file>
                  </files>
                </requireFilesExist>
          </rules>
          <fail>true</fail>
        </configuration>
      </execution>
    </executions>
  </plugin>
person ravthiru    schedule 15.12.2016

(Не полное решение, а подсказка)

Вы можете использовать FPRUtility (часть SCA) для проверки ошибок и количества проблем, затем вы можете использовать Maven или Ant для анализа результата и сбоя сборки.

# fprutility -information -project project.fpr -errors
[10002] Unable to parse T-SQL at tables.sql:612:3.
[10002] Unable to parse T-SQL at update.sql:72:27.

# fprutility -information -project project.fpr -search -query "[fortify priority order]:high OR [fortify priority order]:critical"
565 issues of 796 matched search query.

ИЗМЕНИТЬ:

Примечание. Если вы используете SSC для аудита проблем, вы должны сначала загрузить сгенерированный файл .fpr, а затем проверить объединенные результаты, например, чтобы исключить подавленные проблемы.

person bvamos    schedule 13.01.2017