如何从 TFS vNext 构建步骤中生成一个持续到构建之后的离线进程?

How to spawn an offline process from a TFS vNext build step that would last beyond the build?

似乎如果我的构建步骤产生了一个子进程,该进程将无法在构建结束后继续存在 - 它会被终止。

但我有一个场景,其中触发子进程以离线完成构建不应等待它们完成的某些操作(向 Azure AppInsights 报告指标)。

这个过程在 XAML 构建中运行良好,但现在我们迁移到 vNext 它被破坏了,因为当构建结束时子进程被杀死。

可以做些什么?

最简单的方法是使用任务计划程序安排任务。

使用 Microsoft.Win32.TaskScheduler NuGet 包的示例:

using (var ts = new TaskService())
{
    // Create a new task definition and assign properties
    var td = ts.NewTask();
    td.Triggers.Add(new TimeTrigger(DateTime.Now.AddDays(-1)));
    td.Actions.Add(new ExecAction(MyExe, MyArgs));
    ts.RootFolder.RegisterTaskDefinition(MyTaskName, td).Run();
    ts.RootFolder.DeleteTask(MyTaskName);
}