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>
- Author:
- Nicolas De Loof
-
Nested Class Summary
-
Field Summary
Fields inherited from class io.jenkins.docker.connector.DockerComputerConnector
remoting
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
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
getUser()
int
hashCode()
void
setEntryPointArgumentsString
(String entryPointArgumentsString) void
setJenkinsUrl
(String jenkinsUrl) void
toString()
withEntryPointArguments
(String... args) withJenkinsUrl
(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
-
Constructor Details
-
DockerComputerJNLPConnector
@DataBoundConstructor public DockerComputerJNLPConnector()
-
-
Method Details
-
getUser
-
setUser
-
getJenkinsUrl
-
setJenkinsUrl
-
getEntryPointArgumentsString
-
setEntryPointArgumentsString
-
withUser
-
withJenkinsUrl
-
withEntryPointArguments
-
hashCode
public int hashCode()- Overrides:
hashCode
in classDockerComputerConnector
-
equals
- Overrides:
equals
in classDockerComputerConnector
-
toString
-
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.
-