Update Distribution With Staging Config
cloudfront_update_distribution_with_staging_config | R Documentation |
Copies the staging distribution's configuration to its corresponding primary distribution¶
Description¶
Copies the staging distribution's configuration to its corresponding
primary distribution. The primary distribution retains its Aliases
(also known as alternate domain names or CNAMEs) and
ContinuousDeploymentPolicyId
value, but otherwise its configuration is
overwritten to match the staging distribution.
You can use this operation in a continuous deployment workflow after you have tested configuration changes on the staging distribution. After using a continuous deployment policy to move a portion of your domain name's traffic to the staging distribution and verifying that it works as intended, you can use this operation to copy the staging distribution's configuration to the primary distribution. This action will disable the continuous deployment policy and move your domain's traffic back to the primary distribution.
This API operation requires the following IAM permissions:
-
get_distribution
-
update_distribution
Usage¶
Arguments¶
Id
[required] The identifier of the primary distribution to which you are copying a staging distribution's configuration.
StagingDistributionId
The identifier of the staging distribution whose configuration you are copying to the primary distribution.
IfMatch
The current versions (
ETag
values) of both primary and staging distributions. Provide these in the following format:<primary ETag>, <staging ETag>
Value¶
A list with the following syntax:
list(
Distribution = list(
Id = "string",
ARN = "string",
Status = "string",
LastModifiedTime = as.POSIXct(
"2015-01-01"
),
InProgressInvalidationBatches = 123,
DomainName = "string",
ActiveTrustedSigners = list(
Enabled = TRUE|FALSE,
Quantity = 123,
Items = list(
list(
AwsAccountNumber = "string",
KeyPairIds = list(
Quantity = 123,
Items = list(
"string"
)
)
)
)
),
ActiveTrustedKeyGroups = list(
Enabled = TRUE|FALSE,
Quantity = 123,
Items = list(
list(
KeyGroupId = "string",
KeyPairIds = list(
Quantity = 123,
Items = list(
"string"
)
)
)
)
),
DistributionConfig = list(
CallerReference = "string",
Aliases = list(
Quantity = 123,
Items = list(
"string"
)
),
DefaultRootObject = "string",
Origins = list(
Quantity = 123,
Items = list(
list(
Id = "string",
DomainName = "string",
OriginPath = "string",
CustomHeaders = list(
Quantity = 123,
Items = list(
list(
HeaderName = "string",
HeaderValue = "string"
)
)
),
S3OriginConfig = list(
OriginAccessIdentity = "string"
),
CustomOriginConfig = list(
HTTPPort = 123,
HTTPSPort = 123,
OriginProtocolPolicy = "http-only"|"match-viewer"|"https-only",
OriginSslProtocols = list(
Quantity = 123,
Items = list(
"SSLv3"|"TLSv1"|"TLSv1.1"|"TLSv1.2"
)
),
OriginReadTimeout = 123,
OriginKeepaliveTimeout = 123
),
ConnectionAttempts = 123,
ConnectionTimeout = 123,
OriginShield = list(
Enabled = TRUE|FALSE,
OriginShieldRegion = "string"
),
OriginAccessControlId = "string"
)
)
),
OriginGroups = list(
Quantity = 123,
Items = list(
list(
Id = "string",
FailoverCriteria = list(
StatusCodes = list(
Quantity = 123,
Items = list(
123
)
)
),
Members = list(
Quantity = 123,
Items = list(
list(
OriginId = "string"
)
)
)
)
)
),
DefaultCacheBehavior = list(
TargetOriginId = "string",
TrustedSigners = list(
Enabled = TRUE|FALSE,
Quantity = 123,
Items = list(
"string"
)
),
TrustedKeyGroups = list(
Enabled = TRUE|FALSE,
Quantity = 123,
Items = list(
"string"
)
),
ViewerProtocolPolicy = "allow-all"|"https-only"|"redirect-to-https",
AllowedMethods = list(
Quantity = 123,
Items = list(
"GET"|"HEAD"|"POST"|"PUT"|"PATCH"|"OPTIONS"|"DELETE"
),
CachedMethods = list(
Quantity = 123,
Items = list(
"GET"|"HEAD"|"POST"|"PUT"|"PATCH"|"OPTIONS"|"DELETE"
)
)
),
SmoothStreaming = TRUE|FALSE,
Compress = TRUE|FALSE,
LambdaFunctionAssociations = list(
Quantity = 123,
Items = list(
list(
LambdaFunctionARN = "string",
EventType = "viewer-request"|"viewer-response"|"origin-request"|"origin-response",
IncludeBody = TRUE|FALSE
)
)
),
FunctionAssociations = list(
Quantity = 123,
Items = list(
list(
FunctionARN = "string",
EventType = "viewer-request"|"viewer-response"|"origin-request"|"origin-response"
)
)
),
FieldLevelEncryptionId = "string",
RealtimeLogConfigArn = "string",
CachePolicyId = "string",
OriginRequestPolicyId = "string",
ResponseHeadersPolicyId = "string",
ForwardedValues = list(
QueryString = TRUE|FALSE,
Cookies = list(
Forward = "none"|"whitelist"|"all",
WhitelistedNames = list(
Quantity = 123,
Items = list(
"string"
)
)
),
Headers = list(
Quantity = 123,
Items = list(
"string"
)
),
QueryStringCacheKeys = list(
Quantity = 123,
Items = list(
"string"
)
)
),
MinTTL = 123,
DefaultTTL = 123,
MaxTTL = 123
),
CacheBehaviors = list(
Quantity = 123,
Items = list(
list(
PathPattern = "string",
TargetOriginId = "string",
TrustedSigners = list(
Enabled = TRUE|FALSE,
Quantity = 123,
Items = list(
"string"
)
),
TrustedKeyGroups = list(
Enabled = TRUE|FALSE,
Quantity = 123,
Items = list(
"string"
)
),
ViewerProtocolPolicy = "allow-all"|"https-only"|"redirect-to-https",
AllowedMethods = list(
Quantity = 123,
Items = list(
"GET"|"HEAD"|"POST"|"PUT"|"PATCH"|"OPTIONS"|"DELETE"
),
CachedMethods = list(
Quantity = 123,
Items = list(
"GET"|"HEAD"|"POST"|"PUT"|"PATCH"|"OPTIONS"|"DELETE"
)
)
),
SmoothStreaming = TRUE|FALSE,
Compress = TRUE|FALSE,
LambdaFunctionAssociations = list(
Quantity = 123,
Items = list(
list(
LambdaFunctionARN = "string",
EventType = "viewer-request"|"viewer-response"|"origin-request"|"origin-response",
IncludeBody = TRUE|FALSE
)
)
),
FunctionAssociations = list(
Quantity = 123,
Items = list(
list(
FunctionARN = "string",
EventType = "viewer-request"|"viewer-response"|"origin-request"|"origin-response"
)
)
),
FieldLevelEncryptionId = "string",
RealtimeLogConfigArn = "string",
CachePolicyId = "string",
OriginRequestPolicyId = "string",
ResponseHeadersPolicyId = "string",
ForwardedValues = list(
QueryString = TRUE|FALSE,
Cookies = list(
Forward = "none"|"whitelist"|"all",
WhitelistedNames = list(
Quantity = 123,
Items = list(
"string"
)
)
),
Headers = list(
Quantity = 123,
Items = list(
"string"
)
),
QueryStringCacheKeys = list(
Quantity = 123,
Items = list(
"string"
)
)
),
MinTTL = 123,
DefaultTTL = 123,
MaxTTL = 123
)
)
),
CustomErrorResponses = list(
Quantity = 123,
Items = list(
list(
ErrorCode = 123,
ResponsePagePath = "string",
ResponseCode = "string",
ErrorCachingMinTTL = 123
)
)
),
Comment = "string",
Logging = list(
Enabled = TRUE|FALSE,
IncludeCookies = TRUE|FALSE,
Bucket = "string",
Prefix = "string"
),
PriceClass = "PriceClass_100"|"PriceClass_200"|"PriceClass_All",
Enabled = TRUE|FALSE,
ViewerCertificate = list(
CloudFrontDefaultCertificate = TRUE|FALSE,
IAMCertificateId = "string",
ACMCertificateArn = "string",
SSLSupportMethod = "sni-only"|"vip"|"static-ip",
MinimumProtocolVersion = "SSLv3"|"TLSv1"|"TLSv1_2016"|"TLSv1.1_2016"|"TLSv1.2_2018"|"TLSv1.2_2019"|"TLSv1.2_2021",
Certificate = "string",
CertificateSource = "cloudfront"|"iam"|"acm"
),
Restrictions = list(
GeoRestriction = list(
RestrictionType = "blacklist"|"whitelist"|"none",
Quantity = 123,
Items = list(
"string"
)
)
),
WebACLId = "string",
HttpVersion = "http1.1"|"http2"|"http3"|"http2and3",
IsIPV6Enabled = TRUE|FALSE,
ContinuousDeploymentPolicyId = "string",
Staging = TRUE|FALSE
),
AliasICPRecordals = list(
list(
CNAME = "string",
ICPRecordalStatus = "APPROVED"|"SUSPENDED"|"PENDING"
)
)
),
ETag = "string"
)