Skip to content
Commits on Source (8)
......@@ -19,12 +19,15 @@
properties([buildDiscarder(logRotator(artifactNumToKeepStr: '5', numToKeepStr: env.BRANCH_NAME=='master'?'10':'5'))])
def buildOs = 'linux'
def buildJdk = '7'
def buildMvn = '3.5.0'
def tests
def CORE_IT_PROFILES='run-its,embedded'
try {
node('ubuntu') {
node(jenkinsEnv.labelForOS(buildOs)) {
dir('build') {
stage('Checkout') {
checkout scm
......@@ -33,77 +36,73 @@ node('ubuntu') {
def WORK_DIR=pwd()
stage('Build / Unit Test') {
def MAVEN_BUILD=tool name: 'Maven 3.3.9', type: 'hudson.tasks.Maven$MavenInstallation'
echo "Driving build and unit tests using Maven $MAVEN_BUILD"
def JAVA7_HOME=tool name: 'JDK 1.7 (latest)', type: 'hudson.model.JDK'
echo "Running build and unit tests with Java $JAVA7_HOME"
withEnv(["PATH+MAVEN=$MAVEN_BUILD/bin","PATH+JDK=$JAVA7_HOME/bin"]) {
sh "mvn clean verify -B -U -e -fae -V -Dmaven.test.failure.ignore=true -Dmaven.repo.local=$WORK_DIR/.repository"
String jdkName = jenkinsEnv.jdkFromVersion(buildOs, buildJdk)
String mvnName = jenkinsEnv.mvnFromVersion(buildOs, buildMvn)
withMaven(jdk: jdkName, maven: mvnName, mavenLocalRepo:"${WORK_DIR}/.repository", options:[
artifactsPublisher(disabled: false),
junitPublisher(ignoreAttachments: false),
findbugsPublisher(disabled: false),
openTasksPublisher(disabled: false),
dependenciesFingerprintPublisher(),
invokerPublisher(),
pipelineGraphPublisher()
]) {
sh "mvn clean verify -B -U -e -fae -V -Dmaven.test.failure.ignore=true"
}
dir ('apache-maven/target') {
sh "mv apache-maven-*-bin.zip apache-maven-dist.zip"
stash includes: 'apache-maven-dist.zip', name: 'dist'
}
junit allowEmptyResults: true, testResults:'**/target/*-reports/*.xml'
}
tests = resolveScm source: [$class: 'GitSCMSource', credentialsId: '', id: '_', remote: 'https://git-wip-us.apache.org/repos/asf/maven-integration-testing.git', traits: [[$class: 'jenkins.plugins.git.traits.BranchDiscoveryTrait'], [$class: 'GitToolSCMSourceTrait', gitTool: 'Default']]], targets: [BRANCH_NAME, 'master']
}
}
stage 'Integration Test'
parallel linuxJava7:{
node('ubuntu') {
def MAVEN_NIX_J7=tool name: 'Maven 3 (latest)', type: 'hudson.tasks.Maven$MavenInstallation'
echo "Driving integration tests using Maven $MAVEN_NIX_J7"
def JAVA_NIX_J7=tool name: 'JDK 1.7 (latest)', type: 'hudson.model.JDK'
echo "Running integration tests with Java $JAVA_NIX_J7"
parallel linuxJava7:{
node(jenkinsEnv.labelForOS('linux')) {
stage ('Linux Java 7') {
String jdkName = jenkinsEnv.jdkFromVersion('linux', '7')
String mvnName = jenkinsEnv.mvnFromVersion('linux', buildMvn)
dir('test') {
def WORK_DIR=pwd()
checkout tests
sh "rm -rvf $WORK_DIR/apache-maven-dist.zip $WORK_DIR/it-local-repo"
unstash 'dist'
withEnv(["PATH+MAVEN=$MAVEN_NIX_J7/bin","PATH+JDK=$JAVA_NIX_J7/bin"]) {
sh "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -Dmaven.repo.local=$WORK_DIR/it-local-repo -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
withMaven(jdk: jdkName, maven: mvnName, mavenLocalRepo:"${WORK_DIR}/it-local-repo", options:[
junitPublisher(ignoreAttachments: false)
]) {
sh "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
}
junit allowEmptyResults: true, testResults:'core-it-support/**/target/*-reports/*.xml,core-it-suite/target/*-reports/*.xml'
deleteDir() // clean up after ourselves to reduce disk space
}
}
}
},linuxJava8: {
node('ubuntu') {
def MAVEN_NIX_J8=tool name: 'Maven 3 (latest)', type: 'hudson.tasks.Maven$MavenInstallation'
echo "Driving integration tests using Maven $MAVEN_NIX_J8"
def JAVA_NIX_J8=tool name: 'JDK 1.8 (latest)', type: 'hudson.model.JDK'
echo "Running integration tests with Java $JAVA_NIX_J8"
node(jenkinsEnv.labelForOS('linux')) {
stage ('Linux Java 8') {
String jdkName = jenkinsEnv.jdkFromVersion('linux', '8')
String mvnName = jenkinsEnv.mvnFromVersion('linux', buildMvn)
dir('test') {
def WORK_DIR=pwd()
checkout tests
sh "rm -rvf $WORK_DIR/apache-maven-dist.zip $WORK_DIR/it-local-repo"
unstash 'dist'
withEnv(["PATH+MAVEN=$MAVEN_NIX_J8/bin","PATH+JDK=$JAVA_NIX_J8/bin"]) {
sh "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -Dmaven.repo.local=$WORK_DIR/it-local-repo -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
withMaven(jdk: jdkName, maven: mvnName, mavenLocalRepo:"${WORK_DIR}/it-local-repo", options:[
junitPublisher(ignoreAttachments: false)
]) {
sh "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
}
junit allowEmptyResults: true, testResults:'core-it-support/**/target/*-reports/*.xml,core-it-suite/target/*-reports/*.xml'
deleteDir() // clean up after ourselves to reduce disk space
}
}
}, winJava7: {
node('Windows') {
def MAVEN_WIN_J7=tool name: 'Maven 3 (latest)', type: 'hudson.tasks.Maven$MavenInstallation'
dir(MAVEN_WIN_J7) {
MAVEN_WIN_J7=pwd()
}
echo "Driving integration tests using Maven $MAVEN_WIN_J7"
def JAVA_WIN_J7=tool name: 'JDK 1.7 (latest)', type: 'hudson.model.JDK'
dir(JAVA_WIN_J7) {
JAVA_WIN_J7=pwd()
}
echo "Running integration tests with Java $JAVA_WIN_J7"
}, winJava7: {
node(jenkinsEnv.labelForOS('windows')) {
stage ('Windows Java 7') {
String jdkName = jenkinsEnv.jdkFromVersion('windows', '7')
String mvnName = jenkinsEnv.mvnFromVersion('windows', buildMvn)
// need a short path or we hit 256 character limit for paths
// using EXECUTOR_NUMBER guarantees that concurrent builds on same agent
......@@ -113,27 +112,21 @@ parallel linuxJava7:{
checkout tests
bat "if exist it-local-repo rmdir /s /q it-local-repo"
bat "if exist apache-maven-dist.zip del /q apache-maven-dist.zip"
withEnv(["Path+MAVEN=$MAVEN_WIN_J7\\bin","Path+JDK=$JAVA_WIN_J7\\bin","JAVA_HOME=$JAVA_WIN_J7"]) {
bat "set"
unstash 'dist'
bat "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -Dmaven.repo.local=$WORK_DIR/it-local-repo -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
withMaven(jdk: jdkName, maven: mvnName, mavenLocalRepo:"${WORK_DIR}/it-local-repo", options:[
junitPublisher(ignoreAttachments: false)
]) {
bat "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
}
junit allowEmptyResults: true, testResults:'core-it-support/**/target/*-reports/*.xml,core-it-suite/target/*-reports/*.xml'
deleteDir() // clean up after ourselves to reduce disk space
}
}
}, winJava8: {
node('Windows') {
def MAVEN_WIN_J8=tool name: 'Maven 3 (latest)', type: 'hudson.tasks.Maven$MavenInstallation'
dir(MAVEN_WIN_J8) {
MAVEN_WIN_J8=pwd()
}
echo "Driving integration tests using Maven $MAVEN_WIN_J8"
def JAVA_WIN_J8=tool name: 'JDK 1.8 (latest)', type: 'hudson.model.JDK'
dir(JAVA_WIN_J8) {
JAVA_WIN_J8=pwd()
}
echo "Running integration tests with Java $JAVA_WIN_J8"
}, winJava8: {
node(jenkinsEnv.labelForOS('windows')) {
stage ('Windows Java 8') {
String jdkName = jenkinsEnv.jdkFromVersion('windows', '8')
String mvnName = jenkinsEnv.mvnFromVersion('windows', buildMvn)
// need a short path or we hit 256 character limit for paths
// using EXECUTOR_NUMBER guarantees that concurrent builds on same agent
......@@ -143,20 +136,44 @@ parallel linuxJava7:{
checkout tests
bat "if exist it-local-repo rmdir /s /q it-local-repo"
bat "if exist apache-maven-dist.zip del /q apache-maven-dist.zip"
withEnv(["Path+MAVEN=$MAVEN_WIN_J8\\bin","Path+JDK=$JAVA_WIN_J8\\bin","JAVA_HOME=$JAVA_WIN_J8"]) {
bat "set"
unstash 'dist'
bat "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -Dmaven.repo.local=$WORK_DIR/it-local-repo -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
withMaven(jdk: jdkName, maven: mvnName, mavenLocalRepo:"${WORK_DIR}/it-local-repo", options:[
junitPublisher(ignoreAttachments: false)
]) {
bat "mvn clean install -P$CORE_IT_PROFILES -B -U -V -Dmaven.test.failure.ignore=true -DmavenDistro=$WORK_DIR/apache-maven-dist.zip"
}
junit allowEmptyResults: true, testResults:'core-it-support/**/target/*-reports/*.xml,core-it-suite/target/*-reports/*.xml'
deleteDir() // clean up after ourselves to reduce disk space
}
}
}
}
// JENKINS-34376 seems to make it hard to detect the aborted builds
} catch (org.jenkinsci.plugins.workflow.steps.FlowInterruptedException e) {
// this ambiguous condition means a user probably aborted
if (e.causes.size() == 0) {
currentBuild.result = "ABORTED"
} else {
currentBuild.result = "FAILURE"
}
throw e
} catch (hudson.AbortException e) {
// this ambiguous condition means during a shell step, user probably aborted
if (e.getMessage().contains('script returned exit code 143')) {
currentBuild.result = "ABORTED"
} else {
currentBuild.result = "FAILURE"
}
throw e
} catch (InterruptedException e) {
currentBuild.result = "ABORTED"
throw e
} catch (Throwable e) {
currentBuild.result = "FAILURE"
throw e
} finally {
node('ubuntu') {
emailext body: "See ${env.BUILD_URL}", recipientProviders: [[$class: 'CulpritsRecipientProvider'], [$class: 'FailingTestSuspectsRecipientProvider'], [$class: 'FirstFailingBuildSuspectsRecipientProvider']], replyTo: 'dev@maven.apache.org', subject: "${env.JOB_NAME} - build ${env.BUILD_DISPLAY_NAME} - ${currentBuild.result}", to: 'notifications@maven.apache.org'
// notify completion
stage("Notifications") {
jenkinsNotify()
}
}
......@@ -25,7 +25,7 @@ under the License.
<parent>
<groupId>org.apache.maven</groupId>
<artifactId>maven</artifactId>
<version>3.5.2</version>
<version>3.5.3</version>
</parent>
<artifactId>apache-maven</artifactId>
......
......@@ -167,7 +167,7 @@ find_file_argument_basedir() {
# concatenates all lines of a file
concat_lines() {
if [ -f "$1" ]; then
echo "`tr -s '\n' ' ' < "$1"`"
echo "`tr -s '\r\n' ' ' < "$1"`"
fi
}
......@@ -188,14 +188,6 @@ export MAVEN_PROJECTBASEDIR
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS
# detect cygwin or mingw pseudo-terminal for Jansi
# workaround for https://github.com/fusesource/jansi-native/issues/11
if $cygwin || $mingw; then
if [ -t 1 ]; then
MAVEN_OPTS="-Djansi.passthrough=true $MAVEN_OPTS"
fi
fi
exec "$JAVACMD" \
$MAVEN_OPTS \
$MAVEN_DEBUG_OPTS \
......
......@@ -61,11 +61,9 @@ goto error
:chkMHome
set "MAVEN_HOME=%~dp0.."
if not "%MAVEN_HOME%"=="" goto valMHome
if not "%MAVEN_HOME%"=="" goto stripMHome
goto error
:valMHome
:stripMHome
if not "_%MAVEN_HOME:~-1%"=="_\" goto checkMCmd
set "MAVEN_HOME=%MAVEN_HOME:~0,-1%"
......
......@@ -19,9 +19,11 @@ specific language governing permissions and limitations
under the License.
-->
<project xmlns="http://maven.apache.org/DECORATION/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
<project xmlns="http://maven.apache.org/DECORATION/1.8.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 http://maven.apache.org/xsd/decoration-1.8.0.xsd">
<edit>${project.scm.url}</edit>
<body>
<menu ref="parent"/>
<menu ref="reports"/>
......
maven (3.5.2-3) UNRELEASED; urgency=medium
maven (3.5.3-1) unstable; urgency=medium
* Team upload.
[ Emmanuel Bourg ]
* New upstream release
- Refreshed the patches
- Depend on libmaven-shared-utils-java (>= 3.2.1)
- Depend on libmaven-parent-java (>= 31)
* Standards-Version updated to 4.1.4
* Use salsa.debian.org Vcs-* URLs
[ Stephen Kitt ]
* Remove Damien from the uploaders list; thanks for all the work over
the years! (Closes: #889396.)
* Add myself to the uploaders.
-- Stephen Kitt <skitt@debian.org> Sun, 04 Mar 2018 18:29:30 +0100
-- Emmanuel Bourg <ebourg@apache.org> Wed, 13 Jun 2018 23:40:08 +0200
maven (3.5.2-2) unstable; urgency=medium
......
......@@ -13,10 +13,10 @@ Build-Depends-Indep: junit4,
libgeronimo-annotation-1.3-spec-java,
libguice-java (>= 4.0),
liblogback-java,
libmaven-parent-java (>= 27),
libmaven-parent-java (>= 31-2~),
libmaven-resolver-java,
libmaven-shade-plugin-java,
libmaven-shared-utils-java (>= 3.1.0),
libmaven-shared-utils-java (>= 3.2.1),
libmockito-java,
libmodello-maven-plugin-java (>= 1.9.1),
libplexus-classworlds-java (>= 2.5.2),
......@@ -33,9 +33,9 @@ Build-Depends-Indep: junit4,
libwagon-http-shaded-java,
libwagon-provider-api-java,
libxmlunit-java
Standards-Version: 4.1.3
Vcs-Git: https://anonscm.debian.org/git/pkg-java/maven.git
Vcs-Browser: https://anonscm.debian.org/cgit/pkg-java/maven.git
Standards-Version: 4.1.4
Vcs-Git: https://salsa.debian.org/java-team/maven.git
Vcs-Browser: https://salsa.debian.org/java-team/maven
Homepage: http://maven.apache.org
Package: libmaven3-core-java
......
......@@ -31,7 +31,7 @@ Forwarded: no
import java.util.Properties;
import java.util.TimeZone;
@@ -61,7 +62,15 @@
@@ -64,7 +65,15 @@
{
time = new Date();
}
......
......@@ -90,9 +90,9 @@ Bug: https://github.com/apache/maven/pull/118
+</project>
--- a/pom.xml
+++ b/pom.xml
@@ -605,6 +605,7 @@
<exclude>.maven/spy.log</exclude> <!-- hudson maven3 integration log -->
<exclude>.java-version</exclude>
@@ -579,6 +579,7 @@
<exclude>bootstrap/**</exclude>
<exclude>README.bootstrap.txt</exclude>
<exclude>README.md</exclude>
+ <exclude>dependency-reduced-pom.xml</exclude>
</excludes>
......
......@@ -33,6 +33,17 @@ under the License.
<release>
<Version>
<name>Latest stable release</name>
<created>2017-10-24</created>
<revision>3.5.2</revision>
<file-release>http://archive.apache.org/dist/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.zip</file-release>
<file-release>http://archive.apache.org/dist/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz</file-release>
<file-release>http://archive.apache.org/dist/maven/maven-3/3.5.2/source/apache-maven-3.5.2-src.zip</file-release>
<file-release>http://archive.apache.org/dist/maven/maven-3/3.5.2/source/apache-maven-3.5.2-src.tar.gz</file-release>
</Version>
</release>
<release>
<Version>
<name>Apache Maven 3.5.0</name>
<created>2017-04-07</created>
<revision>3.5.0</revision>
<file-release>http://archive.apache.org/dist/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bin.zip</file-release>
......
......@@ -25,7 +25,7 @@ under the License.
<parent>
<groupId>org.apache.maven</groupId>
<artifactId>maven</artifactId>
<version>3.5.2</version>
<version>3.5.3</version>
</parent>
<artifactId>maven-artifact</artifactId>
......
......@@ -29,6 +29,9 @@
import org.apache.commons.lang3.Validate;
import org.apache.maven.artifact.versioning.VersionRange;
/**
* ArtifactUtils
*/
public final class ArtifactUtils
{
......
......@@ -94,6 +94,7 @@ public DefaultArtifact( String groupId, String artifactId, VersionRange versionR
this( groupId, artifactId, versionRange, scope, type, classifier, artifactHandler, false );
}
@SuppressWarnings( "checkstyle:parameternumber" )
public DefaultArtifact( String groupId, String artifactId, VersionRange versionRange, String scope, String type,
String classifier, ArtifactHandler artifactHandler, boolean optional )
{
......
......@@ -19,6 +19,9 @@
* under the License.
*/
/**
* Contains metadata about an artifact, and methods to retrieve/store it from an artifact repository.
*/
@Deprecated
public interface ArtifactMetadata
extends org.apache.maven.repository.legacy.metadata.ArtifactMetadata
......
......@@ -198,6 +198,7 @@ else if ( ArtifactRepositoryPolicy.CHECKSUM_POLICY_IGNORE.equals( policy ) )
}
}
@SuppressWarnings( "checkstyle:magicnumber" )
private int ordinalOfUpdatePolicy( String policy )
{
if ( ArtifactRepositoryPolicy.UPDATE_POLICY_DAILY.equals( policy ) )
......
......@@ -19,6 +19,9 @@
* under the License.
*/
/**
* Authentication
*/
public class Authentication
{
......
......@@ -22,6 +22,9 @@
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
/**
* ArtifactRepositoryLayout2
*/
public interface ArtifactRepositoryLayout2
extends ArtifactRepositoryLayout
{
......
......@@ -98,7 +98,7 @@ private IntegerItem()
this.value = BIG_INTEGER_ZERO;
}
public IntegerItem( String str )
IntegerItem( String str )
{
this.value = new BigInteger( str );
}
......@@ -148,10 +148,8 @@ public String toString()
private static class StringItem
implements Item
{
private static final String[] QUALIFIERS = { "alpha", "beta", "milestone", "rc", "snapshot", "", "sp" };
@SuppressWarnings( "checkstyle:constantname" )
private static final List<String> _QUALIFIERS = Arrays.asList( QUALIFIERS );
private static final List<String> QUALIFIERS =
Arrays.asList( "alpha", "beta", "milestone", "rc", "snapshot", "", "sp" );
private static final Properties ALIASES = new Properties();
static
......@@ -165,11 +163,11 @@ private static class StringItem
* A comparable value for the empty-string qualifier. This one is used to determine if a given qualifier makes
* the version older than one without a qualifier, or more recent.
*/
private static final String RELEASE_VERSION_INDEX = String.valueOf( _QUALIFIERS.indexOf( "" ) );
private static final String RELEASE_VERSION_INDEX = String.valueOf( QUALIFIERS.indexOf( "" ) );
private String value;
public StringItem( String value, boolean followedByDigit )
StringItem( String value, boolean followedByDigit )
{
if ( followedByDigit && value.length() == 1 )
{
......@@ -216,9 +214,9 @@ public boolean isNull()
*/
public static String comparableQualifier( String qualifier )
{
int i = _QUALIFIERS.indexOf( qualifier );
int i = QUALIFIERS.indexOf( qualifier );
return i == -1 ? ( _QUALIFIERS.size() + "-" + qualifier ) : String.valueOf( i );
return i == -1 ? ( QUALIFIERS.size() + "-" + qualifier ) : String.valueOf( i );
}
public int compareTo( Item item )
......@@ -350,6 +348,7 @@ public ComparableVersion( String version )
parseVersion( version );
}
@SuppressWarnings( "checkstyle:innerassignment" )
public final void parseVersion( String version )
{
this.value = version;
......
......@@ -19,6 +19,9 @@
* under the License.
*/
/**
* Proxy
*/
public class Proxy
{
public static final String PROXY_SOCKS5 = "SOCKS_5";
......
......@@ -19,9 +19,11 @@ specific language governing permissions and limitations
under the License.
-->
<project xmlns="http://maven.apache.org/DECORATION/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0 http://maven.apache.org/xsd/decoration-1.0.0.xsd">
<project xmlns="http://maven.apache.org/DECORATION/1.8.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/DECORATION/1.8.0 http://maven.apache.org/xsd/decoration-1.8.0.xsd">
<edit>${project.scm.url}</edit>
<body>
<menu name="Overview">
<item name="Introduction" href="index.html"/>
......