提交 f0dde245 编写于 作者: O Olivier Lamy

[FIXED JENKINS-8573] maven.build.timestamp property is not available during maven build

上级 c2cd2d11
......@@ -39,7 +39,7 @@ THE SOFTWARE.
<url>http://wiki.jenkins-ci.org/display/JENKINS/Maven+2+Project+Plugin</url>
<properties>
<mavenInterceptorsVersion>1.0</mavenInterceptorsVersion>
<mavenInterceptorsVersion>1.1</mavenInterceptorsVersion>
<mavenVersion>3.0.3</mavenVersion>
<maven.version>${mavenVersion}</maven.version>
<aetherVersion>1.11</aetherVersion>
......
/*
* The MIT License
*
* Copyright (c) 2004-2010, Sun Microsystems, Inc., Kohsuke Kawaguchi, id:cactusman, Seiji Sogabe
* Copyright (c) 2004-2010, Sun Microsystems, Inc., Kohsuke Kawaguchi, id:cactusman, Seiji Sogabe, Olivier Lamy
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
......
/*
* The MIT License
*
* Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Erik Ramfelt, Yahoo! Inc., Tom Huybrechts
* Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi, Erik Ramfelt,
* Yahoo! Inc., Tom Huybrechts, Olivier Lamy
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
......
package hudson.maven;
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
import hudson.Launcher;
import hudson.model.BuildListener;
import hudson.model.ParametersDefinitionProperty;
......@@ -146,6 +165,20 @@ public class Maven3BuildTest extends HudsonTestCase {
assertEquals("not only one module", 1, m.getModules().size());
}
@Bug(8573)
public void testBuildTimeStampProperty() throws Exception {
MavenInstallation mavenInstallation = configureMaven3();
MavenModuleSet m = createMavenProject();
m.setMaven( mavenInstallation.getName() );
m.getReporters().add(new TestReporter());
m.setScm(new ExtractResourceSCM(getClass().getResource("JENKINS-8573.zip")));
m.setGoals( "process-resources" );
buildAndAssertSuccess(m);
String content = m.getLastBuild().getWorkspace().child( "target/classes/test.txt" ).readToString();
assertFalse( content.contains( "${maven.build.timestamp}") );
assertFalse( content.contains( "${maven.build.timestamp}") );
}
private static class TestReporter extends MavenReporter {
@Override
public boolean end(MavenBuild build, Launcher launcher, BuildListener listener) throws InterruptedException, IOException {
......
......@@ -5,19 +5,15 @@ import hudson.model.BuildListener;
import hudson.model.ParametersDefinitionProperty;
import hudson.model.Result;
import hudson.model.StringParameterDefinition;
import hudson.scm.SubversionSCM;
import hudson.tasks.Maven.MavenInstallation;
import hudson.util.NullStream;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import org.jvnet.hudson.test.Bug;
import org.jvnet.hudson.test.Email;
import org.jvnet.hudson.test.ExtractResourceSCM;
import org.jvnet.hudson.test.HudsonTestCase;
import org.tmatesoft.svn.core.SVNException;
/**
* @author Kohsuke Kawaguchi
......@@ -135,6 +131,22 @@ public class MavenBuildTest extends HudsonTestCase {
assertFalse( mmsb.getProject().getModules().isEmpty());
}
@Bug(8573)
public void testBuildTimeStampProperty() throws Exception {
MavenInstallation mavenInstallation = configureDefaultMaven();
MavenModuleSet m = createMavenProject();
m.setMaven( mavenInstallation.getName() );
m.getReporters().add(new TestReporter());
m.setScm(new ExtractResourceSCM(getClass().getResource("JENKINS-8573.zip")));
m.setGoals( "process-resources" );
buildAndAssertSuccess(m);
String content = m.getLastBuild().getWorkspace().child( "target/classes/test.txt" ).readToString();
assertFalse( content.contains( "${maven.build.timestamp}") );
assertFalse( content.contains( "${maven.build.timestamp}") );
System.out.println( "content " + content );
}
private static class TestReporter extends MavenReporter {
@Override
public boolean end(MavenBuild build, Launcher launcher, BuildListener listener) throws InterruptedException, IOException {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册