コード例 #1
0
        protected override void DoExecute(ITaskContext context)
        {
            string msbuildPath = FindExecutableBuildPath(context);

            IRunProgramTask task = CommonTasksFactory.CreateRunProgramTask(msbuildPath);

            task.EncloseParametersInQuotes(false);

            if (!string.IsNullOrEmpty(WorkFolder))
            {
                task.SetWorkingDir(WorkFolder);
            }

            if (!string.IsNullOrEmpty(SolutionFile))
            {
                task.AddArgument(SolutionFile);
            }

            if (Timeout != null)
            {
                task.ExecutionTimeout(Timeout.Value);
            }

            foreach (var p in Parameters)
            {
                task.AddArgument(p);
            }

            if (CpuCount > 0)
            {
                task.AddArgument("/maxcpucount:{0}", CpuCount);
            }

            task.Execute(context);
        }
コード例 #2
0
 public DnxTask()
 {
     ClrVersionName     = DnuTask.LatestClrVersion;
     CommonTasksFactory = new CommonTasksFactory();
     Parameters         = new Collection <string>();
 }
コード例 #3
0
 protected MSBuildTask()
 {
     Parameters         = new Collection <string>();
     CommonTasksFactory = new CommonTasksFactory();
     CpuCount           = 3;
 }