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
Nested Classes -
Field Summary
Fields inherited from class io.jenkins.docker.connector.DockerComputerConnector
remoting -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbeforeContainerCreated(DockerAPI api, String workdir, com.github.dockerjava.api.command.CreateContainerCmd cmd) Called just before the container is created.voidbeforeContainerStarted(DockerAPI api, String workdir, DockerTransientNode node) Called once the container has been created but not started yet, that's a good opportunity to injectremoting.jarusingDockerComputerConnector.injectRemotingJar(String, String, DockerClient)protected ComputerLaunchercreateLauncher(DockerAPI api, String workdir, com.github.dockerjava.api.command.InspectContainerResponse inspect, TaskListener listener) Create a Launcher to create an Agent with this container.booleangetUser()inthashCode()voidsetEntryPointArgumentsString(String entryPointArgumentsString) voidsetJenkinsUrl(String jenkinsUrl) voidtoString()withEntryPointArguments(String... args) withJenkinsUrl(String value) Methods inherited from class io.jenkins.docker.connector.DockerComputerConnector
addEnvVar, addEnvVars, afterContainerStarted, all, createLauncher, ensureNodeIsKnown, ensureWaiting, injectRemotingJarMethods 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:
hashCodein classDockerComputerConnector
-
equals
- Overrides:
equalsin 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:DockerComputerConnectorCreate 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:
createLauncherin classDockerComputerConnector- Parameters:
api- TheDockerAPIfor 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:DockerComputerConnectorCalled just before the container is created. Can provide some customization to the container creation command.- Overrides:
beforeContainerCreatedin classDockerComputerConnector- Parameters:
api- TheDockerAPIthat this container belongs to.workdir- The filesystem path to the Jenkins agent working directory.cmd- TheCreateContainerCmdthat'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:DockerComputerConnectorCalled once the container has been created but not started yet, that's a good opportunity to injectremoting.jarusingDockerComputerConnector.injectRemotingJar(String, String, DockerClient)- Overrides:
beforeContainerStartedin classDockerComputerConnector- Parameters:
api- TheDockerAPIthat 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.
-