I am the developer of the horn OSS project , which helps ease the pain of creating other OSS projects. We are trying to make a horn with ruby stones, as an experience. One of the many horn issues is dealing with all of the various build engines, such as Nant, powershell, msbuild, and rake, which is the point of this post.
Horn has 2 manifestations, it works as a cmd line tool, and it also works as a Windows service, where it creates all the different packages that can be downloaded from this site.
Some OSS projects use rake to create the source code that eventually led me to the bottom of this post.
I cannot get the rake process to start from the Windows service, and the same code can start the rake process without any problems when starting from the command line. The reason rake is launched from the cmd line tool may be because it is connected to the window, although I cannot say it correctly. An exception is not thrown, but the process simply does not start.
The funny thing is that any other .exe works fine, and it only causes a rake.
Here is the beginning of the code that the process creates:
public IProcess GetProcess(string pathToBuildTool, string cmdLineArguments, string workingDirectoryPath)
{
var psi = new ProcessStartInfo(pathToBuildTool, cmdLineArguments)
{
UseShellExecute = false,
RedirectStandardOutput = true,
WorkingDirectory = workingDirectoryPath,
Arguments = cmdLineArguments
};
return new DiagnosticsProcess(Process.Start(psi));
}
Does anyone have any suggestions regarding the problem?