package com.nirima.jenkins.plugins.docker.builder; import com.nirima.jenkins.plugins.docker.DockerImagePullStrategy; import com.nirima.jenkins.plugins.docker.DockerTemplate; import com.nirima.jenkins.plugins.docker.DockerTemplateBase; import com.nirima.jenkins.plugins.docker.launcher.DockerComputerSSHLauncher; import com.nirima.jenkins.plugins.docker.strategy.DockerOnceRetentionStrategy; import hudson.model.Node; import hudson.plugins.sshslaves.SSHConnector; import hudson.slaves.RetentionStrategy; import hudson.tasks.Builder; /** * @author Kanstantsin Shautsou */ public abstract class DockerBuilderNewTemplateBackwardCompatibility extends Builder { /** * @deprecated */ @Deprecated protected transient String image, labelString, remoteFsMapping, remoteFs, credentialsId, idleTerminationMinutes, sshLaunchTimeoutMinutes, jvmOptions, javaPath, prefixStartSlaveCmd, suffixStartSlaveCmd, instanceCapStr, dnsString, network, dockerCommand, volumesString, volumesFrom, environmentsString, lxcConfString, bindPorts, hostname, macAddress; @Deprecated protected transient RetentionStrategy retentionStrategy; @Deprecated protected transient Integer memoryLimit, memorySwap, cpuShares; @Deprecated protected transient boolean bindAllPorts, privileged, tty; public abstract void setDockerTemplate(DockerTemplate dockerTemplate); protected void convert1() { final DockerTemplateBase dockerTemplateBase = new DockerTemplateBase(image, dnsString, network, dockerCommand, volumesString, null, environmentsString, lxcConfString, hostname, memoryLimit, memorySwap, cpuShares, bindPorts, bindAllPorts, privileged, tty, macAddress ); final DockerComputerSSHLauncher dockerComputerSSHLauncher = new DockerComputerSSHLauncher( new SSHConnector(22, credentialsId, jvmOptions, javaPath, prefixStartSlaveCmd, suffixStartSlaveCmd, Integer.parseInt(sshLaunchTimeoutMinutes) * 60) ); final DockerTemplate dockerTemplate = new DockerTemplate(dockerTemplateBase, labelString, remoteFs, remoteFsMapping, instanceCapStr, Node.Mode.NORMAL, 1, dockerComputerSSHLauncher, new DockerOnceRetentionStrategy(10), false, DockerImagePullStrategy.PULL_LATEST); setDockerTemplate(dockerTemplate); } }