Appreciate everybody’s inputs on this, but we’re still having the same problem. A build with the –verbose option gave us this result that appears to be a NAnt Core issue. Any ideas? Is this a bug or do I have a problem in my <vssget> using the <version>? I’ve tried the functions convert::to-string and convert::to-int, but the documentation says <version> is a string.
Thx!
Dave
C:\0_drisler_test\vssget_changeset.build(53,7):
The get operation failed.:
NAnt.Core.BuildException: C:\0_drisler_test\vssget_changeset.build(53,7):
The get operation failed. ---> System.Runtime.InteropServices.COMException (0x8004D84B): Access to file "C:\0_drisler_test" denied
at SourceSafeTypeLib.VSSItemClass.Get(String& Local, Int32 iFlags)
at NAnt.Contrib.Tasks.SourceSafe.GetTask.ExecuteTask() in d:\Source\nantcontrib-20041103T210313Z\src\Tasks\SourceSafe
\GetTask.cs:line 182
--- End of inner exception stack trace ---
at NAnt.Contrib.Tasks.SourceSafe.GetTask.ExecuteTask() in d:\Source\nantcontrib-20041103T210313Z\src\Tasks\SourceSafe
\GetTask.cs:line 184
at NAnt.Core.Task.Execute() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Task.cs:line 177
at NAnt.Core.TaskContainer.ExecuteChildTasks() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\TaskContainer.cs:line 120
at NAnt.Core.TaskContainer.ExecuteTask() in d:\Source\nant 20050105T211034Z\src\NAnt.Core\TaskContainer.cs:line 90
at NAnt.Core.Task.Execute() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Task.cs:line 177
at NAnt.Core.Tasks.LoopTask.ExecuteChildTasks() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Tasks\LoopTask.cs:line 406
at NAnt.Core.TaskContainer.ExecuteTask() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\TaskContainer.cs:line 90
at NAnt.Core.Tasks.LoopTask.DoWork(String[] propVals) in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Tasks\LoopTask
.cs:line 433
at NAnt.Core.Tasks.LoopTask.DoWorkOnFileLines(String filename) in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Tasks
\LoopTask.cs:line 448
at NAnt.Core.Tasks.LoopTask.ExecuteTask() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Tasks\LoopTask.cs:line 364
at NAnt.Core.Task.Execute() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Task.cs:line 177
at NAnt.Core.Project.InitializeProjectDocument(XmlDocument doc) in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Proj
ect.cs:line 1332
at NAnt.Core.Project.Execute() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Project.cs:line 830
at NAnt.Core.Project.Run() in d:\Source\nant-20050105T211034Z\src\NAnt.Core\Project.cs:line 924
_____________________________________________
From: Risler, Dave
Sent: Monday, January 31, 2005 3:14 PM
To: '[email protected]'
Subject: vssget failed "access denied"
Hi,
I am getting a “access to file <my VSS working directory> denied” error message from our build file. Has anybody seen this before?
I’ve attached our full build file and the failing snippet below. If I just do a <vssget> latest, no problems writing to the VSS working dir, but we need to select the explicit version cited in the changeset.txt file before doing a CM build.
<< File: vssget_perltext.build >>
Thanks,
Dave
<!-- using the <regex> task to extract the version number from each line -->
<!-- the pipe ( | ) char separates the version number -->
<foreach item="Line" in="changeset.txt" property="myLine" >
<do>
<!-- debug -->
<echo message="line=${myLine}"/>
<regex pattern="(?'filename'.*)\|(?'version'\w+)$" input="${myLine}" />
<!-- debug -->
<echo message="file=${filename}, ver=${version}"/>
<vssget
user="drisler"
password=""
localpath="C:\0_drisler_test"
removedeleted="true"
replace="true"
writable="true"
dbpath="\\icivss\DevSourceControl\srcsafe.ini"
path="${filename}"
version="${version}"
/>
</do>
</foreach>
