create_function
(**kwargs)¶Creates a CloudFront function.
To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function.
When you create a function, it's in the DEVELOPMENT
stage. In this stage, you can test the function with TestFunction
, and update it with UpdateFunction
.
When you're ready to use your function with a CloudFront distribution, use PublishFunction
to copy the function from the DEVELOPMENT
stage to LIVE
. When it's live, you can attach the function to a distribution's cache behavior, using the function's ARN.
See also: AWS API Documentation
Request Syntax
response = client.create_function(
Name='string',
FunctionConfig={
'Comment': 'string',
'Runtime': 'cloudfront-js-1.0'
},
FunctionCode=b'bytes'
)
[REQUIRED]
A name to identify the function.
[REQUIRED]
Configuration information about the function, including an optional comment and the function's runtime.
A comment to describe the function.
The function's runtime environment. The only valid value is cloudfront-js-1.0
.
[REQUIRED]
The function code. For more information about writing a CloudFront function, see Writing function code for CloudFront Functions in the Amazon CloudFront Developer Guide .
dict
Response Syntax
{
'FunctionSummary': {
'Name': 'string',
'Status': 'string',
'FunctionConfig': {
'Comment': 'string',
'Runtime': 'cloudfront-js-1.0'
},
'FunctionMetadata': {
'FunctionARN': 'string',
'Stage': 'DEVELOPMENT'|'LIVE',
'CreatedTime': datetime(2015, 1, 1),
'LastModifiedTime': datetime(2015, 1, 1)
}
},
'Location': 'string',
'ETag': 'string'
}
Response Structure
(dict) --
FunctionSummary (dict) --
Contains configuration information and metadata about a CloudFront function.
Name (string) --
The name of the CloudFront function.
Status (string) --
The status of the CloudFront function.
FunctionConfig (dict) --
Contains configuration information about a CloudFront function.
Comment (string) --
A comment to describe the function.
Runtime (string) --
The function's runtime environment. The only valid value is cloudfront-js-1.0
.
FunctionMetadata (dict) --
Contains metadata about a CloudFront function.
FunctionARN (string) --
The Amazon Resource Name (ARN) of the function. The ARN uniquely identifies the function.
Stage (string) --
The stage that the function is in, either DEVELOPMENT
or LIVE
.
When a function is in the DEVELOPMENT
stage, you can test the function with TestFunction
, and update it with UpdateFunction
.
When a function is in the LIVE
stage, you can attach the function to a distribution's cache behavior, using the function's ARN.
CreatedTime (datetime) --
The date and time when the function was created.
LastModifiedTime (datetime) --
The date and time when the function was most recently updated.
Location (string) --
The URL of the CloudFront function. Use the URL to manage the function with the CloudFront API.
ETag (string) --
The version identifier for the current version of the CloudFront function.
Exceptions
CloudFront.Client.exceptions.TooManyFunctions
CloudFront.Client.exceptions.FunctionAlreadyExists
CloudFront.Client.exceptions.FunctionSizeLimitExceeded
CloudFront.Client.exceptions.InvalidArgument
CloudFront.Client.exceptions.UnsupportedOperation