Class 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 failOnNonReproducible
      Make build fail if execution plan contains non-reproducible plugins.
      private org.apache.maven.lifecycle.LifecycleExecutor lifecycleExecutor  
      private java.lang.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).
      private java.io.File pluginIssues
      Provide a plugin issues property file to override plugin's not-reproducible-plugins.properties.
      private org.apache.maven.project.MavenProject project  
      private org.apache.maven.execution.MavenSession session  
      private java.lang.String[] tasks
      Allow to specify which goals/phases will be used to calculate execution plan.
      • Fields inherited from interface org.apache.maven.plugin.Mojo

        ROLE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected org.apache.maven.lifecycle.MavenExecutionPlan calculateExecutionPlan()  
      void execute()  
      private java.util.Properties loadIssues()  
      • 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 Detail

      • 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 java.lang.String[] tasks
        Allow to specify which goals/phases will be used to calculate execution plan.
      • outputTimestamp

        @Parameter(defaultValue="${project.build.outputTimestamp}")
        private java.lang.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 java.io.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 Detail

      • CheckBuildPlanMojo

        public CheckBuildPlanMojo()
    • Method Detail

      • 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 java.util.Properties loadIssues()
                                         throws org.apache.maven.plugin.MojoExecutionException
        Throws:
        org.apache.maven.plugin.MojoExecutionException