I have a project configured for building selecting environment target.
The project uses the Subversion Release Plugin and the List Subversion
tags, and the svn url is something like: svn://ip/url/${environment}
where environment is the parameter choosed with List Subversion tags.
Environment can be one of: trunk, tags/artifact-1.0.0,
branches/artifact-1.0.0-a1, and similar.
I think this kind of configuration is opposed to the main concept of
Jenkins, because I've revised
https://github.com/jenkinsci/jenkins/blob/master/core/src/main/java/hudson/model/AbstractProject.java
.
At public PollingResult poll( TaskListener listener ) {
if (pollingBaseline==null) {
R success = getLastSuccessfulBuild(); // if we have a persisted
baseline, we'll find it by this
for (R r=lb; r!=null; r=r.getPreviousBuild()) {
SCMRevisionState s = r.getAction(SCMRevisionState.class);
if (s!=null) {
pollingBaseline = s;
break;
}
if (r==success) break; // searched far enough
}
// NOTE-NO-BASELINE:
// if we don't have baseline yet, it means the data is built by old
Hudson that doesn't set the baseline
// as action, so we need to compute it. This happens later.
}
*
*
I think that code implies an unique line (for example, *trunk*, or *tags* or
*branches*), because if I mix *trunk* builds with *tags* builds Jenkins may be
confused about changes.
Is this right?