Function
This class encapsulates and extends the ROS resource type ALIYUN::FC::Function, which is used to create a function.
Functions must be associated with services. All functions of a service share the same attributes as the service, such as service authorization and log configurations.
Initializers
import ros_cdk_fc
ros_cdk_fc.Function(
scope: Construct,
id: str,
function_name: typing.Union[str, IResolvable],
handler: typing.Union[str, IResolvable],
runtime: typing.Union[str, IResolvable],
service_name: typing.Union[str, IResolvable],
async_configuration: typing.Union[IResolvable, AsyncConfigurationProperty] = None,
ca_port: typing.Union[typing.Union[int, float], IResolvable] = None,
code: typing.Union[IResolvable, CodeProperty] = None,
cpu: typing.Union[typing.Union[int, float], IResolvable] = None,
custom_container_config: typing.Union[IResolvable, CustomContainerConfigProperty] = None,
custom_dns: typing.Union[IResolvable, CustomDNSProperty] = None,
custom_health_check_config: typing.Union[IResolvable, CustomHealthCheckConfigProperty] = None,
custom_runtime_config: typing.Union[IResolvable, CustomRuntimeConfigProperty] = None,
description: typing.Union[str, IResolvable] = None,
disk_size: typing.Union[typing.Union[int, float], IResolvable] = None,
environment_variables: typing.Union[IResolvable, typing.Mapping[typing.Any]] = None,
gpu_memory_size: typing.Union[typing.Union[int, float], IResolvable] = None,
initialization_timeout: typing.Union[typing.Union[int, float], IResolvable] = None,
initializer: typing.Union[str, IResolvable] = None,
instance_concurrency: typing.Union[typing.Union[int, float], IResolvable] = None,
instance_lifecycle_config: typing.Union[IResolvable, InstanceLifecycleConfigProperty] = None,
instance_soft_concurrency: typing.Union[typing.Union[int, float], IResolvable] = None,
instance_type: typing.Union[str, IResolvable] = None,
memory_size: typing.Union[typing.Union[int, float], IResolvable] = None,
timeout: typing.Union[typing.Union[int, float], IResolvable] = None,
enable_resource_property_constraint: bool = None
)
| Name | Type | Description |
|---|---|---|
scope |
ros_cdk_core.Construct |
No description. |
id |
str |
No description. |
function_name |
typing.Union[str, ros_cdk_core.IResolvable] |
Property functionName: Function name. |
handler |
typing.Union[str, ros_cdk_core.IResolvable] |
Property handler: The function execution entry point. |
runtime |
typing.Union[str, ros_cdk_core.IResolvable] |
Property runtime: The function runtime environment. |
service_name |
typing.Union[str, ros_cdk_core.IResolvable] |
Property serviceName: Service name. |
async_configuration |
typing.Union[ros_cdk_core.IResolvable, AsyncConfigurationProperty] |
Property asyncConfiguration: Configuration of asynchronous function calls. |
ca_port |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property caPort: Custom runtime and custom container runtime dedicated fields, which represent the port that the started custom http server listens to. |
code |
typing.Union[ros_cdk_core.IResolvable, CodeProperty] |
Property code: The code that contains the function implementation. |
cpu |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property cpu: The number of vCPUs of the function. |
custom_container_config |
typing.Union[ros_cdk_core.IResolvable, CustomContainerConfigProperty] |
Property customContainerConfig: Custom container runtime related configuration. |
custom_dns |
typing.Union[ros_cdk_core.IResolvable, CustomDNSProperty] |
Property customDns: The custom DNS configurations of the function. |
custom_health_check_config |
typing.Union[ros_cdk_core.IResolvable, CustomHealthCheckConfigProperty] |
Property customHealthCheckConfig: The health check configurations for the custom runtime and custom container. |
custom_runtime_config |
typing.Union[ros_cdk_core.IResolvable, CustomRuntimeConfigProperty] |
Property customRuntimeConfig: Custom runtime related configuration. |
description |
typing.Union[str, ros_cdk_core.IResolvable] |
Property description: Function description. |
disk_size |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property diskSize: The disk size of the function. |
environment_variables |
typing.Union[ros_cdk_core.IResolvable, typing.Mapping[typing.Any]] |
Property environmentVariables: The environment variable set for the function, you can get the value of the environment variable in the function. |
gpu_memory_size |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property gpuMemorySize: The GPU memory capacity for the function. |
initialization_timeout |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property initializationTimeout: the max execution time of the initializer, in second. |
initializer |
typing.Union[str, ros_cdk_core.IResolvable] |
Property initializer: the entry point of the initializer. |
instance_concurrency |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property instanceConcurrency: Function instance concurrency. |
instance_lifecycle_config |
typing.Union[ros_cdk_core.IResolvable, InstanceLifecycleConfigProperty] |
Property instanceLifecycleConfig: The configuration of the instance lifecycle function. |
instance_soft_concurrency |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property instanceSoftConcurrency: The soft concurrency of the instance. |
instance_type |
typing.Union[str, ros_cdk_core.IResolvable] |
Property instanceType: Instance type. |
memory_size |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property memorySize: The amount of memory that’s used to run function, in MB. |
timeout |
typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] |
Property timeout: The maximum time duration a function can run, in seconds. |
enable_resource_property_constraint |
bool |
No description. |
scopeRequired
- Type: ros_cdk_core.Construct
idRequired
- Type: str
function_nameRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property functionName: Function name.
handlerRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property handler: The function execution entry point.
runtimeRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property runtime: The function runtime environment.
Supporting nodejs16、nodejs14、nodejs12、nodejs10、nodejs8、nodejs6、nodejs4.4、python3.10、python3.9、python3、python2.7、java11、java8、go1、php7.2、dotnetcore3.1、dotnetcore2.1、custom.debian10、custom和custom-container and so on
service_nameRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property serviceName: Service name.
async_configurationOptional
- Type: typing.Union[ros_cdk_core.IResolvable, AsyncConfigurationProperty]
Property asyncConfiguration: Configuration of asynchronous function calls.
ca_portOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property caPort: Custom runtime and custom container runtime dedicated fields, which represent the port that the started custom http server listens to.
The default value is 9000
codeOptional
- Type: typing.Union[ros_cdk_core.IResolvable, CodeProperty]
Property code: The code that contains the function implementation.
cpuOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property cpu: The number of vCPUs of the function.
The value must be a multiple of 0.05.
custom_container_configOptional
- Type: typing.Union[ros_cdk_core.IResolvable, CustomContainerConfigProperty]
Property customContainerConfig: Custom container runtime related configuration.
After configuration, the function can be replaced with a custom container to execute the function
custom_dnsOptional
- Type: typing.Union[ros_cdk_core.IResolvable, CustomDNSProperty]
Property customDns: The custom DNS configurations of the function.
custom_health_check_configOptional
- Type: typing.Union[ros_cdk_core.IResolvable, CustomHealthCheckConfigProperty]
Property customHealthCheckConfig: The health check configurations for the custom runtime and custom container.
custom_runtime_configOptional
- Type: typing.Union[ros_cdk_core.IResolvable, CustomRuntimeConfigProperty]
Property customRuntimeConfig: Custom runtime related configuration.
descriptionOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property description: Function description.
disk_sizeOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property diskSize: The disk size of the function.
Unit: MB. Valid values: 512 and 10240.
environment_variablesOptional
- Type: typing.Union[ros_cdk_core.IResolvable, typing.Mapping[typing.Any]]
Property environmentVariables: The environment variable set for the function, you can get the value of the environment variable in the function.
gpu_memory_sizeOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property gpuMemorySize: The GPU memory capacity for the function.
Unit: MB. The value must be a multiple of 1,024.
initialization_timeoutOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property initializationTimeout: the max execution time of the initializer, in second.
initializerOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property initializer: the entry point of the initializer.
instance_concurrencyOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property instanceConcurrency: Function instance concurrency.
Value can be between 1 to 100.
instance_lifecycle_configOptional
- Type: typing.Union[ros_cdk_core.IResolvable, InstanceLifecycleConfigProperty]
Property instanceLifecycleConfig: The configuration of the instance lifecycle function.
instance_soft_concurrencyOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property instanceSoftConcurrency: The soft concurrency of the instance.
You can use this parameter to implement graceful scale-up of instances. If the number of concurrent requests on an instance is greater than the value of soft concurrency, an instance scale-up is triggered. For example, if your instance requires a long time to start, you can specify a suitable soft concurrency to start the instance in advance.The value must be less than or equal to that of the instanceConcurrency parameter.
instance_typeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property instanceType: Instance type.
Value:e1: flexible instance. Memory size between 128 and 3072c1: performance instance. Memory size allow values are 4096, 8192, 16384 and 32768
memory_sizeOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property memorySize: The amount of memory that’s used to run function, in MB.
Function Compute uses this value to allocate CPU resources proportionally. Defaults to 128 MB. It can be multiple of 64 MB and between 128 MB and 3072 MB.
timeoutOptional
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
Property timeout: The maximum time duration a function can run, in seconds.
After which Function Compute terminates the execution. Defaults to 3 seconds, and can be between 1 to 86400 seconds.
enable_resource_property_constraintOptional
- Type: bool
Methods
| Name | Description |
|---|---|
to_string |
Returns a string representation of this construct. |
synthesize |
Allows this construct to emit artifacts into the cloud assembly during synthesis. |
add_condition |
No description. |
add_count |
No description. |
add_dependency |
No description. |
add_resource_desc |
No description. |
apply_removal_policy |
No description. |
get_att |
No description. |
set_metadata |
No description. |
code_from_asset |
Loads the fcFunction code from a local disk path. |
code_from_bucket |
Function handler code as an OSS object. |
code_from_inline |
Inline code for FC fcFunction handler. |
to_string
def to_string() -> str
Returns a string representation of this construct.
synthesize
def synthesize(
session: ISynthesisSession
) -> None
Allows this construct to emit artifacts into the cloud assembly during synthesis.
This method is usually implemented by framework-level constructs such as Stack and Asset
as they participate in synthesizing the cloud assembly.
- Type: ros_cdk_core.ISynthesisSession
The synthesis session.
add_condition
def add_condition(
condition: RosCondition
) -> None
- Type: ros_cdk_core.RosCondition
add_count
def add_count(
count: typing.Union[typing.Union[int, float], IResolvable]
) -> None
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
add_dependency
def add_dependency(
resource: Resource
) -> None
- Type: ros_cdk_core.Resource
add_resource_desc
def add_resource_desc(
desc: str
) -> None
- Type: str
apply_removal_policy
def apply_removal_policy(
policy: RemovalPolicy
) -> None
- Type: ros_cdk_core.RemovalPolicy
get_att
def get_att(
name: str
) -> IResolvable
- Type: str
set_metadata
def set_metadata(
key: str,
value: typing.Any
) -> None
- Type: str
- Type: typing.Any
code_from_asset
def code_from_asset(
path: str
) -> None
Loads the fcFunction code from a local disk path.
- Type: str
Either a directory with the Lambda code bundle or a .zip file.
code_from_bucket
def code_from_bucket(
bucket: Bucket,
key: str
) -> None
Function handler code as an OSS object.
- Type: ros_cdk_oss.Bucket
The OSS bucket.
- Type: str
The object key.
code_from_inline
def code_from_inline(
code: str
) -> None
Inline code for FC fcFunction handler.
- Type: str
The actual handler code (limited to 4KiB).
Static Functions
| Name | Description |
|---|---|
is_construct |
Return whether the given object is a Construct. |
is_construct
import ros_cdk_fc
ros_cdk_fc.Function.is_construct(
x: typing.Any
)
Return whether the given object is a Construct.
- Type: typing.Any
Properties
| Name | Type | Description |
|---|---|---|
node |
ros_cdk_core.ConstructNode |
The construct tree node associated with this construct. |
ref |
str |
No description. |
stack |
ros_cdk_core.Stack |
The stack in which this resource is defined. |
resource |
ros_cdk_core.RosResource |
No description. |
attr_arn |
ros_cdk_core.IResolvable |
Attribute ARN: The ARN for ALIYUN::ROS::CustomResource. |
attr_function_id |
ros_cdk_core.IResolvable |
Attribute FunctionId: The function ID. |
attr_function_name |
ros_cdk_core.IResolvable |
Attribute FunctionName: The function name. |
attr_service_id |
ros_cdk_core.IResolvable |
Attribute ServiceId: The service ID. |
attr_service_name |
ros_cdk_core.IResolvable |
Attribute ServiceName: The service name. |
nodeRequired
node: ConstructNode
- Type: ros_cdk_core.ConstructNode
The construct tree node associated with this construct.
refRequired
ref: str
- Type: str
stackRequired
stack: Stack
- Type: ros_cdk_core.Stack
The stack in which this resource is defined.
resourceOptional
resource: RosResource
- Type: ros_cdk_core.RosResource
attr_arnRequired
attr_arn: IResolvable
- Type: ros_cdk_core.IResolvable
Attribute ARN: The ARN for ALIYUN::ROS::CustomResource.
attr_function_idRequired
attr_function_id: IResolvable
- Type: ros_cdk_core.IResolvable
Attribute FunctionId: The function ID.
attr_function_nameRequired
attr_function_name: IResolvable
- Type: ros_cdk_core.IResolvable
Attribute FunctionName: The function name.
attr_service_idRequired
attr_service_id: IResolvable
- Type: ros_cdk_core.IResolvable
Attribute ServiceId: The service ID.
attr_service_nameRequired
attr_service_name: IResolvable
- Type: ros_cdk_core.IResolvable
Attribute ServiceName: The service name.