Package io.jenkins.docker.connector
Class DockerComputerJNLPConnector
- java.lang.Object
-
- hudson.model.AbstractDescribableImpl<DockerComputerConnector>
-
- io.jenkins.docker.connector.DockerComputerConnector
-
- io.jenkins.docker.connector.DockerComputerJNLPConnector
-
- All Implemented Interfaces:
Describable<DockerComputerConnector>
public class DockerComputerJNLPConnector extends DockerComputerConnector
- Author:
- Nicolas De Loof
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DockerComputerJNLPConnector.DescriptorImpl
-
Field Summary
-
Fields inherited from class io.jenkins.docker.connector.DockerComputerConnector
remoting
-
-
Constructor Summary
Constructors Constructor Description DockerComputerJNLPConnector()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
beforeContainerCreated(DockerAPI api, String workdir, com.github.dockerjava.api.command.CreateContainerCmd cmd)
Called just before the container is created.void
beforeContainerStarted(DockerAPI api, String workdir, DockerTransientNode node)
Called once the container has been created but not started yet, that's a good opportunity to injectremoting.jar
usingDockerComputerConnector.injectRemotingJar(String, String, DockerClient)
protected ComputerLauncher
createLauncher(DockerAPI api, String workdir, com.github.dockerjava.api.command.InspectContainerResponse inspect, TaskListener listener)
Create a Launcher to create an Agent with this container.boolean
equals(Object obj)
String
getEntryPointArgumentsString()
String
getJenkinsUrl()
String
getUser()
int
hashCode()
void
setEntryPointArgumentsString(String entryPointArgumentsString)
void
setJenkinsUrl(String jenkinsUrl)
void
setUser(String user)
String
toString()
DockerComputerJNLPConnector
withEntryPointArguments(String... args)
DockerComputerJNLPConnector
withJenkinsUrl(String value)
DockerComputerJNLPConnector
withUser(String value)
-
Methods inherited from class io.jenkins.docker.connector.DockerComputerConnector
addEnvVar, addEnvVars, afterContainerStarted, all, createLauncher, ensureNodeIsKnown, ensureWaiting, injectRemotingJar
-
Methods inherited from class hudson.model.AbstractDescribableImpl
getDescriptor
-
-
-
-
Method Detail
-
getUser
@CheckForNull public String getUser()
-
setUser
@DataBoundSetter public void setUser(String user)
-
getJenkinsUrl
@CheckForNull public String getJenkinsUrl()
-
setJenkinsUrl
@DataBoundSetter public void setJenkinsUrl(String jenkinsUrl)
-
getEntryPointArgumentsString
@NonNull public String getEntryPointArgumentsString()
-
setEntryPointArgumentsString
@DataBoundSetter public void setEntryPointArgumentsString(String entryPointArgumentsString)
-
withUser
public DockerComputerJNLPConnector withUser(String value)
-
withJenkinsUrl
public DockerComputerJNLPConnector withJenkinsUrl(String value)
-
withEntryPointArguments
public DockerComputerJNLPConnector withEntryPointArguments(String... args)
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classDockerComputerConnector
-
equals
public boolean equals(Object obj)
- Overrides:
equals
in classDockerComputerConnector
-
createLauncher
protected ComputerLauncher createLauncher(DockerAPI api, String workdir, com.github.dockerjava.api.command.InspectContainerResponse inspect, TaskListener listener) throws IOException, InterruptedException
Description copied from class:DockerComputerConnector
Create a Launcher to create an Agent with this container. Can assume container has been created by this DockerAgentConnector so adequate setup did take place.- Specified by:
createLauncher
in classDockerComputerConnector
- Parameters:
api
- TheDockerAPI
for the cloud this agent is running on.workdir
- The filesystem path to the Jenkins agent working directory.inspect
- Information from the docker daemon about our container.listener
- Where to output any issues.- Returns:
- A configured
ComputerLauncher
. - Throws:
IOException
- If anything goes wrong, e.g. talking to docker.InterruptedException
- If we're interrupted while waiting.
-
beforeContainerCreated
public void beforeContainerCreated(DockerAPI api, String workdir, com.github.dockerjava.api.command.CreateContainerCmd cmd) throws IOException, InterruptedException
Description copied from class:DockerComputerConnector
Called just before the container is created. Can provide some customization to the container creation command.- Overrides:
beforeContainerCreated
in classDockerComputerConnector
- Parameters:
api
- TheDockerAPI
that this container belongs to.workdir
- The filesystem path to the Jenkins agent working directory.cmd
- TheCreateContainerCmd
that's about to be used.- Throws:
IOException
- If anything goes wrong.InterruptedException
- If interrupted while doing things.
-
beforeContainerStarted
public void beforeContainerStarted(DockerAPI api, String workdir, DockerTransientNode node) throws IOException, InterruptedException
Description copied from class:DockerComputerConnector
Called once the container has been created but not started yet, that's a good opportunity to injectremoting.jar
usingDockerComputerConnector.injectRemotingJar(String, String, DockerClient)
- Overrides:
beforeContainerStarted
in classDockerComputerConnector
- Parameters:
api
- TheDockerAPI
that this container belongs to.workdir
- The filesystem path to the Jenkins agent working directory.node
- The Jenkins node.- Throws:
IOException
- If anything goes wrong.InterruptedException
- If interrupted while doing things.
-
-