Class AdvancedImageFromDockerFile
java.lang.Object
org.testcontainers.utility.LazyFuture<String>
software.xdev.testcontainers.imagebuilder.AdvancedImageFromDockerFile
- All Implemented Interfaces:
Future<String>,org.testcontainers.images.builder.traits.BuildContextBuilderTrait<AdvancedImageFromDockerFile>,org.testcontainers.images.builder.traits.ClasspathTrait<AdvancedImageFromDockerFile>,org.testcontainers.images.builder.traits.DockerfileTrait<AdvancedImageFromDockerFile>,org.testcontainers.images.builder.traits.FilesTrait<AdvancedImageFromDockerFile>,org.testcontainers.images.builder.traits.StringsTrait<AdvancedImageFromDockerFile>
public class AdvancedImageFromDockerFile
extends org.testcontainers.utility.LazyFuture<String>
implements org.testcontainers.images.builder.traits.BuildContextBuilderTrait<AdvancedImageFromDockerFile>, org.testcontainers.images.builder.traits.ClasspathTrait<AdvancedImageFromDockerFile>, org.testcontainers.images.builder.traits.FilesTrait<AdvancedImageFromDockerFile>, org.testcontainers.images.builder.traits.StringsTrait<AdvancedImageFromDockerFile>, org.testcontainers.images.builder.traits.DockerfileTrait<AdvancedImageFromDockerFile>
Fork of
ImageFromDockerfile to fix the following problems:
- testcontainers-java#3093
- testcontainers-java#3238
TransferFilesCreator- Fixed: Logger was not controllable (because it was generic)
- Deprecated-Stuff replaced / removed
- Author:
- AB
- See Also:
-
ImageFromDockerfile
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected final org.slf4j.Loggerprotected final booleanprotected org.testcontainers.shaded.org.apache.commons.lang3.function.TriFunction<Path,List<DockerFileLineModifier>, Collection<String>, DockerFileContentModifier> protected List<DockerFileLineModifier>protected final Stringprotected org.slf4j.Loggerprotected TransferArchiveTARCompressorprotected Consumer<TransferArchiveTARCompressor>protected BiFunction<Path,Path, TransferFilesCreator> protected boolean -
Constructor Summary
ConstructorsConstructorDescriptionAdvancedImageFromDockerFile(String dockerImageName) AdvancedImageFromDockerFile(String dockerImageName, boolean deleteOnExit) AdvancedImageFromDockerFile(String dockerImageName, boolean deleteOnExit, org.slf4j.Logger logger) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancanImageNameBePulled(String imageName) protected voidconfigure(com.github.dockerjava.api.command.BuildImageCmd buildImageCmd) protected voiddeleteImageOnExitIfRequired(Map<String, String> labels) fullyResolveDependencyImages(Set<String> fileDependencyImages, Map<String, Optional<String>> fileArgs) protected com.github.dockerjava.api.command.BuildImageResultCallbackgetBuildImageResultCallback(org.slf4j.Logger logger) protected longprotected org.slf4j.Loggerlog()protected voidprePullDependencyImages(Set<String> imagesToPull) protected StringrelativeDockerFilePathString(Path baseDir) protected static Stringprotected Stringresolve()protected PathwithAlwaysTransferDockerfilePath(boolean alwaysTransferDockerfilePath) withAlwaysTransferRelativPaths(Set<String> alwaysTransferPaths) withBaseDir(Path baseDir) withBaseDirRelativeIgnoreFile(Path baseDirRelativeIgnoreFile) withBuildArg(String key, String value) withBuildArgs(Map<String, String> args) withBuildImageCmdModifier(Consumer<com.github.dockerjava.api.command.BuildImageCmd> modifier) withDockerFileContentModifierSupplier(org.testcontainers.shaded.org.apache.commons.lang3.function.TriFunction<Path, List<DockerFileLineModifier>, Collection<String>, DockerFileContentModifier> dockerFileContentModifierSupplier) withDockerFileLinesModifier(DockerFileLineModifier dockerFileLinesModifier) withDockerFilePath(Path dockerFilePath) withFileFromTransferable(String path, org.testcontainers.images.builder.Transferable transferable) withIgnoreFileLineFilter(Predicate<String> ignoreFileLineFilter) withLoggerForBuild(org.slf4j.Logger loggerForBuild) withPostGitIgnoreLines(String... postGitIgnoreLines) withPreGitIgnoreLines(String... preGitIgnoreLines) withTarget(String target) withTransferArchiveTARCompressor(TransferArchiveTARCompressor transferArchiveTARCompressor) withTransferFilesCreatorSupplier(BiFunction<Path, Path, TransferFilesCreator> transferFilesCreatorSupplier) withUseWinNTFSJunctionFixIfApplicable(boolean useWinNTFSJunctionFixIfApplicable) Should the fix for a crash when encountering Windows NTFS Junctions be applied if applicable?Methods inherited from class org.testcontainers.utility.LazyFuture
cancel, get, get, isCancelled, isDoneMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.testcontainers.images.builder.traits.ClasspathTrait
withFileFromClasspathMethods inherited from interface org.testcontainers.images.builder.traits.DockerfileTrait
withDockerfileFromBuilderMethods inherited from interface org.testcontainers.images.builder.traits.FilesTrait
withFileFromFile, withFileFromFile, withFileFromPath, withFileFromPathMethods inherited from interface org.testcontainers.images.builder.traits.StringsTrait
withFileFromString
-
Field Details
-
dockerImageName
-
defaultLogger
protected final org.slf4j.Logger defaultLogger -
deleteOnExit
protected final boolean deleteOnExit -
transferables
-
buildArgs
-
loggerForBuild
protected org.slf4j.Logger loggerForBuild -
dockerFilePath
-
baseDir
-
baseDirRelativeIgnoreFile
-
preGitIgnoreLines
-
ignoreFileLineFilter
-
postGitIgnoreLines
-
alwaysTransferDockerfilePath
protected boolean alwaysTransferDockerfilePath -
alwaysTransferRelativePaths
-
transferFilesCreatorSupplier
-
transferArchiveTARCompressor
-
transferArchiveTARCompressorCustomizer
-
dockerFileContentModifierSupplier
protected org.testcontainers.shaded.org.apache.commons.lang3.function.TriFunction<Path,List<DockerFileLineModifier>, dockerFileContentModifierSupplierCollection<String>, DockerFileContentModifier> -
dockerFileLinesModifiers
-
target
-
buildImageCmdModifiers
-
externalDependencyImageNames
-
useWinNTFSJunctionFixIfApplicable
protected boolean useWinNTFSJunctionFixIfApplicable
-
-
Constructor Details
-
AdvancedImageFromDockerFile
public AdvancedImageFromDockerFile() -
AdvancedImageFromDockerFile
-
AdvancedImageFromDockerFile
-
AdvancedImageFromDockerFile
public AdvancedImageFromDockerFile(String dockerImageName, boolean deleteOnExit, org.slf4j.Logger logger)
-
-
Method Details
-
withFileFromTransferable
public AdvancedImageFromDockerFile withFileFromTransferable(String path, org.testcontainers.images.builder.Transferable transferable) - Specified by:
withFileFromTransferablein interfaceorg.testcontainers.images.builder.traits.BuildContextBuilderTrait<AdvancedImageFromDockerFile>
-
withLoggerForBuild
-
resolve
- Specified by:
resolvein classorg.testcontainers.utility.LazyFuture<String>
-
deleteImageOnExitIfRequired
-
getBytesToDockerDaemon
- Throws:
IOException
-
getBuildImageResultCallback
protected com.github.dockerjava.api.command.BuildImageResultCallback getBuildImageResultCallback(org.slf4j.Logger logger) -
removeEnd
-
configure
protected void configure(com.github.dockerjava.api.command.BuildImageCmd buildImageCmd) -
fullyResolveDependencyImages
-
relativeDockerFilePathString
-
safeDockerFilePath
-
prePullDependencyImages
-
canImageNameBePulled
-
log
protected org.slf4j.Logger log() -
withBuildArg
-
withBuildArgs
-
withDockerFilePath
-
withBaseDir
-
withBaseDirRelativeIgnoreFile
-
withPreGitIgnoreLines
-
withIgnoreFileLineFilter
-
withPostGitIgnoreLines
-
withAlwaysTransferRelativPaths
-
withAlwaysTransferDockerfilePath
public AdvancedImageFromDockerFile withAlwaysTransferDockerfilePath(boolean alwaysTransferDockerfilePath) -
withTarget
-
withTransferFilesCreatorSupplier
public AdvancedImageFromDockerFile withTransferFilesCreatorSupplier(BiFunction<Path, Path, TransferFilesCreator> transferFilesCreatorSupplier) -
withTransferArchiveTARCompressor
public AdvancedImageFromDockerFile withTransferArchiveTARCompressor(TransferArchiveTARCompressor transferArchiveTARCompressor) -
withTransferArchiveTARCompressorCustomizer
public AdvancedImageFromDockerFile withTransferArchiveTARCompressorCustomizer(Consumer<TransferArchiveTARCompressor> customizer) -
withDockerFileContentModifierSupplier
public AdvancedImageFromDockerFile withDockerFileContentModifierSupplier(org.testcontainers.shaded.org.apache.commons.lang3.function.TriFunction<Path, List<DockerFileLineModifier>, Collection<String>, DockerFileContentModifier> dockerFileContentModifierSupplier) -
withDockerFileLinesModifier
public AdvancedImageFromDockerFile withDockerFileLinesModifier(DockerFileLineModifier dockerFileLinesModifier) -
withBuildImageCmdModifier
public AdvancedImageFromDockerFile withBuildImageCmdModifier(Consumer<com.github.dockerjava.api.command.BuildImageCmd> modifier) -
withUseWinNTFSJunctionFixIfApplicable
public AdvancedImageFromDockerFile withUseWinNTFSJunctionFixIfApplicable(boolean useWinNTFSJunctionFixIfApplicable) Should the fix for a crash when encountering Windows NTFS Junctions be applied if applicable?See
software.xdev.testcontainers.imagebuilder.transfer.java.nio.file.winntfsfor details
-