diff --git a/src/main/java/com/google/jenkins/plugins/computeengine/InstanceConfiguration.java b/src/main/java/com/google/jenkins/plugins/computeengine/InstanceConfiguration.java index acc3749a..ba42e00f 100644 --- a/src/main/java/com/google/jenkins/plugins/computeengine/InstanceConfiguration.java +++ b/src/main/java/com/google/jenkins/plugins/computeengine/InstanceConfiguration.java @@ -608,7 +608,7 @@ public static SshConfiguration defaultSshConfiguration() { @SuppressWarnings("unused") // jelly public ProvisioningType defaultProvisioningType() { - return new Standard(); + return new Standard(0); } public static NetworkConfiguration defaultNetworkConfiguration() { diff --git a/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/SpotVm.java b/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/SpotVm.java index da286d77..f4999e35 100644 --- a/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/SpotVm.java +++ b/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/SpotVm.java @@ -19,6 +19,7 @@ import com.google.api.services.compute.model.Scheduling; import hudson.Extension; import hudson.util.FormValidation; +import org.kohsuke.stapler.DataBoundConstructor; import org.kohsuke.stapler.DataBoundSetter; import org.kohsuke.stapler.QueryParameter; @@ -26,6 +27,12 @@ public class SpotVm extends ProvisioningType { private long maxRunDurationSeconds; + // required for casc + @DataBoundConstructor + public SpotVm(long maxRunDurationSeconds) { + this.maxRunDurationSeconds = maxRunDurationSeconds; + } + @SuppressWarnings("unused") // jelly @DataBoundSetter public void setMaxRunDurationSeconds(long maxRunDurationSeconds) { diff --git a/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/Standard.java b/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/Standard.java index 9f6426bb..9717772b 100644 --- a/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/Standard.java +++ b/src/main/java/com/google/jenkins/plugins/computeengine/ui/helpers/Standard.java @@ -19,6 +19,7 @@ import com.google.api.services.compute.model.Scheduling; import hudson.Extension; import hudson.util.FormValidation; +import org.kohsuke.stapler.DataBoundConstructor; import org.kohsuke.stapler.DataBoundSetter; import org.kohsuke.stapler.QueryParameter; @@ -26,6 +27,12 @@ public class Standard extends ProvisioningType { private long maxRunDurationSeconds; + // required for casc + @DataBoundConstructor + public Standard(long maxRunDurationSeconds) { + this.maxRunDurationSeconds = maxRunDurationSeconds; + } + @SuppressWarnings("unused") // jelly @DataBoundSetter public void setMaxRunDurationSeconds(long maxRunDurationSeconds) { diff --git a/src/test/java/com/google/jenkins/plugins/computeengine/InstanceConfigurationTest.java b/src/test/java/com/google/jenkins/plugins/computeengine/InstanceConfigurationTest.java index b9e17423..3e4b4edd 100644 --- a/src/test/java/com/google/jenkins/plugins/computeengine/InstanceConfigurationTest.java +++ b/src/test/java/com/google/jenkins/plugins/computeengine/InstanceConfigurationTest.java @@ -310,7 +310,7 @@ public static InstanceConfiguration.Builder instanceConfigurationBuilder() { .machineType(MACHINE_TYPE) .numExecutorsStr(NUM_EXECUTORS) .startupScript(STARTUP_SCRIPT) - .provisioningType(PREEMPTIBLE ? new PreemptibleVm() : new Standard()) + .provisioningType(PREEMPTIBLE ? new PreemptibleVm() : new Standard(0)) .labels(LABEL) .description(CONFIG_DESC) .bootDiskType(BOOT_DISK_TYPE) diff --git a/src/test/java/com/google/jenkins/plugins/computeengine/integration/ITUtil.java b/src/test/java/com/google/jenkins/plugins/computeengine/integration/ITUtil.java index 2b7ed517..29379ca7 100644 --- a/src/test/java/com/google/jenkins/plugins/computeengine/integration/ITUtil.java +++ b/src/test/java/com/google/jenkins/plugins/computeengine/integration/ITUtil.java @@ -299,7 +299,7 @@ static InstanceConfiguration.Builder instanceConfigurationBuilder() { .region(REGION) .zone(ZONE) .machineType(MACHINE_TYPE) - .provisioningType(PREEMPTIBLE ? new PreemptibleVm() : new Standard()) + .provisioningType(PREEMPTIBLE ? new PreemptibleVm() : new Standard(0)) .minCpuPlatform(MIN_CPU_PLATFORM) .description(CONFIG_DESC) .bootDiskType(BOOT_DISK_TYPE)