You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sj...@apache.org on 2022/05/24 17:07:02 UTC
[maven-enforcer] branch master updated: [MENFORCER-409] Log at ERROR level when is set
This is an automated email from the ASF dual-hosted git repository.
sjaranowski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-enforcer.git
The following commit(s) were added to refs/heads/master by this push:
new 8a05ce2 [MENFORCER-409] Log at ERROR level when <fail> is set
8a05ce2 is described below
commit 8a05ce2e580300292db0ffa6930cabb0106cca7e
Author: David Phillips <da...@acz.org>
AuthorDate: Wed Dec 22 13:55:01 2021 -0800
[MENFORCER-409] Log at ERROR level when <fail> is set
---
.../verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../ban-pom-dependency-version/verify.groovy | 2 +-
.../ban-transitive-dependencies-fail/verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../require-no-repositories_failure/verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../verify.groovy | 2 +-
.../require-plugin-versions-ci/verify.groovy | 2 +-
.../apache/maven/plugins/enforcer/EnforceMojo.java | 35 ++++++++++++----------
14 files changed, 33 insertions(+), 28 deletions(-)
diff --git a/maven-enforcer-plugin/src/it/projects/ban-distribution-management-multi-module-build/verify.groovy b/maven-enforcer-plugin/src/it/projects/ban-distribution-management-multi-module-build/verify.groovy
index 6ff5ee5..95d7a1c 100644
--- a/maven-enforcer-plugin/src/it/projects/ban-distribution-management-multi-module-build/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/ban-distribution-management-multi-module-build/verify.groovy
@@ -18,5 +18,5 @@
*/
File buildLog = new File( basedir, 'build.log' )
assert buildLog.text.contains( '[INFO] BUILD FAILURE' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BanDistributionManagement failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.BanDistributionManagement failed with message:' )
assert buildLog.text.contains( 'You have defined a repository in distributionManagement.' )
diff --git a/maven-enforcer-plugin/src/it/projects/ban-duplicate-dependencies-versions/verify.groovy b/maven-enforcer-plugin/src/it/projects/ban-duplicate-dependencies-versions/verify.groovy
index c404745..c273942 100644
--- a/maven-enforcer-plugin/src/it/projects/ban-duplicate-dependencies-versions/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/ban-duplicate-dependencies-versions/verify.groovy
@@ -17,7 +17,7 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicatePomDependencyVersions failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicatePomDependencyVersions failed with message:' )
assert buildLog.text.contains( 'Found 1 duplicate dependency declarations in this project:' )
assert buildLog.text.contains( '- dependencyManagement.dependencies.dependency[org.apache.maven.plugins.enforcer.its:menforcer128_api:jar] ( 2 times )' )
diff --git a/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version-utf8-with-bom/verify.groovy b/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version-utf8-with-bom/verify.groovy
index eb917f9..e1e4696 100644
--- a/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version-utf8-with-bom/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version-utf8-with-bom/verify.groovy
@@ -17,7 +17,7 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicatePomDependencyVersions failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicatePomDependencyVersions failed with message:' )
assert buildLog.text.contains( 'Found 1 duplicate dependency declaration in this project:' )
assert buildLog.text.contains( '- dependencies.dependency[org.apache.maven.plugins.enforcer.its:menforcer152:jar] ( 2 times )' )
diff --git a/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version/verify.groovy b/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version/verify.groovy
index 0c25128..8f3fd23 100644
--- a/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/ban-pom-dependency-version/verify.groovy
@@ -17,7 +17,7 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicatePomDependencyVersions failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicatePomDependencyVersions failed with message:' )
assert buildLog.text.contains( 'Found 1 duplicate dependency declaration in this project:' )
assert buildLog.text.contains( '- dependencies.dependency[org.apache.maven.plugins.enforcer.its:menforcer152:jar] ( 2 times )' )
diff --git a/maven-enforcer-plugin/src/it/projects/ban-transitive-dependencies-fail/verify.groovy b/maven-enforcer-plugin/src/it/projects/ban-transitive-dependencies-fail/verify.groovy
index 5dacb94..e8381cd 100644
--- a/maven-enforcer-plugin/src/it/projects/ban-transitive-dependencies-fail/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/ban-transitive-dependencies-fail/verify.groovy
@@ -17,5 +17,5 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BanTransitiveDependencies failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.BanTransitiveDependencies failed with message:' )
\ No newline at end of file
diff --git a/maven-enforcer-plugin/src/it/projects/banned-dependencies-versionrange-fail/verify.groovy b/maven-enforcer-plugin/src/it/projects/banned-dependencies-versionrange-fail/verify.groovy
index c1e0943..8a0f295 100644
--- a/maven-enforcer-plugin/src/it/projects/banned-dependencies-versionrange-fail/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/banned-dependencies-versionrange-fail/verify.groovy
@@ -17,5 +17,5 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BannedDependencies failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.BannedDependencies failed with message:' )
\ No newline at end of file
diff --git a/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-plugin-repo/verify.groovy b/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-plugin-repo/verify.groovy
index c065765..01f63fb 100644
--- a/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-plugin-repo/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-plugin-repo/verify.groovy
@@ -17,6 +17,6 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
assert buildLog.text.contains( 'Some poms have repositories defined:' )
assert buildLog.text.contains( 'org.apache.maven.its.enforcer:test version:1.0 has repositories [com.asual.maven.public]' )
diff --git a/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-repo/verify.groovy b/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-repo/verify.groovy
index b9538f3..639dd56 100644
--- a/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-repo/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/require-no-repositories-allow-repo/verify.groovy
@@ -17,6 +17,6 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
assert buildLog.text.contains( 'Some poms have repositories defined:' )
assert buildLog.text.contains( 'org.apache.maven.its.enforcer:test version:1.0 has plugin repositories [plugin-repo]' )
diff --git a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure/verify.groovy b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure/verify.groovy
index c065765..01f63fb 100644
--- a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure/verify.groovy
@@ -17,6 +17,6 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
assert buildLog.text.contains( 'Some poms have repositories defined:' )
assert buildLog.text.contains( 'org.apache.maven.its.enforcer:test version:1.0 has repositories [com.asual.maven.public]' )
diff --git a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_allowed-plugin-repo/verify.groovy b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_allowed-plugin-repo/verify.groovy
index c065765..01f63fb 100644
--- a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_allowed-plugin-repo/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_allowed-plugin-repo/verify.groovy
@@ -17,6 +17,6 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
assert buildLog.text.contains( 'Some poms have repositories defined:' )
assert buildLog.text.contains( 'org.apache.maven.its.enforcer:test version:1.0 has repositories [com.asual.maven.public]' )
diff --git a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_plugin-repositories/verify.groovy b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_plugin-repositories/verify.groovy
index b3c2b46..634d4aa 100644
--- a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_plugin-repositories/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_plugin-repositories/verify.groovy
@@ -17,6 +17,6 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
assert buildLog.text.contains( 'Some poms have repositories defined:' )
assert buildLog.text.contains( 'org.apache.maven.its.enforcer:test version:1.0 has plugin repositories [repo]' )
diff --git a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_repositories/verify.groovy b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_repositories/verify.groovy
index c065765..01f63fb 100644
--- a/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_repositories/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/require-no-repositories_failure_repositories/verify.groovy
@@ -17,6 +17,6 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.RequireNoRepositories failed with message:' )
assert buildLog.text.contains( 'Some poms have repositories defined:' )
assert buildLog.text.contains( 'org.apache.maven.its.enforcer:test version:1.0 has repositories [com.asual.maven.public]' )
diff --git a/maven-enforcer-plugin/src/it/projects/require-plugin-versions-ci/verify.groovy b/maven-enforcer-plugin/src/it/projects/require-plugin-versions-ci/verify.groovy
index 574942c..4377c86 100644
--- a/maven-enforcer-plugin/src/it/projects/require-plugin-versions-ci/verify.groovy
+++ b/maven-enforcer-plugin/src/it/projects/require-plugin-versions-ci/verify.groovy
@@ -17,5 +17,5 @@
* under the License.
*/
File buildLog = new File( basedir, 'build.log' )
-assert buildLog.text.contains( '[WARNING] Rule 0: org.apache.maven.plugins.enforcer.RequirePluginVersions failed with message:' )
+assert buildLog.text.contains( '[ERROR] Rule 0: org.apache.maven.plugins.enforcer.RequirePluginVersions failed with message:' )
assert buildLog.text.contains( "Some plugins are missing valid versions or depend on Maven ${mavenVersion} defaults: (LATEST RELEASE SNAPSHOT are not allowed)" )
diff --git a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java
index 24234d7..dc33546 100644
--- a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java
+++ b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java
@@ -19,9 +19,9 @@ package org.apache.maven.plugins.enforcer;
* under the License.
*/
-import java.util.ArrayList;
import java.util.Hashtable;
-import java.util.List;
+import java.util.LinkedHashMap;
+import java.util.Map;
import org.apache.maven.enforcer.rule.api.EnforcerLevel;
import org.apache.maven.enforcer.rule.api.EnforcerRule;
@@ -158,8 +158,8 @@ public class EnforceMojo
// CHECKSTYLE_ON: LineLength
}
- // list to store exceptions
- List<String> list = new ArrayList<>();
+ // messages with warn/error flag
+ Map<String, Boolean> messages = new LinkedHashMap<>();
String currentRule = "Unknown";
@@ -228,31 +228,36 @@ public class EnforceMojo
if ( level == EnforcerLevel.ERROR )
{
hasErrors = true;
- list.add( "Rule " + i + ": " + currentRule + " failed with message:"
- + System.lineSeparator() + exceptionMessage );
+ messages.put( "Rule " + i + ": " + currentRule + " failed with message:"
+ + System.lineSeparator() + exceptionMessage, true );
}
else
{
- list.add( "Rule " + i + ": " + currentRule + " warned with message:"
- + System.lineSeparator() + exceptionMessage );
+ messages.put( "Rule " + i + ": " + currentRule + " warned with message:"
+ + System.lineSeparator() + exceptionMessage, false );
}
}
}
}
}
- // if we found anything
- // CHECKSTYLE_OFF: LineLength
- if ( !list.isEmpty() )
+ // log any messages
+ messages.forEach( ( message, error ) ->
{
- for ( String failure : list )
+ if ( fail && error )
{
- log.warn( failure );
+ log.error( message );
}
- if ( fail && hasErrors )
+ else
{
- throw new MojoExecutionException( "Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed." );
+ log.warn( message );
}
+ } );
+
+ // CHECKSTYLE_OFF: LineLength
+ if ( fail && hasErrors )
+ {
+ throw new MojoExecutionException( "Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed." );
}
// CHECKSTYLE_ON: LineLength
}