Class: AWSCDK::CodeDeploy::CfnDeploymentConfig::MinimumHealthyHostsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
code_deploy/cfn_deployment_config.rb

Overview

MinimumHealthyHosts is a property of the DeploymentConfig resource that defines how many instances must remain healthy during an AWS CodeDeploy deployment.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(type:, value:) ⇒ MinimumHealthyHostsProperty

Returns a new instance of MinimumHealthyHostsProperty.

Parameters:

  • type (String)

    The minimum healthy instance type:.

  • value (Numeric)

    The minimum healthy instance value.



593
594
595
596
597
598
# File 'code_deploy/cfn_deployment_config.rb', line 593

def initialize(type:, value:)
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  @value = value
  Jsii::Type.check_type(@value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "value")
end

Instance Attribute Details

#typeString (readonly)

The minimum healthy instance type:.

  • HOST_COUNT: The minimum number of healthy instance as an absolute value.
  • FLEET_PERCENT: The minimum number of healthy instance as a percentage of the total number of instance in the deployment.

In an example of nine instance, if a HOST_COUNT of six is specified, deploy to up to three instances at a time. The deployment is successful if six or more instances are deployed to successfully. Otherwise, the deployment fails. If a FLEET_PERCENT of 40 is specified, deploy to up to five instance at a time. The deployment is successful if four or more instance are deployed to successfully. Otherwise, the deployment fails.

In a call to GetDeploymentConfig , CodeDeployDefault.OneAtATime returns a minimum healthy instance type of MOST_CONCURRENCY and a value of 1. This means a deployment to only one instance at a time. (You cannot set the type to MOST_CONCURRENCY, only to HOST_COUNT or FLEET_PERCENT.) In addition, with CodeDeployDefault.OneAtATime, AWS CodeDeploy attempts to ensure that all instances but one are kept in a healthy state during the deployment. Although this allows one instance at a time to be taken offline for a new deployment, it also means that if the deployment to the last instance fails, the overall deployment is still successful.

For more information, see AWS CodeDeploy Instance Health in the AWS CodeDeploy User Guide .



613
614
615
# File 'code_deploy/cfn_deployment_config.rb', line 613

def type
  @type
end

#valueNumeric (readonly)

The minimum healthy instance value.



618
619
620
# File 'code_deploy/cfn_deployment_config.rb', line 618

def value
  @value
end

Class Method Details

.jsii_propertiesObject



620
621
622
623
624
625
# File 'code_deploy/cfn_deployment_config.rb', line 620

def self.jsii_properties
  {
    :type => "type",
    :value => "value",
  }
end

Instance Method Details

#to_jsiiObject



627
628
629
630
631
632
633
634
# File 'code_deploy/cfn_deployment_config.rb', line 627

def to_jsii
  result = {}
  result.merge!({
    "type" => @type,
    "value" => @value,
  })
  result.compact
end