If a DRS rule uses a location based rule for a directory such as: http://foo.com/dir1/dir2 it will match an artifact in a different directory such as: http://foo.com/dir1/dir20/app.jnlp due to the code in at end of RuleId.pathIncludes(): if (rulePath == null || rulePath.length() == 0 || artifactPath.startsWith(rulePath)) { pathMatch = true; } else { Trace.println("Path mistach, actualPath: " + artifactPath, TraceLevel.RULESET); } return pathMatch; This is not the case if the location in the DRS includes the trailing slash: http://foo.com/dir1/dir2/
|