Class DockerRunContainerTask
- java.lang.Object
-
- com.atlassian.bamboo.specs.api.builders.EntityPropertiesBuilder<P>
-
- com.atlassian.bamboo.specs.api.builders.task.Task<T,P>
-
- com.atlassian.bamboo.specs.builders.task.AbstractDockerTask<DockerRunContainerTask,DockerRunContainerTaskProperties>
-
- com.atlassian.bamboo.specs.builders.task.DockerRunContainerTask
-
public class DockerRunContainerTask extends AbstractDockerTask<DockerRunContainerTask,DockerRunContainerTaskProperties>
Task used to run a Docker container.
-
-
Field Summary
-
Fields inherited from class com.atlassian.bamboo.specs.builders.task.AbstractDockerTask
environmentVariables, workingSubdirectory
-
Fields inherited from class com.atlassian.bamboo.specs.api.builders.task.Task
conditions, description, requirements, taskEnabled
-
-
Constructor Summary
Constructors Constructor Description DockerRunContainerTask()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DockerRunContainerTaskadditionalArguments(java.lang.String additionalArguments)Sets additional arguments to docker run command, e.g --memory="64m".DockerRunContainerTaskappendPortMapping(int hostPort, int containerPort)Append a host-container port mapping.DockerRunContainerTaskappendVolumeMapping(java.lang.String hostDirectory, java.lang.String containerDataVolume)Appends a host-container volume mapping.protected @NotNull DockerRunContainerTaskPropertiesbuild()DockerRunContainerTaskclearPortMappings()Clears port mappings configuration.DockerRunContainerTaskclearVolumeMappings()Clears volume mappings configuration.DockerRunContainerTaskcontainerCommand(java.lang.String containerCommand)Specifies container command.DockerRunContainerTaskcontainerEnvironmentVariables(java.lang.String containerEnvironmentVariables)Specifies container environment variables.DockerRunContainerTaskcontainerName(java.lang.String containerName)Specifies container name.DockerRunContainerTaskcontainerWorkingDirectory(java.lang.String containerWorkingDirectory)Sets container working directory.DockerRunContainerTaskdetachContainer(boolean detachContainer)Determines if container should be run in a detached mode.booleanequals(java.lang.Object o)inthashCode()DockerRunContainerTaskimageName(java.lang.String imageName)Specifies image name to run.DockerRunContainerTasklinkToDetachedContainers(boolean linkToDetachedContainers)Determines whether this container should be linked to other containers which were defined prior to this one viaDockerRunContainerTaskwithin the same job.DockerRunContainerTaskserviceTimeout(java.time.Duration serviceTimeout)Sets timeout on waiting till container service starts.DockerRunContainerTaskserviceTimeoutInSeconds(long serviceTimeout)Sets timeout in seconds on waiting till container service starts.DockerRunContainerTaskserviceURLPattern(java.lang.String serviceURLPattern)Bamboo will check if container service is up and running by querying this URL.DockerRunContainerTaskwaitToStart(boolean waitToStart)Determines if Bamboo should wait for a service to start.-
Methods inherited from class com.atlassian.bamboo.specs.builders.task.AbstractDockerTask
environmentVariables, workingSubdirectory
-
Methods inherited from class com.atlassian.bamboo.specs.api.builders.task.Task
conditions, description, enabled, requirements, toString
-
-
-
-
Method Detail
-
imageName
public DockerRunContainerTask imageName(java.lang.String imageName)
Specifies image name to run. Optionally registry name, namespace and tag may be added here, e.g registry.address:port/namespace/repository:tag.This field is mandatory.
-
detachContainer
public DockerRunContainerTask detachContainer(boolean detachContainer)
Determines if container should be run in a detached mode. Defaults to false.If set to true specifing a container name is mandatory.
-
containerName
public DockerRunContainerTask containerName(java.lang.String containerName)
Specifies container name.
-
appendPortMapping
public DockerRunContainerTask appendPortMapping(int hostPort, int containerPort)
Append a host-container port mapping.
-
clearPortMappings
public DockerRunContainerTask clearPortMappings()
Clears port mappings configuration.
-
waitToStart
public DockerRunContainerTask waitToStart(boolean waitToStart)
Determines if Bamboo should wait for a service to start. Defaults to false.If sets to true service URL pattern and timeout settings are mandatory.
-
serviceURLPattern
public DockerRunContainerTask serviceURLPattern(java.lang.String serviceURLPattern)
Bamboo will check if container service is up and running by querying this URL. Defaults to http://localhost:${docker.port}Note: You can use ${docker.port} to get the first exposed container port.
-
serviceTimeoutInSeconds
public DockerRunContainerTask serviceTimeoutInSeconds(long serviceTimeout)
Sets timeout in seconds on waiting till container service starts. Defaults to 120.
-
serviceTimeout
public DockerRunContainerTask serviceTimeout(java.time.Duration serviceTimeout)
Sets timeout on waiting till container service starts. Defaults to 120 seconds.
-
linkToDetachedContainers
public DockerRunContainerTask linkToDetachedContainers(boolean linkToDetachedContainers)
Determines whether this container should be linked to other containers which were defined prior to this one viaDockerRunContainerTaskwithin the same job.
-
containerEnvironmentVariables
public DockerRunContainerTask containerEnvironmentVariables(java.lang.String containerEnvironmentVariables)
Specifies container environment variables.
-
containerCommand
public DockerRunContainerTask containerCommand(java.lang.String containerCommand)
Specifies container command.
-
containerWorkingDirectory
public DockerRunContainerTask containerWorkingDirectory(java.lang.String containerWorkingDirectory)
Sets container working directory. Defaults to /data
-
additionalArguments
public DockerRunContainerTask additionalArguments(java.lang.String additionalArguments)
Sets additional arguments to docker run command, e.g --memory="64m".
-
appendVolumeMapping
public DockerRunContainerTask appendVolumeMapping(java.lang.String hostDirectory, java.lang.String containerDataVolume)
Appends a host-container volume mapping. Default mapping entry is ${bamboo.working.directory} -> /data. Note: You can clear it by runningclearVolumeMappings().
-
clearVolumeMappings
public DockerRunContainerTask clearVolumeMappings()
Clears volume mappings configuration. Please remember that default container working directory is /data. You can update it viacontainerWorkingDirectory(String).
-
build
@NotNull protected @NotNull DockerRunContainerTaskProperties build()
- Specified by:
buildin classTask<DockerRunContainerTask,DockerRunContainerTaskProperties>
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classAbstractDockerTask<DockerRunContainerTask,DockerRunContainerTaskProperties>
-
hashCode
public int hashCode()
- Overrides:
hashCodein classAbstractDockerTask<DockerRunContainerTask,DockerRunContainerTaskProperties>
-
-