Как рекурсивно сканировать код в sonarqube

У меня есть код в разных папках, таких как папка a, папка b, папка c.... и все эти три папки находятся в папке с именем "sonar". если я хочу сканировать все эти папки одновременно, используя sonarqube, как я могу это сделать. ничего, если я оставлю файл sonar-project.properties в папке sonar? или мне нужно сохранить sonar-project.properties во всех папках, например, в папке a, папке b и папке c по отдельности


person Community    schedule 10.04.2017    source источник


Ответы (1)


Обычно свойства должны быть для каждой папки для проведения анализа каждой папки.

Вы также можете попробовать следующий подход, если он соответствует вашим потребностям и не требует большого обучения: Предварительные требования: ANT Knowledge Sonar API

Преимущества: 1. Единый/центральный подход для каждого анализа кода. 2. Можно избежать использования sonar.properties для каждого проекта/исходной папки.

В этом подходе напишите сценарий ANT, который принимает динамические параметры.

Образец:

<target name="setsonarproperties" description="Setting the sonar properties">
    <property name="sonar.projectVersion" value="${projectVersion}" />
    <property name="sonar.projectKey" value="${targetProduct}_${projectVersion}" />
    <property name="sonar.projectName" value="${targetProduct}" />
    <property name="sonar.host.url" value="${hostUrl}" />
    <property name="sonar.login" value="${hostUserName}" />
    <property name="sonar.password" value="${hostPassword}" />
    <loadfile property="textFile" srcfile="${buildOrder}" />
    <for param="line" list="${textFile}" delimiter="${line.separator}">
        <sequential>
            <echo message="@{line}" />
            <copy todir="${sourcePath}/sonarsources/@{line}">
                <fileset dir="${sourcePath}/@{line}">
                </fileset>
            </copy>
        </sequential>
    </for>
</target>

Затем также установите имя пользователя и пароль сонара: Запустите анализатор:

<target name="sonar" depends="setsonarproperties" description="executing sonar">
    <taskdef uri="antlib:org.sonar.ant" resource="org/sonar/ant/antlib.xml">
        <!-- Update the following line, or put the "sonar-ant-task-*.jar" file 
            in your "$HOME/.ant/lib" folder -->
    </taskdef>
    <sonar:sonar />
</target>
person Vijay Reddy    schedule 10.04.2017
comment
Спасибо за ваш комментарий, но это больше относится к ANT. То же самое и для разных языков, таких как мэйнфреймы @Vijay Reddy - person ; 10.04.2017
comment
Я не пытался использовать мейнфрейм, но, скорее всего, было бы то же самое, если бы у вас был API для мейнфрейма... - person Vijay Reddy; 11.04.2017
comment
А также нужно ли мне иметь sonar-project.properties?. также, где я могу хранить этот код муравья. я могу как-нибудь связаться с вами - person ; 11.04.2017
comment
вы можете связаться со мной @[email protected] - person Vijay Reddy; 15.04.2017