Зарегистрируйте предупреждающие сообщения в текстовом файле из скрипта торта.

Я использую приведенный ниже скрипт торта для компиляции моего проекта C#. Во время выполнения скрипта в PowerShell отображается несколько предупреждающих сообщений. Мне нравится регистрировать предупреждения в текстовом файле, который находится в физическом местоположении (например: D:\WarningReport.txt)). Ниже приведена задача сценария пирога, которую я использую для компиляции проекта.

Task("Build")
    .Does(() =>
{
    if(IsRunningOnWindows())
    {
      MSBuild("./src/Example.sln", settings =>
        settings.SetConfiguration(configuration));
    }
});

Мне нравится добавлять что-то вроде ниже,

LogWarningMessagesTo("D:\WarningReportes.txt");
LogErrorMessagesTo("D:\ErrorReportes.txt");

Как это сделать?


person Meikanda Nayanar . I    schedule 16.02.2017    source источник


Ответы (1)


Если вы хотите регистрировать предупреждения и ошибки от псевдонима MSBuild, это, безусловно, возможно с помощью Метод расширения AddFileLogger в параметре MSBuildSettings.

В основном изменить

  MSBuild("./src/Example.sln", settings =>
    settings.SetConfiguration(configuration));

to

MSBuild("./src/Example.sln", settings =>
    settings.SetConfiguration(configuration)
            .AddFileLogger(new MSBuildFileLogger {
                LogFile ="D:/WarningReportes.txt",
                MSBuildFileLoggerOutput = MSBuildFileLoggerOutput.WarningsOnly })
            .AddFileLogger(new MSBuildFileLogger {
                LogFile ="D:/ErrorReportes.txt",
                MSBuildFileLoggerOutput = MSBuildFileLoggerOutput.ErrorsOnly })
  );
person devlead    schedule 16.02.2017