What you need to do is something like this:
<exec>
<executable>C:\Windows\System32\cmd.exe</executable>
<baseDirectory>_your_base_directory_</baseDirectory>
<buildArgs>/c rmdir dir2</buildArgs>
</exec>
<exec>
<executable>C:\Windows\System32\cmd.exe</executable>
<baseDirectory>_your_base_directory_</baseDirectory>
<buildArgs>/c ren dir1 dir2</buildArgs>
</exec>
-Frank Innes
On Jun 30, 5:55 am, Nesavi <[email protected]> wrote:
> Hi,
>
> I am trying to remove and rename som directories through CCNet
> (1.4.2). But it doesn't seem to work. I have tried the %WinDir% and
> %WinDir%\System32\wbem to my path variable, but with the same result.
>
> My config looks like follows:
>
> <cruisecontrol>
> <project name="testRename" queue="main">
> <workingDirectory>C:\testCCnet</workingDirectory>
>
> <prebuild>
> <exec>
> <executable>rmdir</executable>
> <buildArgs>dir2</buildArgs>
> <buildTimeoutSeconds>120</buildTimeoutSeconds>
> </exec>
> <exec>
> <executable>ren</executable>
> <buildArgs>dir1 dir2</buildArgs>
> <buildTimeoutSeconds>120</buildTimeoutSeconds>
> </exec>
> </prebuild>
> <publishers>
> <merge>
> <files/>
> </merge>
> <xmllogger/>
> </publishers>
> </project>
> </cruisecontrol>
>
> Below is the exception that I get:
>
> BUILD EXCEPTION
> Error Message: ThoughtWorks.CruiseControl.Core.Tasks.BuilderException:
> Unable to execute: FileName: [rmdir] -- Arguments: [dir2] --
> WorkingDirectory: [C:\testCCnet] -- StandardInputContent: [] --
> Timeout: [120000]
> System.IO.IOException: Unable to execute file [C:\testCCnet\rmdir].
> The file may not exist or may not be executable. --->
> System.ComponentModel.Win32Exception: The system cannot find the file
> specified
> at System.Diagnostics.Process.StartWithCreateProcess
> (ProcessStartInfo startInfo)
> at System.Diagnostics.Process.Start()
> at
> ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.RunnableProcess.StartProcess
> ()
> --- End of inner exception stack trace ---
> at
> ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.RunnableProcess.StartProcess
> ()
> at
> ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.RunnableProcess.Run
> ()
> at ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.Execute
> (ProcessInfo processInfo, ProcessMonitor processMonitor)
> at
> ThoughtWorks.CruiseControl.Core.Tasks.ExecutableTask.AttemptToExecute
> (ProcessInfo info, ProcessMonitor processMonitor) --->
> System.IO.IOException: Unable to execute file [C:\testCCnet\rmdir].
> The file may not exist or may not be executable. --->
> System.ComponentModel.Win32Exception: The system cannot find the file
> specified
> at System.Diagnostics.Process.StartWithCreateProcess
> (ProcessStartInfo startInfo)
> at System.Diagnostics.Process.Start()
> at
> ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.RunnableProcess.StartProcess
> ()
> --- End of inner exception stack trace ---
> at
> ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.RunnableProcess.StartProcess
> ()
> at
> ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.RunnableProcess.Run
> ()
> at ThoughtWorks.CruiseControl.Core.Util.ProcessExecutor.Execute
> (ProcessInfo processInfo, ProcessMonitor processMonitor)
> at
> ThoughtWorks.CruiseControl.Core.Tasks.ExecutableTask.AttemptToExecute
> (ProcessInfo info, ProcessMonitor processMonitor)
> --- End of inner exception stack trace ---
> at
> ThoughtWorks.CruiseControl.Core.Tasks.ExecutableTask.AttemptToExecute
> (ProcessInfo info, ProcessMonitor processMonitor)
> at ThoughtWorks.CruiseControl.Core.Tasks.ExecutableTask.Run
> (IIntegrationResult result)
> at ThoughtWorks.CruiseControl.Core.Project.RunTasks
> (IIntegrationResult result, IList tasksToRun)
> at ThoughtWorks.CruiseControl.Core.Project.Prebuild
> (IIntegrationResult result)
> at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Build
> (IIntegrationResult result) BaseDirectory: , Executable: rmdir
> Project: testRename
> Date of build: 2009-06-30 11:50:33
> Running time: 00:00:00
> Integration Request: Dashboard triggered a build (ForceBuild)