修改函数的metadata信息
功能介绍
修改指定的函数的metadata信息。
URI
PUT /v2/{project_id}/fgs/functions/{function_urn}/config
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 参数解释: 租户项目 ID,获取方式请参见获取项目ID。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字组成,且长度为32个字符。 默认取值: 不涉及。 |
| function_urn | 是 | String | 参数解释: 函数的URN,详细解释见FunctionGraph函数模型的描述。 约束限制: 不涉及。 取值范围: 只能由英文字母、数字、下划线、中划线、冒号组成。 默认取值: 不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 参数解释: 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| Content-Type | 是 | String | 参数解释: 消息体的类型(格式)。 约束限制: 不涉及。 取值范围: 只能为application/json。 默认取值: application/json |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| func_name | 是 | String | 参数解释: 函数名称。 约束限制: 不涉及。 取值范围: 可包含字母、数字、下划线和中划线,以大/小写字母开头,以字母或数字结尾,长度不超过60个字符,1~60位。 默认值: 不涉及。 |
| runtime | 是 | String | 参数解释: FunctionGraph函数的运行时,即函数执行环境。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| timeout | 是 | Integer | 参数解释: 函数执行超时时间,超时函数将被强行停止。 约束限制: 不涉及。 取值范围: 范围3~259200秒。 默认取值: 3秒。 |
| handler | 是 | String | 参数解释: 函数执行入口。 规则:xx.xx,必须包含“. ”;自定义镜像函数handler为“-” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 约束限制: 不涉及。 取值范围: 最小长度为3,最大长度128字符。 默认取值: 不涉及。 |
| memory_size | 是 | Integer | 参数解释: 函数消耗的内存,单位MB。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| gpu_memory | 否 | Integer | 参数解释: 函数消耗的显存,只支持自定义运行时与自定义镜像函数配置GPU,单位MB。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| gpu_type | 否 | String | 参数解释: 显卡类型。 约束限制: 需要配置GPU显存。 取值范围: 不涉及。 默认取值: 不涉及。 |
| user_data | 否 | String | 参数解释: 用户自定义的name/value信息。 在函数中使用的参数。 举例:如函数要访问某个主机,可以设置自定义参数:Host={host_ip},总长度不超过4KB。 约束限制: 不涉及。 取值范围: json格式的字符串。 默认取值: 不涉及。 |
| encrypted_user_data | 否 | String | 参数解释: 用户自定义的name/value信息,用于需要加密的配置。 约束限制: 不涉及。 取值范围: json格式的字符串。 默认取值: 不涉及。 |
| xrole | 否 | String | 参数解释: 函数配置委托。需要IAM支持,并在IAM界面创建委托。 约束限制: 当函数需要访问其他服务时,必须提供该字段。配置后用户可以通过函数执行入口方法中的context参数获取具有委托中权限的token、ak、sk,用于访问其他云服务。如果用户函数不访问任何云服务,则不用提供委托名称。 取值范围: 不涉及。 默认取值: 不涉及。 |
| app_xrole | 否 | String | 参数解释: 函数执行委托。可为函数执行单独配置执行委托,这将减小不必要的性能损耗;不单独配置执行委托时,函数执行和函数配置将使用同一委托。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| description | 否 | String | 参数解释: 函数描述。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| func_vpc | 否 | FuncVpc object | 参数解释: 函数vpc配置。需同时为函数配置具有vpc权限的委托。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| peering_cidr | 否 | String | 参数解释: VPC对等连接网段。您可以声明代码中使用到的VPC网段,用以检测是否与服务使用VPC网段冲突。网段间使用分号分隔且不能超过5个。 约束限制: 需要函数开启网络配置功能。 取值范围: 有效的带掩码的ipv4网段。 默认取值: 不涉及。 |
| mount_config | 否 | MountConfig object | 参数解释: 函数挂载配置。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| strategy_config | 否 | StrategyConfig object | 参数解释: 函数策略配置,包括单函数最大实例数,单实例最大并发数。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| status | 否 | Integer | 参数解释: 函数状态。 约束限制: 不涉及。 取值范围: 默认取值: 0。 |
| custom_image | 否 | CustomImage object | 参数解释: 自定义镜像配置。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| extend_config | 否 | String | 参数解释: 函数扩展配置,无效字段。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| initializer_handler | 否 | String | 参数解释: 函数初始化入口,规则:xx.xx,必须包含“. ”。 举例:对于node.js函数:myfunction.initializer,则表示函数的文件名为myfunction.js,初始化的入口函数名为initializer。 约束限制: 当配置初始化函数时,此参数必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
| initializer_timeout | 否 | Integer | 参数解释: 初始化超时时间,超时函数将被强行停止。 约束限制: 当配置初始化函数时,此参数必填。 取值范围: 1-300秒。 默认取值: 不涉及。 |
| pre_stop_handler | 否 | String | 参数解释: 函数预停止函数的入口,规则:xx.xx,必须包含“. ”。 举例:对于node.js函数:myfunction.pre_stop_handler,则表示函数的文件名为myfunction.js,初始化的入口函数名为pre_stop_handler。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| pre_stop_timeout | 否 | Integer | 参数解释: 初始化超时时间,超时函数将被强行停止。 约束限制: 不涉及。 取值范围: 1~90秒。 默认取值: 不涉及。 |
| ephemeral_storage | 否 | Integer | 参数解释: 临时存储大小。默认情况下会为函数的/tmp目录分配512MB的空间。您可以通过临时存储设置将函数的/tmp目录大小调整为10G。 约束限制: 不涉及。 取值范围: 默认取值: 512MB。 |
| enterprise_project_id | 否 | String | 参数解释: 企业项目ID。 约束限制: 在企业用户创建函数时必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
| log_config | 否 | FuncLogConfig object | 参数解释: 函数日志配置。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| network_controller | 否 | NetworkControlConfig object | 参数解释: 函数网络控制配置,控制函数是否只允许某个vpc访问。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| is_stateful_function | 否 | Boolean | 参数解释: 是否支持有状态,如果需要支持,需要固定传参为true。 约束限制: v2版本支持。 取值范围: 默认取值: false。 |
| enable_dynamic_memory | 否 | Boolean | 参数解释: 是否允许动态内存配置。 约束限制: 不涉及。 取值范围: 默认取值: false。 |
| enable_auth_in_header | 否 | Boolean | 参数解释: 是否允许在请求头中添加鉴权信息。 约束限制: 只支持v2版本,并且函数要配置委托。 取值范围: 默认取值: false。 |
| domain_names | 否 | String | 参数解释: 内网域名配置。 约束限制: 函数需要配置vpc。 取值范围: 有效的域名列表。 默认取值: 不涉及。 |
| restore_hook_handler | 否 | String | 参数解释: 函数快照式冷启动Restore Hook入口。 约束限制: 仅支持Java。 取值范围: 必须包含“. ”。如:com.xxx.demo.Test.restoreHook 默认取值: 不涉及。 |
| restore_hook_timeout | 否 | Integer | 参数解释: 快照冷启动Restore Hook的超时时间。 约束限制: 需要配置restore_hook_handler。 取值范围: 1~300秒。 默认取值: 不涉及。 |
| heartbeat_handler | 否 | String | 参数解释: 心跳函数函数的入口。 约束限制: 必须包含“. ”,只支持JAVA运行时配置心跳函数入口需要与函数执行入口在同一文件下。在开启心跳函数配置时,此参数必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
| enable_class_isolation | 否 | Boolean | 参数解释: 类隔离开关。 约束限制: 只支持JAVA运行时配置。开启类隔离后可以支持Kafka转储并提升类加载效率,但也可能会导致某些兼容性问题,请谨慎开启。 取值范围: 默认取值: false。 |
| lts_custom_tag | 否 | Map<String,String> | 参数解释: 自定义日志标签。函数执行时,可以按照自定义标签配置上报标签到云日志服务(LTS),用户可以通过标签对日志进行过滤筛选。 约束限制: 用户需要开通日志功能。 取值范围: 字符串映射对。 默认取值: 不涉及。 |
| enable_lts_log | 否 | Boolean | 参数解释: 是否开启日志。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| user_data_encrypt_kms_key_id | 否 | String | 参数解释: 用于环境变量加密的kms主密钥ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| domain_id | 否 | String | 参数解释: 租户账号id。 取值范围: 不涉及。 |
| namespace | 否 | String | 参数解释: 租户的project id。 取值范围: 不涉及。 |
| vpc_name | 否 | String | 参数解释: 虚拟私有云名称。 取值范围: 不涉及。 |
| vpc_id | 是 | String | 参数解释: 虚拟私有云唯一标识。 取值范围: 不涉及。 |
| subnet_name | 否 | String | 参数解释: 子网名称。 取值范围: 不涉及。 |
| subnet_id | 是 | String | 参数解释: 子网编号。 取值范围: 不涉及。 |
| cidr | 否 | String | 参数解释: 子网掩码。 取值范围: 不涉及。 |
| gateway | 否 | String | 参数解释: 网关。 取值范围: 不涉及。 |
| security_groups | 否 | Array of strings | 参数解释: 安全组。 取值范围: 字符串列表。 |
| is_safety | 否 | Boolean | 参数解释: 是否开启安全访问。开启时,需要您自行配置VPCEP网络但可以提供更安全的VPC连接访问并打通内网域名。注意:开启后无法关闭。 取值范围: |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| mount_user | 是 | MountUser object | 参数解释: 挂载用户信息。 取值范围: 不涉及。 |
| func_mounts | 是 | Array of FuncMount objects | 参数解释: 函数挂载列表。 取值范围: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| user_id | 是 | String | 参数解释: 用户ID。 取值范围: -1~65534的非0整数。 |
| user_group_id | 是 | String | 参数解释: 用户组ID。 取值范围: -1~65534的非0整数。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| mount_type | 是 | String | 参数解释: 挂载类型,func_mounts非空时必选。 取值范围: |
| mount_resource | 是 | String | 参数解释: 挂载资源ID(对应云服务ID),func_mounts非空时必选。 取值范围: 不涉及。 |
| mount_share_path | 否 | String | 参数解释: 远端挂载路径(例如192.168.0.12:/data),如果mount_type为ecs,必选。 取值范围: ecs服务器开放的共享路径。 |
| local_mount_path | 是 | String | 参数解释: 函数访问路径,func_mounts非空时必选。 取值范围: 函数容器中的挂载目录,一般是2层结构。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| concurrency | 是 | Integer | 参数解释: 单函数最大实例数,-1代表该函数实例数无限制 取值范围: |
| concurrent_num | 是 | Integer | 参数解释: 单实例并发数, v2版本支持。 取值范围: [1, 1000] |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| enabled | 否 | Boolean | 参数解释: 是否使用镜像。不使用镜像则以下参数不生效。 取值范围: |
| image | 否 | String | 参数解释: 镜像地址。 取值范围: 不涉及。 |
| command | 否 | String | 参数解释: 启动容器镜像的命令。 取值范围: 不涉及。 |
| args | 否 | String | 参数解释: 启动容器镜像的命令行参数。 取值范围: 不涉及。 |
| working_dir | 否 | String | 参数解释: 镜像容器工作目录。 取值范围: 不涉及。 |
| uid | 否 | String | 参数解释: 镜像容器的用户id。 取值范围: 不涉及。 |
| gid | 否 | String | 参数解释: 镜像容器的用户组id。 取值范围: 不涉及。 |
| is_public | 否 | Boolean | 参数解释: 是否是公共镜像。 取值范围: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| group_name | 否 | String | 参数解释: 函数绑定日志组名。 取值范围: 不涉及。 |
| group_id | 否 | String | 参数解释: 函数绑定日志组ID。 取值范围: 不涉及。 |
| stream_name | 否 | String | 参数解释: 函数绑定日志流名。 取值范围: 不涉及。 |
| stream_id | 否 | String | 参数解释: 函数绑定日志流ID。 取值范围: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| disable_public_network | 否 | Boolean | 参数解释: 禁止公网访问开关。 取值范围: |
| trigger_access_vpcs | 否 | Array of VpcConfig objects | 参数解释: 指定触发函数vpc配置。 取值范围: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| vpc_name | 否 | String | 参数解释: vpc名称。 取值范围: 不涉及。 |
| vpc_id | 否 | String | 参数解释: vpc ID。 取值范围: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| dns | 否 | Array of strings | 参数解释: DNS Server配置。 约束限制: 不涉及。 取值范围: 用户配置的dns地址列表 默认取值: 不涉及。 |
| dns_opts | 否 | Array of strings | 参数解释: DNS选项配置。 约束限制: 不涉及。 取值范围: 用户配置的dns选项 默认取值: 不涉及。 |
| dns_search | 否 | Array of strings | 参数解释: DNS搜索域配置。 约束限制: 不涉及。 取值范围: 用户配置的dns搜索配置 默认取值: 不涉及。 |
响应参数
状态码: 200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| func_id | String | 参数解释: 函数id,唯一标识函数。 取值范围: 不涉及。 |
| resource_id | String | 参数解释: 函数资源唯一标识id。 取值范围: 不涉及。 |
| func_urn | String | 参数解释: 函数的URN(Uniform Resource Name),唯一标识函数。 取值范围: 不涉及。 |
| func_name | String | 参数解释: 函数名称。 取值范围: 不涉及。 |
| domain_id | String | 参数解释: 域名id。 取值范围: 不涉及。 |
| namespace | String | 参数解释: 租户的project id。 取值范围: 不涉及。 |
| project_name | String | 参数解释: 租户的project name。 取值范围: 不涉及。 |
| package | String | 参数解释: 函数所属的分组Package,用于用户针对函数的自定义分组。 取值范围: 不涉及。 |
| runtime | String | 参数解释: FunctionGraph函数的运行时,即函数执行环境。 取值范围: |
| timeout | Integer | 参数解释: 函数执行超时时间,超时函数将被强行停止。 取值范围: 范围3~259200秒。 |
| handler | String | 参数解释: 函数执行入口。 规则:xx.xx,必须包含“. ”;自定义镜像函数handler为“-” 举例:对于node.js函数:myfunction.handler,则表示函数的文件名为myfunction.js,执行的入口函数名为handler。长度不超过128个字符。 取值范围: 最小长度为3,最大长度128字符。 |
| memory_size | Integer | 参数解释: 函数消耗的内存,单位MB。 取值范围: |
| gpu_memory | Integer | 参数解释: 函数消耗的显存,只支持自定义运行时与自定义镜像函数配置GPU,单位MB。 取值范围: 默认取值: 不涉及。 。 |
| cpu | Integer | 参数解释: 函数占用的cpu资源。 单位为millicore(1 core=1000 millicores)。 取值与MemorySize成比例,默认是128M内存占0.1个核(100 millicores)。 取值范围: 不涉及。 |
| code_type | String | 参数解释: 函数代码类型。 取值范围: 取值有5种。 |
| code_url | String | 参数解释: 当CodeType为obs时,该值为函数代码包在OBS上的地址,CodeType为其他值时,该字段为空。 取值范围: obs链接地址。 |
| code_filename | String | 参数解释: 函数的文件名,当CodeType为jar/zip时必须提供该字段,inline和obs不需要提供。 取值范围: 不涉及。 |
| code_size | Long | 参数解释: 函数大小,单位:字节。 取值范围: 不涉及。 |
| user_data | String | 参数解释: 用户自定义的name/value信息。 在函数中使用的参数。 举例:如函数要访问某个主机,可以设置自定义参数:Host={host_ip},总长度不超过4KB。 取值范围: json格式的字符串。 |
| encrypted_user_data | String | 参数解释: 用户自定义的name/value信息,用于需要加密的配置。 取值范围: json格式的字符串。 |
| digest | String | 参数解释: 函数代码SHA512 hash值,用于判断函数是否变化。 取值范围: 不涉及。 |
| version | String | 参数解释: 函数版本号,由系统自动生成,规则:vYYYYMMDD-HHMMSS(v+年月日-时分秒)。 取值范围: 不涉及。 |
| image_name | String | 参数解释: 函数版本的内部标识。 取值范围: 不涉及。 |
| xrole | String | 参数解释: 函数配置委托。需要IAM支持,并在IAM界面创建委托,当函数需要访问其他服务时,必须提供该字段。配置后用户可以通过函数执行入口方法中的context参数获取具有委托中权限的token、ak、sk,用于访问其他云服务。如果用户函数不访问任何云服务,则不用提供委托名称。 取值范围: 不涉及。 |
| app_xrole | String | 参数解释: 函数执行委托。可为函数执行单独配置执行委托,这将减小不必要的性能损耗;不单独配置执行委托时,函数执行和函数配置将使用同一委托。 取值范围: 不涉及。 |
| description | String | 参数解释: 函数描述。 取值范围: 不涉及。 |
| last_modified | String | 参数解释: 函数最后一次更新时间。 取值范围: utc时间。 |
| ephemeral_storage | Integer | 参数解释: 临时存储大小。默认情况下会为函数的/tmp目录分配512MB的空间。您可以通过临时存储设置将函数的/tmp目录大小调整为10G。 取值范围: |
| func_vpc | FuncVpc object | 参数解释: 函数vpc配置。 取值范围: 不涉及。 |
| peering_cidr | String | 参数解释: VPC对等连接网段。您可以声明代码中使用到的VPC网段,用以检测是否与服务使用VPC网段冲突。 取值范围: 逗号分隔的ipv4网段,一次配置不超过5个。 |
| mount_config | MountConfig object | 参数解释: 函数挂载配置。 取值范围: 不涉及。 |
| strategy_config | StrategyConfig object | 参数解释: 函数策略配置,包括单函数最大实例数,单实例最大并发数。 取值范围: 不涉及。 |
| status | Integer | 参数解释: 函数状态。 取值范围: |
| dependencies | Array of Dependency objects | 参数解释: 函数依赖代码包列表。 取值范围: 不涉及。 |
| initializer_handler | String | 参数解释: 函数初始化入口,规则:xx.xx,必须包含“. ”。当配置初始化函数时,此参数必填。 举例:对于node.js函数:myfunction.initializer,则表示函数的文件名为myfunction.js,初始化的入 口函数名为initializer。 取值范围: 不涉及。 |
| initializer_timeout | Integer | 参数解释: 初始化超时时间,超时函数将被强行停止。当配置初始化函数时,此参数必填。 取值范围: 1-300秒。 |
| pre_stop_handler | String | 函数预停止函数的入口,规则:xx.xx,必须包含“. ”。 举例:对于node.js函数:myfunction.pre_stop_handler,则表示函数的文件名为myfunction.js,初始化的入口函数名为pre_stop_handler。 |
| pre_stop_timeout | Integer | 参数解释: 初始化超时时间,超时函数将被强行停止。 取值范围: 1~90秒。 |
| enterprise_project_id | String | 参数解释: 企业项目ID,在企业用户创建函数时必填。 取值范围: 不涉及。 |
| long_time | Boolean | 参数解释: 是否允许进行长时间超时设置。 取值范围: |
| log_group_id | String | 参数解释: 自定义日志查询组id。 取值范围: 不涉及。 |
| log_stream_id | String | 参数解释: 自定义日志查询流id。 取值范围: 不涉及。 |
| type | String | 参数解释: 函数版本。 取值范围: |
| enable_cloud_debug | String | 参数解释: 适配CloudDebug场景,是否开启云调试(已废弃) 取值范围: 不涉及。 |
| enable_dynamic_memory | Boolean | 参数解释: 是否支持配置动态内存,v2版本支持。 取值范围: |
| is_stateful_function | Boolean | 参数解释: 是否支持有状态,v2版本支持。 取值范围: |
| domain_names | String | 参数解释: 函数配置的需要支持域名解析的内网域名。 取值范围: 有效的域名列表。 |
| enable_auth_in_header | Boolean | 参数解释: 是否允许在请求头中添加鉴权信息,只支持自定义镜像函数。 取值范围: |
| custom_image | CustomImage object | 参数解释: 自定义镜像配置。 取值范围: 不涉及。 |
| is_return_stream | Boolean | 参数解释: 是否返回流式数据(已废弃)。 取值范围: 不涉及。 |
| dns_config | DNSConfig object | 参数解释: 函数dns配置。 取值范围: 不涉及。 |
| lts_custom_tag | Map<String,String> | 参数解释 自定义日志标签。函数执行时,可以按照自定义标签配置上报标签到云日志服务(LTS),用户可以通过标 签对日志进行过滤筛选。 取值范围: 字符串映射对。 |
| code_encrypt_kms_key_id | String | 参数解释: 用于用户代码加密的kms主密钥ID。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| domain_id | String | 参数解释: 租户账号id。 取值范围: 不涉及。 |
| namespace | String | 参数解释: 租户的project id。 取值范围: 不涉及。 |
| vpc_name | String | 参数解释: 虚拟私有云名称。 取值范围: 不涉及。 |
| vpc_id | String | 参数解释: 虚拟私有云唯一标识。 取值范围: 不涉及。 |
| subnet_name | String | 参数解释: 子网名称。 取值范围: 不涉及。 |
| subnet_id | String | 参数解释: 子网编号。 取值范围: 不涉及。 |
| cidr | String | 参数解释: 子网掩码。 取值范围: 不涉及。 |
| gateway | String | 参数解释: 网关。 取值范围: 不涉及。 |
| security_groups | Array of strings | 参数解释: 安全组 取值范围: 字符串列表 |
| is_safety | Boolean | 参数解释: 是否开启安全访问。开启时,需要您自行配置VPCEP网络但可以提供更安全的VPC连接访问并打通内网域名。注意:开启后无法关闭。 取值范围: |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| mount_user | MountUser object | 参数解释: 挂载用户信息。 取值范围: 不涉及。 |
| func_mounts | Array of FuncMount objects | 参数解释: 函数挂载列表。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| user_id | String | 参数解释: 用户ID。 取值范围: -1~65534的非0整数。 |
| user_group_id | String | 参数解释: 用户组ID。 取值范围: -1~65534的非0整数。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| mount_type | String | 参数解释: 挂载类型,func_mounts非空时必选。 取值范围: |
| mount_resource | String | 参数解释: 挂载资源ID(对应云服务ID),func_mounts非空时必选。 取值范围: 不涉及。 |
| mount_share_path | String | 参数解释: 远端挂载路径(例如192.168.0.12:/data),如果mount_type为ecs,必选。 取值范围: ecs服务器开放的共享路径。 |
| local_mount_path | String | 参数解释: 函数访问路径,func_mounts非空时必选。 取值范围: 函数容器中的挂载目录,一般是2层结构。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| concurrency | Integer | 参数解释: 单函数最大实例数,-1代表该函数实例数无限制 取值范围: |
| concurrent_num | Integer | 参数解释: 单实例并发数, v2版本支持。 取值范围: [1, 1000] |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 依赖包版本ID。 取值范围: 不涉及。 |
| owner | String | 参数解释: 依赖包属主的domainId。 取值范围: 不涉及。 |
| link | String | 参数解释: 依赖包在OBS上的链接。 取值范围: obs链接地址 |
| runtime | String | 参数解释: FunctionGraph函数的运行时,即函数执行环境。 取值范围: |
| etag | String | 参数解释: 依赖包的md5值 取值范围: 不涉及。 |
| size | Long | 参数解释: 依赖包大小。 取值范围: 不涉及。 |
| name | String | 参数解释: 依赖包名称。 取值范围: 不涉及。 |
| description | String | 参数解释: 依赖包描述。 取值范围: 不涉及。 |
| file_name | String | 参数解释: 依赖包文件名,如果创建方式为zip时必填。 取值范围: 不涉及。 |
| version | Long | 参数解释: 依赖包版本编号。 取值范围: 不涉及。 |
| dep_id | String | 参数解释: 依赖包ID 取值范围: 不涉及。 |
| last_modified | String | 参数解释: 函数最后一次更新时间。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| enabled | Boolean | 参数解释: 是否使用镜像。不使用镜像则以下参数不生效。 取值范围: |
| image | String | 参数解释: 镜像地址。 取值范围: 不涉及。 |
| command | String | 参数解释: 启动容器镜像的命令。 取值范围: 不涉及。 |
| args | String | 参数解释: 启动容器镜像的命令行参数。 取值范围: 不涉及。 |
| working_dir | String | 参数解释: 镜像容器工作目录。 取值范围: 不涉及。 |
| uid | String | 参数解释: 镜像容器的用户id。 取值范围: 不涉及。 |
| gid | String | 参数解释: 镜像容器的用户组id。 取值范围: 不涉及。 |
| is_public | Boolean | 参数解释: 是否是公共镜像。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| dns | Array of strings | 参数解释: DNS Server配置。 约束限制: 不涉及。 取值范围: 用户配置的dns地址列表 默认取值: 不涉及。 |
| dns_opts | Array of strings | 参数解释: DNS选项配置。 约束限制: 不涉及。 取值范围: 用户配置的dns选项 默认取值: 不涉及。 |
| dns_search | Array of strings | 参数解释: DNS搜索域配置。 约束限制: 不涉及。 取值范围: 用户配置的dns搜索配置 默认取值: 不涉及。 |
状态码: 400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码 |
| error_msg | String | 错误信息 |
状态码: 401
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码 |
| error_msg | String | 错误信息 |
状态码: 403
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码 |
| error_msg | String | 错误信息 |
状态码: 404
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码 |
| error_msg | String | 错误信息 |
状态码: 500
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码 |
| error_msg | String | 错误信息 |
请求示例
- 修改名为fgsTest的Nodejs函数配置信息,将内存大小改为768MB,超时时间设为40s,添加环境变量host,添加磁盘挂载。
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/config { "func_name" : "fgsTest", "handler" : "index.handler", "memory_size" : 768, "user_data" : "{\"host\":\"192.168.0.1\"}", "runtime" : "Node.js6.10", "mount_config" : { "mount_user" : { "user_id" : -1, "user_group_id" : -1 }, "func_mounts" : [ { "mount_resource" : "268xxx-d3xx-4cxx-98xx-d1dbxxx", "local_mount_path" : "/mnt", "mount_type" : "sfsTurbo" } ] }, "timeout" : 40 } - 修改自定义运行时函数GPU配置,将GPU显存设置为1GB,内存大小设置为4GB。
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/config { "func_name" : "test_GPU", "handler" : "bootstrap", "memory_size" : 4096, "runtime" : "Custom", "timeout" : 40, "gpu_memory" : 1024 }
- 修改自定义镜像类型函数的镜像配置。
{ "func_name": "test_function", "handler": "-", "memory_size": 128, "runtime": "Custom Image", "timeout": 3, "xrole": "xxx", "custom_image": { "enabled": true, "image": "swr.xxx.example.com/xxx/xxx:xxx", "working_dir": "/" } }
响应示例
状态码: 200
OK
{
"func_id" : "0d075978-5a54-4ee1-8e24-ff5bd070xxxx",
"resource_id" : "0d075978-5a54-4ee1-8e24-ff5bd070xxxx:test",
"func_urn" : "urn:fss:xxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test",
"func_name" : "test",
"domain_id" : "14ee2e3501124efcbca7998baa24xxxx",
"namespace" : "46b6f338fc3445b8846c71dfb1fbxxxx",
"project_name" : "xxxxxx",
"package" : "default",
"runtime" : "Node.js6.10",
"timeout" : 3,
"handler" : "fssExampleCsharp2.1::fssExampleCsharp21.Program::MyFunc",
"memory_size" : 128,
"cpu" : 300,
"code_type" : "inline",
"code_filename" : "index.js",
"code_size" : 272,
"user_data" : "{\"host\":\"192.168.0.1\"}",
"mount_config" : {
"mount_user" : {
"user_id" : -1,
"user_group_id" : -1
},
"func_mounts" : [ {
"mount_resource" : "268xxx-d3xx-4cxx-98xx-d1dbxxx",
"local_mount_path" : "/mnt",
"mount_type" : "sfsTurbo"
} ]
},
"digest" : "faa825575c45437cddd4e369bea69893bcbe195d478178462ad90984fe72993f3f59d15f41c5373f807f3e05fb9af322c55dabeb16565c386e402413458e6068",
"version" : "latest",
"ephemeral_storage" : 512,
"image_name" : "latest-191025153727@zehht",
"last_modified" : "2019-10-25 15:37:27",
"strategy_config" : {
"concurrency" : 0
}
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | OK |
| 400 | Bad Request 请求错误。 |
| 401 | Unauthorized 鉴权失败。 |
| 403 | Forbidden 没有操作权限。 |
| 404 | Not Found 找不到资源。 |
| 500 | Internal Server Error 服务内部错误。 |
错误码
请参见错误码。