Interface ElasticInstanceSchedule

All Superinterfaces:
BambooIdProvider, BambooObject
All Known Implementing Classes:
ElasticInstanceScheduleImpl

public interface ElasticInstanceSchedule extends BambooObject
Represents an schedule to attempt to manage the number of elastic agents
  • Method Details

    • isEnabled

      boolean isEnabled()
      Is this schedule enabled or not
      Returns:
    • getCronExpression

      @Nullable @Nullable String getCronExpression()
      Cron expression representing when the logic should be run
      Returns:
      may return null. Null will mean that the schedule will be run on start up
    • getElasticImageConfiguration

      @Nullable @Nullable ElasticImageConfiguration getElasticImageConfiguration()
      The Elastic Configuration that will be managed. If null, it means schedule will be applied for all / any elastic configuration
      Returns:
      may be null. Null means schedule will be applied for all / any elastic configuration
    • getActiveInstanceAdjustmentType

      @NotNull @NotNull ActiveInstanceAdjustmentType getActiveInstanceAdjustmentType()
      Whether to bring # of instances to <=, >= or ==. Defaults to ActiveInstanceAdjustmentType.EQUALS
      Returns:
    • getTargetActiveInstances

      int getTargetActiveInstances()
      Postive integer for # of active instances to have
      Returns:
    • isRunOnStartup

      boolean isRunOnStartup()
      if the schedule should be run on startup
    • isAllElasticConfigurations

      boolean isAllElasticConfigurations()
      Does this scheudle apply for all instances?
    • setCronExpression

      void setCronExpression(String cronExpression)
    • setElasticImageConfiguration

      void setElasticImageConfiguration(ElasticImageConfiguration elasticImageConfiguration)
    • setActiveInstanceAdjustmentType

      void setActiveInstanceAdjustmentType(ActiveInstanceAdjustmentType activeInstanceAdjustmentType)
    • setTargetActiveInstances

      void setTargetActiveInstances(int targetActiveInstances)
    • getNumberToAdjust

      int getNumberToAdjust(int currentInstances)
      Given the curent instance count, by how many agents do we need to adjust by?
      Parameters:
      currentInstances -
      Returns:
      +n number means to start n agents. -x means shut down x agents. 0 means do nothing
    • setEnabled

      void setEnabled(boolean enabled)