private String loadPipelineScript(String name) { return AbstractKubernetesPipelineTest.loadPipelineScript(getClass(), name); }
@Before public void configureCloud() throws Exception { cloud = setupCloud(this); createSecret(cloud.connect()); cloud.getTemplates().clear(); cloud.addTemplate(buildBusyboxTemplate("busybox")); // Agents running in Kubernetes (minikube) need to connect to this server, so localhost does not work URL url = r.getURL(); String hostAddress = System.getProperty("jenkins.host.address"); if (hostAddress == null) { hostAddress = InetAddress.getLocalHost().getHostAddress(); } URL nonLocalhostUrl = new URL(url.getProtocol(), hostAddress, url.getPort(), url.getFile()); JenkinsLocationConfiguration.get().setUrl(nonLocalhostUrl.toString()); r.jenkins.clouds.add(cloud); DescribableList<NodeProperty<?>, NodePropertyDescriptor> list = r.jenkins.getGlobalNodeProperties(); EnvironmentVariablesNodeProperty newEnvVarsNodeProperty = new hudson.slaves.EnvironmentVariablesNodeProperty(); list.add(newEnvVarsNodeProperty); EnvVars envVars = newEnvVarsNodeProperty.getEnvVars(); envVars.put("GLOBAL", "GLOBAL"); envVars.put("JAVA_HOME_X", "java-home-x"); r.jenkins.save(); }
private PodTemplate buildBusyboxTemplate(String label) { // Create a busybox template PodTemplate podTemplate = new PodTemplate(); podTemplate.setLabel(label); ContainerTemplate containerTemplate = new ContainerTemplate("busybox", "busybox", "cat", ""); containerTemplate.setTtyEnabled(true); podTemplate.getContainers().add(containerTemplate); setEnvVariables(podTemplate); return podTemplate; }
protected String loadPipelineScript(String name) { return loadPipelineScript(getClass(), name); }