Class CompareGradleBuilds

  • All Implemented Interfaces:
    Comparable<Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.TaskInternal, ExtensionAware, Task, VerificationTask, org.gradle.util.Configurable<Task>

    @Incubating
    public class CompareGradleBuilds
    extends DefaultTask
    implements VerificationTask
    Executes two Gradle builds (that can be the same build) with specified versions and compares the outcomes. Please see the “Comparing Builds” chapter of the Gradle User Guide for more information.
    • Field Detail

      • DEFAULT_TASKS

        public static final List<String> DEFAULT_TASKS
    • Constructor Detail

      • CompareGradleBuilds

        public CompareGradleBuilds()
    • Method Detail

      • getFileResolver

        @Inject
        protected org.gradle.internal.file.PathToFileResolver getFileResolver()
      • getProgressLoggerFactory

        @Inject
        protected org.gradle.internal.logging.progress.ProgressLoggerFactory getProgressLoggerFactory()
      • getObjectFactory

        @Inject
        protected ObjectFactory getObjectFactory()
        Injects and returns an instance of ObjectFactory.
        Since:
        4.2
      • getSourceBuild

        public GradleBuildInvocationSpec getSourceBuild()
        The specification of how to invoke the source build. Defaults to project.rootDir with the current Gradle version and the tasks “clean assemble”. The projectDir must be the project directory of the root project if this is a multi project build.
        Returns:
        The specification of how to invoke the source build.
      • sourceBuild

        public void sourceBuild​(Action<GradleBuildInvocationSpec> config)
        Configures the source build. A Groovy closure can be used as the action.
         sourceBuild {
           gradleVersion = "1.1"
         }
         
        Parameters:
        config - The configuration action.
      • getTargetBuild

        public GradleBuildInvocationSpec getTargetBuild()
        The specification of how to invoke the target build. Defaults to project.rootDir with the current Gradle version and the tasks “clean assemble”. The projectDir must be the project directory of the root project if this is a multi project build.
        Returns:
        The specification of how to invoke the target build.
      • targetBuild

        public void targetBuild​(Action<GradleBuildInvocationSpec> config)
        Configures the target build. A Groovy closure can be used as the action.
         targetBuild {
           gradleVersion = "1.1"
         }
         
        Parameters:
        config - The configuration action.
      • getIgnoreFailures

        public boolean getIgnoreFailures()
        Whether a comparison between non identical builds will fail the task execution.
        Specified by:
        getIgnoreFailures in interface VerificationTask
        Returns:
        True if a comparison between non identical builds will fail the task execution, otherwise false.
      • setIgnoreFailures

        public void setIgnoreFailures​(boolean ignoreFailures)
        Sets whether a comparison between non identical builds will fail the task execution.
        Specified by:
        setIgnoreFailures in interface VerificationTask
        Parameters:
        ignoreFailures - false to fail the task on non identical builds, true to not fail the task. The default is false.
      • getReportDir

        @OutputDirectory
        public File getReportDir()
        The directory that will contain the HTML comparison report and any other report files.
        Returns:
        The directory that will contain the HTML comparison report and any other report files.
      • setReportDir

        public void setReportDir​(File reportDir)
        Sets the directory that will contain the HTML comparison report and any other report files.
        Parameters:
        reportDir - The directory that will contain the HTML comparison report and any other report files.
        Since:
        4.0
      • setReportDir

        public void setReportDir​(Object reportDir)
        Sets the directory that will contain the HTML comparison report and any other report files. The value will be evaluated by project.file().
        Parameters:
        reportDir - The directory that will contain the HTML comparison report and any other report files.