From 1cb950500133a1ea1e1cd8ac18bfd6ad61436510 Mon Sep 17 00:00:00 2001
From: Marcelo Bartsch <49187416+marcelobartsch@users.noreply.github.com>
Date: Tue, 23 Apr 2019 15:15:53 +0200
Subject: [PATCH 1/7] add option to change the default jenkins-agent to other
name.
---
.../jenkins/codebuilder/CodeBuilderCloud.java | 27 +++++++++++++++++++
.../codebuilder/CodeBuilderLauncher.java | 4 +--
.../codebuilder/CodeBuilderCloud/config.jelly | 4 +++
3 files changed, 33 insertions(+), 2 deletions(-)
diff --git a/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud.java b/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud.java
index e65ed56..39ba04f 100644
--- a/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud.java
+++ b/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud.java
@@ -57,6 +57,7 @@
public class CodeBuilderCloud extends Cloud {
private static final Logger LOGGER = LoggerFactory.getLogger(CodeBuilderCloud.class);
private static final String DEFAULT_JNLP_IMAGE = "lsegal/jnlp-docker-agent:alpine";
+ private static final String DEFAULT_JNLP_COMMAND = "jenkins-agent";
private static final int DEFAULT_AGENT_TIMEOUT = 120;
private static final String DEFAULT_COMPUTE_TYPE = "BUILD_GENERAL1_SMALL";
@@ -77,6 +78,7 @@ public class CodeBuilderCloud extends Cloud {
private String computeType;
private String jenkinsUrl;
private String jnlpImage;
+ private String jnlpCommand;
private int agentTimeout;
private transient AWSCodeBuild client;
@@ -217,6 +219,27 @@ public void setJenkinsUrl(String jenkinsUrl) {
this.jenkinsUrl = jenkinsUrl;
}
+ /**
+ * Getter for the field jnlpCommand.
+ *
+ * @return a {@link String} object.
+ */
+ @Nonnull
+ public String getJnlpCommand() {
+ return StringUtils.isBlank(jnlpCommand) ? DEFAULT_JNLP_COMMAND : jnlpCommand;
+ }
+
+ /**
+ * Setter for the field jnlpCommand.
+ *
+ * @param jnlpCommand a {@link String} object.
+ */
+ @DataBoundSetter
+ public void setJnlpCommand(String jnlpCommand) {
+ this.jnlpCommand = jnlpCommand;
+ }
+
+
/**
* Getter for the field jnlpImage.
*
@@ -400,6 +423,10 @@ public String getDefaultJnlpImage() {
return DEFAULT_JNLP_IMAGE;
}
+ public String getDefaultJnlpCommand() {
+ return DEFAULT_JNLP_COMMAND;
+ }
+
public int getDefaultAgentTimeout() {
return DEFAULT_AGENT_TIMEOUT;
}
diff --git a/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderLauncher.java b/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderLauncher.java
index be856db..34a9609 100644
--- a/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderLauncher.java
+++ b/src/main/java/dev/lsegal/jenkins/codebuilder/CodeBuilderLauncher.java
@@ -113,8 +113,8 @@ private String buildspec(@Nonnull SlaveComputer computer) {
if (n == null) {
return "";
}
- String cmd = String.format("jenkins-agent -noreconnect -workDir \"$CODEBUILD_SRC_DIR\" -url \"%s\" \"%s\" \"%s\"",
- cloud.getJenkinsUrl(), computer.getJnlpMac(), n.getDisplayName());
+ String cmd = String.format("%s -noreconnect -workDir \"$CODEBUILD_SRC_DIR\" -url \"%s\" \"%s\" \"%s\"",
+ cloud.getJnlpCommand(), cloud.getJenkinsUrl(), computer.getJnlpMac(), n.getDisplayName());
StringBuilder builder = new StringBuilder();
builder.append("version: 0.2\n");
builder.append("phases:\n");
diff --git a/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly b/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly
index d7625dd..c397bd3 100644
--- a/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly
+++ b/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly
@@ -34,6 +34,10 @@
+
+
+
+
From 5b9ade38cc2bcba92134c38e452ba8cc11277df1 Mon Sep 17 00:00:00 2001
From: Marcelo Bartsch <49187416+marcelobartsch@users.noreply.github.com>
Date: Thu, 30 May 2019 09:21:09 +0200
Subject: [PATCH 2/7] missing select name cause that change to the computeType
is not saved
---
.../lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly b/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly
index d7625dd..75c09fd 100644
--- a/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly
+++ b/src/main/resources/dev/lsegal/jenkins/codebuilder/CodeBuilderCloud/config.jelly
@@ -18,7 +18,7 @@
-