Package com.yahoo.config.application.api
Class DeploymentInstanceSpec
java.lang.Object
com.yahoo.config.application.api.DeploymentSpec.Step
com.yahoo.config.application.api.DeploymentSpec.Steps
com.yahoo.config.application.api.DeploymentInstanceSpec
The deployment spec for an application instance
- Author:
- bratseth
-
Constructor Summary
ConstructorDescriptionDeploymentInstanceSpec
(com.yahoo.config.provision.InstanceName name, List<DeploymentSpec.Step> steps, DeploymentSpec.UpgradePolicy upgradePolicy, DeploymentSpec.RevisionTarget revisionTarget, DeploymentSpec.RevisionChange revisionChange, DeploymentSpec.UpgradeRollout upgradeRollout, int minRisk, int maxRisk, int maxIdleHours, List<DeploymentSpec.ChangeBlocker> changeBlockers, Optional<String> globalServiceId, Optional<com.yahoo.config.provision.AthenzService> athenzService, Notifications notifications, List<Endpoint> endpoints, Instant now) -
Method Summary
Modifier and TypeMethodDescriptionOptional<com.yahoo.config.provision.AthenzService>
athenzService
(com.yahoo.config.provision.Environment environment, com.yahoo.config.provision.RegionName region) Returns the athenz service for environment/region if configured, defaulting to that of the instanceboolean
canChangeRevisionAt
(Instant instant) Returns whether an application revision change for these instances can occur at the given instantboolean
canUpgradeAt
(Instant instant) Returns whether the instances in this step can upgrade at the given instantReturns time windows where upgrades are disallowed for these instancesboolean
deploysTo
(com.yahoo.config.provision.Environment environment, com.yahoo.config.provision.RegionName region) Returns whether this instance deploys to the given zone, either implicitly or explicitlyReturns the rotations configuration of these instancesboolean
Returns the ID of the service to expose through global routing, if presentint
hashCode()
int
int
maxRisk()
Maximum cumulative risk that will automatically roll out to this instance, as long as this is possible.int
minRisk()
Minimum cumulative, enqueued risk required for a new revision to roll out to this instance.com.yahoo.config.provision.InstanceName
name()
Returns the notification configuration of these instancesReturns the revision change strategy of this, which isDeploymentSpec.RevisionChange.whenFailing
by defaultReturns the revision target choice of this, which isDeploymentSpec.RevisionTarget.latest
by defaulttoString()
Returns the upgrade policy of this, which isDeploymentSpec.UpgradePolicy.defaultPolicy
by defaultReturns the upgrade rollout strategy of this, which isDeploymentSpec.UpgradeRollout.separate
by defaultMethods inherited from class com.yahoo.config.application.api.DeploymentSpec.Steps
concerns, delay, steps, zones
Methods inherited from class com.yahoo.config.application.api.DeploymentSpec.Step
concerns, isOrdered, isTest
-
Constructor Details
-
DeploymentInstanceSpec
public DeploymentInstanceSpec(com.yahoo.config.provision.InstanceName name, List<DeploymentSpec.Step> steps, DeploymentSpec.UpgradePolicy upgradePolicy, DeploymentSpec.RevisionTarget revisionTarget, DeploymentSpec.RevisionChange revisionChange, DeploymentSpec.UpgradeRollout upgradeRollout, int minRisk, int maxRisk, int maxIdleHours, List<DeploymentSpec.ChangeBlocker> changeBlockers, Optional<String> globalServiceId, Optional<com.yahoo.config.provision.AthenzService> athenzService, Notifications notifications, List<Endpoint> endpoints, Instant now)
-
-
Method Details
-
name
public com.yahoo.config.provision.InstanceName name() -
upgradePolicy
Returns the upgrade policy of this, which isDeploymentSpec.UpgradePolicy.defaultPolicy
by default -
revisionTarget
Returns the revision target choice of this, which isDeploymentSpec.RevisionTarget.latest
by default -
revisionChange
Returns the revision change strategy of this, which isDeploymentSpec.RevisionChange.whenFailing
by default -
upgradeRollout
Returns the upgrade rollout strategy of this, which isDeploymentSpec.UpgradeRollout.separate
by default -
minRisk
public int minRisk()Minimum cumulative, enqueued risk required for a new revision to roll out to this instance. 0 by default. -
maxRisk
public int maxRisk()Maximum cumulative risk that will automatically roll out to this instance, as long as this is possible. 0 by default. -
maxIdleHours
public int maxIdleHours() -
changeBlocker
Returns time windows where upgrades are disallowed for these instances -
globalServiceId
Returns the ID of the service to expose through global routing, if present -
canUpgradeAt
Returns whether the instances in this step can upgrade at the given instant -
canChangeRevisionAt
Returns whether an application revision change for these instances can occur at the given instant -
athenzService
public Optional<com.yahoo.config.provision.AthenzService> athenzService(com.yahoo.config.provision.Environment environment, com.yahoo.config.provision.RegionName region) Returns the athenz service for environment/region if configured, defaulting to that of the instance -
notifications
Returns the notification configuration of these instances -
endpoints
Returns the rotations configuration of these instances -
deploysTo
public boolean deploysTo(com.yahoo.config.provision.Environment environment, com.yahoo.config.provision.RegionName region) Returns whether this instance deploys to the given zone, either implicitly or explicitly -
equals
- Overrides:
equals
in classDeploymentSpec.Steps
-
hashCode
public int hashCode()- Overrides:
hashCode
in classDeploymentSpec.Steps
-
toString
- Overrides:
toString
in classDeploymentSpec.Steps
-