CloudFront / Client / update_continuous_deployment_policy
update_continuous_deployment_policy#
- CloudFront.Client.update_continuous_deployment_policy(**kwargs)#
Updates a continuous deployment policy. You can update a continuous deployment policy to enable or disable it, to change the percentage of traffic that it sends to the staging distribution, or to change the staging distribution that it sends traffic to.
When you update a continuous deployment policy configuration, all the fields are updated with the values that are provided in the request. You cannot update some fields independent of others. To update a continuous deployment policy configuration:
Use
GetContinuousDeploymentPolicyConfig
to get the current configuration.Locally modify the fields in the continuous deployment policy configuration that you want to update.
Use
UpdateContinuousDeploymentPolicy
, providing the entire continuous deployment policy configuration, including the fields that you modified and those that you didn’t.
See also: AWS API Documentation
Request Syntax
response = client.update_continuous_deployment_policy( ContinuousDeploymentPolicyConfig={ 'StagingDistributionDnsNames': { 'Quantity': 123, 'Items': [ 'string', ] }, 'Enabled': True|False, 'TrafficConfig': { 'SingleWeightConfig': { 'Weight': ..., 'SessionStickinessConfig': { 'IdleTTL': 123, 'MaximumTTL': 123 } }, 'SingleHeaderConfig': { 'Header': 'string', 'Value': 'string' }, 'Type': 'SingleWeight'|'SingleHeader' } }, Id='string', IfMatch='string' )
- Parameters:
ContinuousDeploymentPolicyConfig (dict) –
[REQUIRED]
The continuous deployment policy configuration.
StagingDistributionDnsNames (dict) – [REQUIRED]
The CloudFront domain name of the staging distribution. For example:
d111111abcdef8.cloudfront.net
.Quantity (integer) – [REQUIRED]
The number of CloudFront domain names in your staging distribution.
Items (list) –
The CloudFront domain name of the staging distribution.
(string) –
Enabled (boolean) – [REQUIRED]
A Boolean that indicates whether this continuous deployment policy is enabled (in effect). When this value is
true
, this policy is enabled and in effect. When this value isfalse
, this policy is not enabled and has no effect.TrafficConfig (dict) –
Contains the parameters for routing production traffic from your primary to staging distributions.
SingleWeightConfig (dict) –
Contains the percentage of traffic to send to the staging distribution.
Weight (float) – [REQUIRED]
The percentage of traffic to send to a staging distribution, expressed as a decimal number between 0 and 0.15. For example, a value of 0.10 means 10% of traffic is sent to the staging distribution.
SessionStickinessConfig (dict) –
Session stickiness provides the ability to define multiple requests from a single viewer as a single session. This prevents the potentially inconsistent experience of sending some of a given user’s requests to your staging distribution, while others are sent to your primary distribution. Define the session duration using TTL values.
IdleTTL (integer) – [REQUIRED]
The amount of time after which you want sessions to cease if no requests are received. Allowed values are 300–3600 seconds (5–60 minutes).
The value must be less than or equal to
MaximumTTL
.MaximumTTL (integer) – [REQUIRED]
The maximum amount of time to consider requests from the viewer as being part of the same session. Allowed values are 300–3600 seconds (5–60 minutes).
The value must be greater than or equal to
IdleTTL
.
SingleHeaderConfig (dict) –
Determines which HTTP requests are sent to the staging distribution.
Header (string) – [REQUIRED]
The request header name that you want CloudFront to send to your staging distribution. The header must contain the prefix
aws-cf-cd-
.Value (string) – [REQUIRED]
The request header value.
Type (string) – [REQUIRED]
The type of traffic configuration.
Id (string) –
[REQUIRED]
The identifier of the continuous deployment policy that you are updating.
IfMatch (string) – The current version (
ETag
value) of the continuous deployment policy that you are updating.
- Return type:
dict
- Returns:
Response Syntax
{ 'ContinuousDeploymentPolicy': { 'Id': 'string', 'LastModifiedTime': datetime(2015, 1, 1), 'ContinuousDeploymentPolicyConfig': { 'StagingDistributionDnsNames': { 'Quantity': 123, 'Items': [ 'string', ] }, 'Enabled': True|False, 'TrafficConfig': { 'SingleWeightConfig': { 'Weight': ..., 'SessionStickinessConfig': { 'IdleTTL': 123, 'MaximumTTL': 123 } }, 'SingleHeaderConfig': { 'Header': 'string', 'Value': 'string' }, 'Type': 'SingleWeight'|'SingleHeader' } } }, 'ETag': 'string' }
Response Structure
(dict) –
ContinuousDeploymentPolicy (dict) –
A continuous deployment policy.
Id (string) –
The identifier of the continuous deployment policy.
LastModifiedTime (datetime) –
The date and time the continuous deployment policy was last modified.
ContinuousDeploymentPolicyConfig (dict) –
Contains the configuration for a continuous deployment policy.
StagingDistributionDnsNames (dict) –
The CloudFront domain name of the staging distribution. For example:
d111111abcdef8.cloudfront.net
.Quantity (integer) –
The number of CloudFront domain names in your staging distribution.
Items (list) –
The CloudFront domain name of the staging distribution.
(string) –
Enabled (boolean) –
A Boolean that indicates whether this continuous deployment policy is enabled (in effect). When this value is
true
, this policy is enabled and in effect. When this value isfalse
, this policy is not enabled and has no effect.TrafficConfig (dict) –
Contains the parameters for routing production traffic from your primary to staging distributions.
SingleWeightConfig (dict) –
Contains the percentage of traffic to send to the staging distribution.
Weight (float) –
The percentage of traffic to send to a staging distribution, expressed as a decimal number between 0 and 0.15. For example, a value of 0.10 means 10% of traffic is sent to the staging distribution.
SessionStickinessConfig (dict) –
Session stickiness provides the ability to define multiple requests from a single viewer as a single session. This prevents the potentially inconsistent experience of sending some of a given user’s requests to your staging distribution, while others are sent to your primary distribution. Define the session duration using TTL values.
IdleTTL (integer) –
The amount of time after which you want sessions to cease if no requests are received. Allowed values are 300–3600 seconds (5–60 minutes).
The value must be less than or equal to
MaximumTTL
.MaximumTTL (integer) –
The maximum amount of time to consider requests from the viewer as being part of the same session. Allowed values are 300–3600 seconds (5–60 minutes).
The value must be greater than or equal to
IdleTTL
.
SingleHeaderConfig (dict) –
Determines which HTTP requests are sent to the staging distribution.
Header (string) –
The request header name that you want CloudFront to send to your staging distribution. The header must contain the prefix
aws-cf-cd-
.Value (string) –
The request header value.
Type (string) –
The type of traffic configuration.
ETag (string) –
The version identifier for the current version of the continuous deployment policy.
Exceptions
CloudFront.Client.exceptions.PreconditionFailed
CloudFront.Client.exceptions.AccessDenied
CloudFront.Client.exceptions.StagingDistributionInUse
CloudFront.Client.exceptions.InconsistentQuantities
CloudFront.Client.exceptions.InvalidArgument
CloudFront.Client.exceptions.NoSuchContinuousDeploymentPolicy
CloudFront.Client.exceptions.InvalidIfMatchVersion