Hi Ketan,
I created a simple pipeline that runs as a test. Here is the full XML for that
pipeline:
<pipeline name="Test-FileCheckout">
<materials>
<tfs url="http://tfs.mydomain.com:8080/tfs/DefaultCollection"
username="myServiceAccount" domain="mydomain" encryptedPassword="REDACTED"
projectPath="$/MyTeamProject/AssemblyInfo.cs" dest="tfs/AssemblyInfo.cs"
materialName="AssemblyInfo" />
</materials>
<stage name="defaultStage">
<jobs>
<job name="defaultJob" />
</jobs>
</stage>
</pipeline>
This pipeline runs successfully under version 15.2 but file checkout fails
under version 18.10.
Please let me know if there is any additional information I can provide.
Regards,
Jason
From: [email protected] [mailto:[email protected]] On Behalf Of Ketan
Padegaonkar
Sent: November-06-18 9:56 AM
To: [email protected]
Subject: Re: [go-cd] TFS Checkout Fails After Updating from 15.2 to 18.10
Could you perhaps paste a snippet of the <materials/> XML element in your
config for us to check what's up?
- Ketan
On Sat, Nov 3, 2018 at 1:57 AM Jason Smyth
<[email protected]<mailto:[email protected]>> wrote:
While testing an update from version 15.2 to 18.10 we have run into an issue
that may be bug in either GoCD or the TFS JDK that it uses.
For reasons that I won't go into, we have several pipelines that include
multiple TFS materials, some of which are single files from our TFS repository.
For example:
* AssemblyInfo
* Project Path: $/TeamProjectName/AssemblyInfo.cs
* Destination Directory: tfs/AssemblyInfo.cs
* Packages:
* Project Path: $/TeamProjectName/packages
* Destination Directory: tfs/packages
We have to include the file name in the AssemblyInfo material's Destination
Directory (DD) because otherwise the Packages material's DD appears to be
nested inside the AssemblyInfo DD and GoCD throws an error when trying to save
the configuration.
On version 15.2 everything works as intended but after updating the GoCD agent
fails to check out the AssemblyInfo material with an error like the following:
Failed while checking out into Working Folder:
pipelines\MyPipeline\tfs\AssemblyInfo.cs, Project Path:
$/TeamProjectName/AssemblyInfo.cs, Workspace:
bb18a58c6abfa36db84643de09258c86feaa48bc711174334eaea61594b9623f, Username:
BuildUser, Domain: mydomain, Root Cause: java.io.FileNotFoundException:
E:\GoCD\Go
Agent\pipelines\MyPipeline\tfs\AssemblyInfo.cs\$tf\5\377de3f5-a6f8-41ed-970a-9b0bbf2c1a50.gz
(The system cannot find the path specified)
This error is consistent across all tested pipelines that follow this format.
Based on the path of the file that is triggering the FileNotFoundException, it
seems as if the agent is attempting to create the $tf directory required by a
local TFS workspace inside the file that it is trying to check out. Since you
can't create a directory inside a file, this fails and eventually results in
the FileNotFoundException being thrown when the checkout process tries to
access a file from the $tf directory.
It would seem that an easy fix would be to tell the agent to use a server
workspace instead of a local one but I haven't been able to find a way to
configure that option.
Does anyone have any experience with this issue or any suggestions on how we
can overcome it?
In case it's relevant we are running GoCD server on a 64-bit Linux system and
the agent is Windows Server 2012R2 64-bit running the agent bundled with 32-bit
Java.
Thanks in advance for any advice you can offer,
Jason
--
You received this message because you are subscribed to the Google Groups
"go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to
[email protected]<mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to a topic in the Google
Groups "go-cd" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/go-cd/00PZ6loeunk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
[email protected]<mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups
"go-cd" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.