Class InstanceConfiguration

java.lang.Object
com.google.jenkins.plugins.computeengine.InstanceConfiguration
All Implemented Interfaces:
Describable<InstanceConfiguration>

public class InstanceConfiguration extends Object implements Describable<InstanceConfiguration>
  • Field Details

    • GUEST_ATTRIBUTES_METADATA_KEY

      public static final String GUEST_ATTRIBUTES_METADATA_KEY
      See Also:
    • SSH_METADATA_KEY

      public static final String SSH_METADATA_KEY
      See Also:
    • DEFAULT_BOOT_DISK_SIZE_GB

      public static final Long DEFAULT_BOOT_DISK_SIZE_GB
    • DEFAULT_NUM_EXECUTORS

      public static final Integer DEFAULT_NUM_EXECUTORS
    • DEFAULT_LAUNCH_TIMEOUT_SECONDS

      public static final Integer DEFAULT_LAUNCH_TIMEOUT_SECONDS
    • DEFAULT_RETENTION_TIME_MINUTES

      public static final Integer DEFAULT_RETENTION_TIME_MINUTES
    • DEFAULT_RUN_AS_USER

      public static final String DEFAULT_RUN_AS_USER
      See Also:
    • METADATA_LINUX_STARTUP_SCRIPT_KEY

      public static final String METADATA_LINUX_STARTUP_SCRIPT_KEY
      See Also:
    • METADATA_WINDOWS_STARTUP_SCRIPT_KEY

      public static final String METADATA_WINDOWS_STARTUP_SCRIPT_KEY
      See Also:
    • KNOWN_IMAGE_PROJECTS

      public static final List<String> KNOWN_IMAGE_PROJECTS
    • cloud

      protected transient ComputeEngineCloud cloud
  • Constructor Details

  • Method Details

    • setNumExecutorsStr

      @DataBoundSetter public void setNumExecutorsStr(String numExecutorsStr)
    • setLabelString

      @DataBoundSetter public void setLabelString(String labelString)
    • setNetworkTags

      @DataBoundSetter public void setNetworkTags(String networkTags)
    • setRetentionTimeMinutesStr

      @DataBoundSetter public void setRetentionTimeMinutesStr(String retentionTimeMinutesStr)
    • setLaunchTimeoutSecondsStr

      @DataBoundSetter public void setLaunchTimeoutSecondsStr(String launchTimeoutSecondsStr)
    • setBootDiskSizeGbStr

      @DataBoundSetter public void setBootDiskSizeGbStr(String bootDiskSizeGbStr)
    • setOneShot

      @DataBoundSetter public void setOneShot(boolean oneShot)
    • setCreateSnapshot

      @DataBoundSetter public void setCreateSnapshot(boolean createSnapshot)
    • setPreemptible

      @DataBoundSetter public void setPreemptible(boolean preemptible)
      This setter is kept only to provide JCasC compatibility, don't use for any other. Although JCasC is not "required" to keep compatibility, but in this case, as it is very low effort to keep the compatibility, we have decided to keep it.

      Previously, JCasC syntax would be preemptible: true, going forward instead should be done as, provisioningType: preemptibleVm

      Currently only caller is, JCasC configurators if the bundle is having `preemptible` field defined in it. Consider deleting it in future (perhaps after a year or so)

    • intOrDefault

      public static Integer intOrDefault(String toParse, Integer defaultTo)
    • longOrDefault

      public static Long longOrDefault(String toParse, Long defaultTo)
    • getDescriptor

      public Descriptor<InstanceConfiguration> getDescriptor()
      Specified by:
      getDescriptor in interface Describable<InstanceConfiguration>
    • getLabelString

      public String getLabelString()
    • getLabelSet

      public Set<LabelAtom> getLabelSet()
    • getDisplayName

      public String getDisplayName()
    • getLaunchTimeoutMillis

      public int getLaunchTimeoutMillis()
    • appendLabels

      public void appendLabels(Map<String,String> labels)
    • appendLabel

      public void appendLabel(String key, String value)
    • provision

      public ComputeEngineInstance provision() throws IOException
      Throws:
      IOException
    • readResolve

      protected Object readResolve()
      Initializes transient properties
    • instance

      public com.google.api.services.compute.model.Instance instance() throws IOException
      Throws:
      IOException
    • builder

      public static InstanceConfiguration.Builder builder()
    • getDescription

      public String getDescription()
    • getNamePrefix

      public String getNamePrefix()
    • getRegion

      public String getRegion()
    • getZone

      public String getZone()
    • getMachineType

      public String getMachineType()
    • getNumExecutorsStr

      public String getNumExecutorsStr()
    • getStartupScript

      public String getStartupScript()
    • getProvisioningType

      public ProvisioningType getProvisioningType()
    • getMinCpuPlatform

      public String getMinCpuPlatform()
    • getLabels

      public String getLabels()
    • getRunAsUser

      public String getRunAsUser()
    • getBootDiskType

      public String getBootDiskType()
    • isBootDiskAutoDelete

      public boolean isBootDiskAutoDelete()
    • getBootDiskSourceImageName

      public String getBootDiskSourceImageName()
    • getBootDiskSourceImageProject

      public String getBootDiskSourceImageProject()
    • getNetworkConfiguration

      public NetworkConfiguration getNetworkConfiguration()
    • getNetworkInterfaceIpStackMode

      public NetworkInterfaceIpStackMode getNetworkInterfaceIpStackMode()
    • getExternalAddress

      @Deprecated public Boolean getExternalAddress()
      Deprecated.
    • isUseInternalAddress

      public boolean isUseInternalAddress()
    • isIgnoreProxy

      public boolean isIgnoreProxy()
    • getNetworkTags

      public String getNetworkTags()
    • getServiceAccountEmail

      public String getServiceAccountEmail()
    • getMode

      public Node.Mode getMode()
    • getAcceleratorConfiguration

      public AcceleratorConfiguration getAcceleratorConfiguration()
    • getRetentionTimeMinutesStr

      public String getRetentionTimeMinutesStr()
    • getLaunchTimeoutSecondsStr

      public String getLaunchTimeoutSecondsStr()
    • getBootDiskSizeGbStr

      public String getBootDiskSizeGbStr()
    • isOneShot

      public boolean isOneShot()
    • getTemplate

      public String getTemplate()
    • getWindowsConfiguration

      @Nullable public WindowsConfiguration getWindowsConfiguration()
    • getSshConfiguration

      @Nullable public SshConfiguration getSshConfiguration()
    • isCreateSnapshot

      public boolean isCreateSnapshot()
    • getRemoteFs

      public String getRemoteFs()
    • getJavaExecPath

      public String getJavaExecPath()
    • getSshKeyCredential

      public GoogleKeyCredential getSshKeyCredential()
    • getGoogleLabels

      public Map<String,String> getGoogleLabels()
    • getNumExecutors

      public Integer getNumExecutors()
    • getRetentionTimeMinutes

      public Integer getRetentionTimeMinutes()
    • getLaunchTimeoutSeconds

      public Integer getLaunchTimeoutSeconds()
    • getBootDiskSizeGb

      public Long getBootDiskSizeGb()
    • isPreemptible

      @Deprecated public boolean isPreemptible()
      Deprecated.
      Use provisioningType instead.
    • setDescription

      @DataBoundSetter public void setDescription(String description)
    • setNamePrefix

      @DataBoundSetter public void setNamePrefix(String namePrefix)
    • setRegion

      @DataBoundSetter public void setRegion(String region)
    • setZone

      @DataBoundSetter public void setZone(String zone)
    • setMachineType

      @DataBoundSetter public void setMachineType(String machineType)
    • setStartupScript

      @DataBoundSetter public void setStartupScript(String startupScript)
    • setProvisioningType

      @DataBoundSetter public void setProvisioningType(ProvisioningType provisioningType)
    • setMinCpuPlatform

      @DataBoundSetter public void setMinCpuPlatform(String minCpuPlatform)
    • setLabels

      @DataBoundSetter public void setLabels(String labels)
    • setRunAsUser

      @DataBoundSetter public void setRunAsUser(String runAsUser)
    • setBootDiskType

      @DataBoundSetter public void setBootDiskType(String bootDiskType)
    • setBootDiskAutoDelete

      @DataBoundSetter public void setBootDiskAutoDelete(boolean bootDiskAutoDelete)
    • setBootDiskSourceImageName

      @DataBoundSetter public void setBootDiskSourceImageName(String bootDiskSourceImageName)
    • setBootDiskSourceImageProject

      @DataBoundSetter public void setBootDiskSourceImageProject(String bootDiskSourceImageProject)
    • setNetworkConfiguration

      @DataBoundSetter public void setNetworkConfiguration(NetworkConfiguration networkConfiguration)
    • setNetworkInterfaceIpStackMode

      @DataBoundSetter public void setNetworkInterfaceIpStackMode(NetworkInterfaceIpStackMode networkInterfaceIpStackMode)
    • setExternalAddress

      @Deprecated @DataBoundSetter public void setExternalAddress(Boolean externalAddress)
      Deprecated.
    • setUseInternalAddress

      @DataBoundSetter public void setUseInternalAddress(boolean useInternalAddress)
    • setIgnoreProxy

      @DataBoundSetter public void setIgnoreProxy(boolean ignoreProxy)
    • setServiceAccountEmail

      @DataBoundSetter public void setServiceAccountEmail(String serviceAccountEmail)
    • setMode

      @DataBoundSetter public void setMode(Node.Mode mode)
    • setAcceleratorConfiguration

      @DataBoundSetter public void setAcceleratorConfiguration(AcceleratorConfiguration acceleratorConfiguration)
    • setTemplate

      @DataBoundSetter public void setTemplate(String template)
    • setWindowsConfiguration

      @DataBoundSetter public void setWindowsConfiguration(@Nullable WindowsConfiguration windowsConfiguration)
    • setSshConfiguration

      @DataBoundSetter public void setSshConfiguration(@Nullable SshConfiguration sshConfiguration)
    • setRemoteFs

      @DataBoundSetter public void setRemoteFs(String remoteFs)
    • setJavaExecPath

      @DataBoundSetter public void setJavaExecPath(String javaExecPath)
    • setSshKeyCredential

      @DataBoundSetter public void setSshKeyCredential(GoogleKeyCredential sshKeyCredential)
    • setGoogleLabels

      @DataBoundSetter public void setGoogleLabels(Map<String,String> googleLabels)
    • setNumExecutors

      @DataBoundSetter public void setNumExecutors(Integer numExecutors)
    • setRetentionTimeMinutes

      @DataBoundSetter public void setRetentionTimeMinutes(Integer retentionTimeMinutes)
    • setLaunchTimeoutSeconds

      @DataBoundSetter public void setLaunchTimeoutSeconds(Integer launchTimeoutSeconds)
    • setBootDiskSizeGb

      @DataBoundSetter public void setBootDiskSizeGb(Long bootDiskSizeGb)
    • setLabelSet

      @DataBoundSetter public void setLabelSet(Set<LabelAtom> labelSet)
    • getCloud

      protected ComputeEngineCloud getCloud()
    • setCloud

      protected void setCloud(ComputeEngineCloud cloud)