-
Bug
-
Resolution: Fixed
-
Critical
-
None
I have a build where polling always returns:
Started on Apr 9, 2010 1:30:48 AM
Workspace doesn't contain http://host/trunk/java-projects/project/com.cut.xyz.resources. Need a new build.
Done. Took 1.1 sec
Changes found
even though there have been no changes.
The reason is that the resource is checked out directly as an svn resources, but also occurs as a pinned external in a different svn resource.
Therefore, the revision.txt of the build looks like this:
[lastStable] dlpweiss01| cat revision.txt
http://host/trunk/java-projects/project/com.cut.xyz/src/main/ddl/305218
http://host/trunk/java-projects/project/com.us.base/358810
http://host/trunk/java-projects/project/com.cut.xyz.desktop/357413
http://host/trunk/java-projects/project/com.cut.xyz.resources/296160
http://host/trunk/java-projects/project/com.us.xyz.resources/357643
http://host/trunk/web-development/ops/applications/com.cut.xyz-httpd/343381
http://host/trunk/java-projects/project/com.us.ddlutils/357413
http://host/trunk/java-projects/project/com.us.sdk/360232
http://host/trunk/web-development/tools/maven/com.us.web.maven/360350
http://host/trunk/java-projects/project/com.cut.xyz/360531
http://host/trunk/java-projects/project/com.us.utilities/360193
http://host/trunk/java-projects/project/com.us.businessdata/358152
http://host/trunk/java-projects/project/com.us.resources/357413
http://host/trunk/java-projects/project/com.us.thirdparty.resources/357413
http://host/trunk/java-projects/project/com.us.xyz.doc/359896
http://host/trunk/web-development/ops/applications/com.cut.xyz-webapp/347246
http://host/trunk/java-projects/project/com.cut.utilities/359707
But the svnexternals.txt looks like this:
<?xml version='1.0' encoding='UTF-8'?> <list> <external> <path>com.us.xyz.doc//ddl</path> <url>http://host/trunk/java-projects/project/com.cut.xyz/src/main/ddl</url> <revision>305218</revision> </external> <external> <path>com.us.xyz.doc//com.cut.xyz.resources</path> <url>http://host/trunk/java-projects/project/com.cut.xyz.resources</url> <revision>296160</revision> </external> </list>
And because the resource is a pinned external, this code removes it from the revisions:
@Override public SCMRevisionState calcRevisionsFromBuild(AbstractBuild<?, ?> build, Launcher launcher, TaskListener listener) throws IOException, InterruptedException { // exclude locations that are svn:external-ed with a fixed revision. Map<String,Long> wsRev = parseRevisionFile(build,true); for (External e : parseExternalsFile(build.getProject())) if (e.isRevisionFixed()) wsRev.remove(e.url); return new SVNRevisionState(wsRev); }
Then this code causes the error:
// are the locations checked out in the workspace consistent with the current configuration? for (ModuleLocation loc : getLocations(lastCompletedBuild)) { if (!baseline.revisions.containsKey(loc.getURL())) { listener.getLogger().println( Messages.SubversionSCM_pollChanges_locationNotInWorkspace(loc.getURL())); return BUILD_NOW; } } }
because we've removed the key from baseline.revisions.
Not yet sure how to fix this.
- is related to
-
JENKINS-16533 Jobs checked out from svn with pinned externals continuously run (with no changes in svn)
- Resolved