Class CheckBuildPlanMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.apache.maven.plugins.artifact.buildinfo.CheckBuildPlanMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="check-buildplan", threadSafe=true, requiresProject=true) public class CheckBuildPlanMojo extends org.apache.maven.plugin.AbstractMojo
Check from buildplan that plugins used don't have known Reproducible Builds issues.
Since:
3.3.0
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private boolean
    Make build fail if execution plan contains non-reproducible plugins.
    private org.apache.maven.lifecycle.LifecycleExecutor
     
    private String
    Timestamp for reproducible output archive entries, either formatted as ISO 8601 yyyy-MM-dd'T'HH:mm:ssXXX or as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).
    private File
    Provide a plugin issues property file to override plugin's not-reproducible-plugins.properties.
    private org.apache.maven.project.MavenProject
     
    private org.apache.maven.execution.MavenSession
     
    private String[]
    Allow to specify which goals/phases will be used to calculate execution plan.

    Fields inherited from interface org.apache.maven.plugin.Mojo

    ROLE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected org.apache.maven.lifecycle.MavenExecutionPlan
     
    void
     
    private Properties
     

    Methods inherited from class org.apache.maven.plugin.AbstractMojo

    getLog, getPluginContext, setLog, setPluginContext

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • project

      @Component private org.apache.maven.project.MavenProject project
    • session

      @Component private org.apache.maven.execution.MavenSession session
    • lifecycleExecutor

      @Component private org.apache.maven.lifecycle.LifecycleExecutor lifecycleExecutor
    • tasks

      @Parameter(property="check.buildplan.tasks", defaultValue="deploy") private String[] tasks
      Allow to specify which goals/phases will be used to calculate execution plan.
    • outputTimestamp

      @Parameter(defaultValue="${project.build.outputTimestamp}") private String outputTimestamp
      Timestamp for reproducible output archive entries, either formatted as ISO 8601 yyyy-MM-dd'T'HH:mm:ssXXX or as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).
    • pluginIssues

      @Parameter(property="check.plugin-issues") private File pluginIssues
      Provide a plugin issues property file to override plugin's not-reproducible-plugins.properties.
    • failOnNonReproducible

      @Parameter(property="check.failOnNonReproducible", defaultValue="true") private boolean failOnNonReproducible
      Make build fail if execution plan contains non-reproducible plugins.
  • Constructor Details

    • CheckBuildPlanMojo

      public CheckBuildPlanMojo()
  • Method Details

    • calculateExecutionPlan

      protected org.apache.maven.lifecycle.MavenExecutionPlan calculateExecutionPlan() throws org.apache.maven.plugin.MojoExecutionException
      Throws:
      org.apache.maven.plugin.MojoExecutionException
    • execute

      public void execute() throws org.apache.maven.plugin.MojoExecutionException
      Throws:
      org.apache.maven.plugin.MojoExecutionException
    • loadIssues

      private Properties loadIssues() throws org.apache.maven.plugin.MojoExecutionException
      Throws:
      org.apache.maven.plugin.MojoExecutionException