提交 b16b2032 编写于 作者: S sghill

Merge remote-tracking branch 'upstream/master' into JENKINS-19803

......@@ -54,6 +54,14 @@ Upcoming changes</a>
<!-- Record your changes in the trunk here. -->
<div id="trunk" style="display:none"><!--=TRUNK-BEGIN=-->
<ul class=image>
<li class=>
</ul>
</div><!--=TRUNK-END=-->
<!-- these changes are controlled by the release process. DO NOT MODIFY -->
<div id="rc" style="display:none;"><!--=BEGIN=-->
<h3><a name=v1.534>What's new in 1.534</a> <!--=DATE=--></h3>
<ul class=image>
<li class='major bug'>
Default crumb issuer configurations saved in older releases did not load as of Jenkins 1.531.
......@@ -61,6 +69,9 @@ Upcoming changes</a>
<li class='major bug'>
As of 1.532 download of artifact ZIPs was broken.
(<a href="https://issues.jenkins-ci.org/browse/JENKINS-19752">issue 19752</a>)
<li class='major bug'>
Old copies of <code>maven3-agent.jar</code> on slaves were not being reliably updated, leading to errors.
(<a href="https://issues.jenkins-ci.org/browse/JENKINS-19251">issue 19251</a>)
<li class='rfe'>
Add option to disable "Remember me on this computer" checkbox in login screen.
(<a href="https://issues.jenkins-ci.org/browse/JENKINS-15757">issue 15757</a>)
......@@ -68,17 +79,13 @@ Upcoming changes</a>
Added postCheckout method for SCMs
(<a href="https://issues.jenkins-ci.org/browse/JENKINS-19740">issue 19740</a>)
</ul>
</div><!--=TRUNK-END=-->
<!-- these changes are controlled by the release process. DO NOT MODIFY -->
<div id="rc" style="display:none;"><!--=BEGIN=-->
<h3><a name=v1.533>What's new in 1.533</a> <!--=DATE=--></h3>
</div><!--=END=-->
<h3><a name=v1.533>What's new in 1.533</a> (2013/09/29)</h3>
<ul class=image>
<li class=rfe>
Offer alternate error message for pattern-based project naming strategy.
(<a href="https://github.com/jenkinsci/jenkins/pull/914">pull request 914</a>)
</ul>
</div><!--=END=-->
<h3><a name=v1.532>What's new in 1.532</a> (2013/09/23)</h3>
<ul class=image>
<li class='major bug'>
......
......@@ -5,7 +5,7 @@
<parent>
<artifactId>pom</artifactId>
<groupId>org.jenkins-ci.main</groupId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
</parent>
<artifactId>cli</artifactId>
......
......@@ -29,7 +29,7 @@ THE SOFTWARE.
<parent>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>pom</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
......
jenkins (1.533) unstable; urgency=low
* See http://jenkins-ci.org/changelog for more details.
-- Kohsuke Kawaguchi <kk@kohsuke.org> Sun, 29 Sep 2013 15:20:28 -0700
jenkins (1.532) unstable; urgency=low
* See http://jenkins-ci.org/changelog for more details.
......
......@@ -29,7 +29,7 @@ THE SOFTWARE.
<parent>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>pom</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
</parent>
<artifactId>maven-plugin</artifactId>
......
......@@ -8,6 +8,7 @@ import hudson.FilePath;
import hudson.Launcher;
import hudson.Platform;
import hudson.Proc;
import hudson.Util;
import hudson.maven.ProcessCache.NewProcess;
import hudson.model.BuildListener;
import hudson.model.Computer;
......@@ -534,7 +535,7 @@ public abstract class AbstractMavenProcessFactory
zip.setProject(new Project());
zip.execute();
jar = t;
} else if (copiedJar.lastModified() > jar.lastModified()) {
} else if (copiedJar.exists() && copiedJar.digest().equals(Util.getDigestOf(jar))) {
log.println(seedName + ".jar already up to date");
return copiedJar;
}
......
......@@ -26,6 +26,7 @@ package hudson.maven;
import hudson.FilePath;
import hudson.Launcher;
import hudson.EnvVars;
import hudson.Util;
import hudson.maven.agent.Main;
import hudson.maven.agent.Maven21Interceptor;
import hudson.model.BuildListener;
......@@ -40,7 +41,6 @@ import java.io.FilenameFilter;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
/**
......@@ -69,11 +69,10 @@ final class MavenProcessFactory extends AbstractMavenProcessFactory implements P
// TODO why would we not pick it up using GetClassWorldsJar like we do for M2 on master or M3 anywhere?
FilePath jar = slaveRoot.child("classworlds.jar");
// copied to root of this JAR using dependency:generate-resources:
URLConnection conn = MavenProcessFactory.class.getClassLoader().getResource("classworlds.jar").openConnection();
if (jar.lastModified() > conn.getLastModified()) {
if (jar.exists() && jar.digest().equals(Util.getDigestOf(MavenProcessFactory.class.getClassLoader().getResourceAsStream("classworlds.jar")))) {
listener.getLogger().println("classworlds.jar already up to date");
} else {
InputStream in = conn.getInputStream();
InputStream in = MavenProcessFactory.class.getClassLoader().getResourceAsStream("classworlds.jar");
try {
jar.copyFrom(in);
} finally {
......
......@@ -11,7 +11,7 @@
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>plugin</artifactId>
<name>Jenkins plugin POM</name>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<packaging>pom</packaging>
<!--
......@@ -38,7 +38,7 @@
<dependency><!-- if a plugin wants to depend on the maven plugin, choose the right version automatically -->
<groupId>org.jenkins-ci.main</groupId>
<artifactId>maven-plugin</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>
......@@ -48,25 +48,25 @@
<groupId>org.jenkins-ci.main</groupId>
<artifactId>jenkins-war</artifactId>
<type>war</type>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>jenkins-core</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>jenkins-test-harness</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>ui-samples-plugin</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<scope>test</scope>
</dependency>
<!--
......
......@@ -33,7 +33,7 @@ THE SOFTWARE.
<groupId>org.jenkins-ci.main</groupId>
<artifactId>pom</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Jenkins main module</name>
......
......@@ -29,7 +29,7 @@ THE SOFTWARE.
<parent>
<artifactId>pom</artifactId>
<groupId>org.jenkins-ci.main</groupId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
</parent>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>jenkins-test-harness</artifactId>
......
......@@ -28,6 +28,7 @@ import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import com.gargoylesoftware.htmlunit.WebAssert;
import com.gargoylesoftware.htmlunit.html.HtmlForm;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import hudson.model.Cause.UserIdCause;
import hudson.security.AccessDeniedException2;
import hudson.security.GlobalMatrixAuthorizationStrategy;
import hudson.security.HudsonPrivateSecurityRealm;
......@@ -224,7 +225,7 @@ public class UserTest {
}
@Test
public void testGetBuildsAndGetProjects() throws IOException, InterruptedException {
public void testGetBuildsAndGetProjects() throws Exception {
User user = User.get("John Smith", true, Collections.emptyMap());
FreeStyleProject project = j.createFreeStyleProject("free");
FreeStyleProject project2 = j.createFreeStyleProject("free2");
......@@ -232,24 +233,20 @@ public class UserTest {
FakeChangeLogSCM scm = new FakeChangeLogSCM();
scm.addChange().withAuthor(user.getId());
project.setScm(scm);
Queue.getInstance().schedule(project,0);
j.buildAndAssertSuccess(project);
j.buildAndAssertSuccess(project2);
Build build = project.getLastBuild();
while(build==null){
Thread.sleep(100);
build = project.getLastBuild();
}
Queue.getInstance().schedule(project2,0);
Build build2 = project2.getLastBuild();
while(build2==null){
Thread.sleep(100);
build2 = project2.getLastBuild();
}
assertTrue("User should participate in the last build of project free.", user.getBuilds().contains(build));
assertFalse("User should not participate in the last build of project free2.", user.getBuilds().contains(build2));
assertTrue("User should participate in the project free.", user.getProjects().contains(project));
assertFalse("User should not participate in the project free2.", user.getProjects().contains(project2));
//JENKINS-16178: build should include also builds scheduled by user
CauseAction action = build2.getAction(CauseAction.class); //remove existing cause action
if(action!=null)
build2.getActions().remove(action);
build2.addAction(new CauseAction(new Cause.UserIdCause()));
assertFalse("User should not participate in the last build of project free2.", user.getBuilds().contains(build2));
assertFalse("Current user should not participate in the last build of project free.", User.current().getBuilds().contains(build));
......
......@@ -29,7 +29,7 @@ THE SOFTWARE.
<parent>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>pom</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
</parent>
<artifactId>ui-samples-plugin</artifactId>
......
......@@ -28,7 +28,7 @@ THE SOFTWARE.
<parent>
<groupId>org.jenkins-ci.main</groupId>
<artifactId>pom</artifactId>
<version>1.534-SNAPSHOT</version>
<version>1.535-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册