private Future<BlobDescriptor> pushContainerConfiguration(
      Future<Image> builtImage, ProgressEventDispatcher.Factory progressDispatcherFactory) {
    return executorService.submit(
        () ->
            new PushContainerConfigurationStep(
                    buildContext,
                    progressDispatcherFactory,
                    results.targetRegistryClient.get(),
                    builtImage.get())
                .call());
  }
Run all steps and return a BuildResult after a build is completed.

@return a {@link BuildResult} with build metadata
@throws ExecutionException if an error occurred during asynchronous execution of steps
@throws InterruptedException if the build was interrupted while waiting for results
jib-core/src/main/java/com/google/cloud/tools/jib/builder/steps/StepsRunner.java