private static boolean isProgressFooterEnabled(Project project) {
    if ("plain".equals(System.getProperty(PropertyNames.CONSOLE))) {
      return false;
    }

    switch (project.getGradle().getStartParameter().getConsoleOutput()) {
      case Plain:
        return false;

      case Auto:
        // Enables progress footer when ANSI is supported (Windows or TERM not 'dumb').
        // Unlike jib-maven-plugin, we cannot test "System.console() != null".
        // https://github.com/GoogleContainerTools/jib/issues/2920#issuecomment-749234458
        return Os.isFamily(Os.FAMILY_WINDOWS) || !"dumb".equals(System.getenv("TERM"));

      default:
        return true;
    }
  }
Generate an instance for a gradle project.

@param project a gradle project
@param logger a gradle logging instance to use for logging during the build
@param tempDirectoryProvider for scratch space during the build
@param configurationName the configuration of which the dependencies should be packed into the
    container
@return a GradleProjectProperties instance to use in a jib build
jib-gradle-plugin/src/main/java/com/google/cloud/tools/jib/gradle/GradleProjectProperties.java