
# 更新应用部署
#### 功能介绍
更新应用部署相关信息。
#### URI
PUT /v3/{project_id}/ai-mgr/deployments/{deployment_id}
表1路径参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                   |
|:---|:---|:---|:---|
| deployment_id | 是    | String | 部署ID                                                                                 |
| project_id    | 是    | String | 项目ID，获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-hilens/hilens_07_0020.html) |
   
表2Query参数 
| 参数       | 是否必选 | 参数类型   | 描述                                                |
|:---|:---|:---|:---|
| provider | 否    | String | 平台提供者，分别为hilens及ief。当为hilens时，请求部署在hilens平台的相关数据。 |
   
#### 请求参数
表3请求Header参数 
| 参数             | 是否必选 | 参数类型    | 描述                                                                                 |
|:---|:---|:---|:---|
| X-Auth-Token   | 是    | String  | 用户Token。获取方法请参见[获取Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html) |
| X-Expired-Time | 否    | Integer | 离线场景超期时间，单位分钟，范围在1-86400                                                           |
   
表4请求Body参数 
| 参数          | 是否必选 | 参数类型                                                                                                                                         | 描述                                                                                                                                                    |
|:---|:---|:---|:---|
| deployment  | 否    | [DeploymentRequest] object   | 应用部署全量替换修改，应用更新时调用                                                                                                                                    |
| description | 否    | String                                                                                                                                       | 应用部署描述修改，只修改描述不需要传deployment参数。最大长度255，不允许\^ \~ # $ % \& \* \< \> ( ) \[ \] { } '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' " \\ |
| tags        | 否    | Array of [DeploymentTag] objects | 部署标签                                                                                                                                                  |
   
 表5DeploymentRequest 
| 参数       | 是否必选 | 参数类型                                                                                                                         | 描述             |
|:---|:---|:---|:---|
| replicas | 是    | Integer                                                                                                                      | 应用部署副本数，小于100。 |
| template | 是    | [PodRequest] object | 应用部署模板         |
   
 表6PodRequest 
| 参数              | 是否必选 | 参数类型                                                                                                                           | 描述                         |
|:---|:---|:---|:---|
| affinity        | 否    | [PodAffinity] object | 应用部署亲和性规则                  |
| apps            | 是    | Array of [AppDef] objects | 应用部署业务容器或RPM程序包            |
| configs         | 是    | [PodConfig] object     | 应用实例配置                     |
| init_containers | 否    | Array of [AppDef] objects | 应用部署初始化业务容器，容器部署有效。预留，暂不支持 |
   
 表7PodAffinity 
| 参数            | 是否必选 | 参数类型                                                                                                                                             | 描述      |
|:---|:---|:---|:---|
| node_affinity | 否    | Array of [MatchExpression] objects | 节点亲和规则  |
| pod_affinity  | 否    | Array of [MatchExpression] objects | Pod亲和规则 |
   
 表8MatchExpression 
| 参数       | 是否必选 | 参数类型             | 描述                                                                                                                         |
|:---|:---|:---|:---|
| key      | 否    | String           | 规则的标签                                                                                                                      |
| operator | 否    | String           | 操作符，取值如下： In：标签值需要在values的列表中 NotIn：标签的值不在某个列表中 Exists：某个标签存在 DoesNotExist：某个标签不存在 Gt：标签的值大于某个值（字符串比较） Lt：标签的值小于某个值（字符串比较） |
| values   | 否    | Array of strings | 一组标签值。 如果运算符为In或NotIn，则值数组必须非空。 如果运算符为Exists 或DoesNotExist，则值数组必须为空。 如果运算符是Gt或Lt，则值数组必须具有单个元素，该元素将被解释为整数                   |
   
 表9PodConfig 
| 参数                 | 是否必选 | 参数类型    | 描述                                    |
|:---|:---|:---|:---|
| host_network       | 是    | Boolean | 应用实例是否启用主机网络，不启用则使用端口映射,默认值false      |
| host_pid           | 否    | Boolean | 应用实例是否与主机共PID命名空间,默认值false            |
| migration          | 否    | Boolean | 应用实例故障是否迁移,指定节点组部署时必选，默认值false        |
| restart_policy     | 是    | String  | 应用实例重启策略,可选值Always、OnFailure、Never    |
| toleration_seconds | 否    | Integer | 应用实例故障容忍时间,容忍时间到达后迁移应用实例，只在指定节点组部署时生效 |
   
 表10AppDef 
| 参数                  | 是否必选 | 参数类型                                                                                                                                                               | 描述                                                                                                                                                                |
|:---|:---|:---|:---|
| app_order_id        | 否    | String                                                                                                                                                             | app应用的订单ID，技能来源是市场时，如果不填，则自动选择默认订单。                                                                                                                               |
| app_url             | 是    | String                                                                                                                                                             | app应用的地址，可以是镜像地址或者OBS地址                                                                                                                                           |
| channel_limit       | 否    | Integer                                                                                                                                                            | 路数限制，添加作业的时候，摄像头和VCN的最大路数不超过该值，范围是0到1000                                                                                                                          |
| channel_upper_limit | 否    | Integer                                                                                                                                                            | 用户可以指定的路数限制上限，范围是0到1000                                                                                                                                           |
| args                | 否    | Array of strings                                                                                                                                                   | 容器启动参数，字符总长度最大为65536，不允许\^#\~\^$\|%\&\*\<\>()'"\[\]{}\]等特殊字符                                                                                                      |
| command             | 否    | Array of strings                                                                                                                                                   | 容器启动命令，字符总长度最大为65536。 command支持使用数组定义多条命令，但在IEF控制台界面只会显示第一条命令。不允许\^#\~\^$\|%\&\*\<\>()'"\[\]{}\]等特殊字符                                                             |
| envs                | 否    | Array of [Env] objects                                           | 环境变量                                                                                                                                                              |
| is_modelbox         | 否    | Boolean                                                                                                                                                            | 是否是modelbox镜像                                                                                                                                                     |
| liveness_probe      | 否    | [Probe] object                                                 | 探针配置                                                                                                                                                              |
| msgs                | 否    | Array of [Env] objects                                           | 消息变量                                                                                                                                                              |
| name                | 是    | String                                                                                                                                                             | 应用名字，只允许英文小写字母、数字、中划线，最大长度32, 英文小写字母或数字开头和结尾。该名称同时对应技能名称，当不传订单id的时候，默认通过该名称和版本号version字段，选择指定技能版本，进行部署，并选择可用的订单（默认订单优先）扣除份额。                                      |
| npu_type            | 否    | String                                                                                                                                                             | npu类型，支持D310类型和D910类型。D310表示D310类型。 D910表示D910类型。不填表示为D310类型 |
| ports               | 否    | Array of [HostContainerPortMapping] objects | 容器端口映射值                                                                                                                                                           |
| privileged          | 否    | Boolean                                                                                                                                                            | 是否启用特权容器,默认值false                                                                                                                                                 |
| readiness_probe     | 否    | [Probe] object                                                 | 探针配置                                                                                                                                                              |
| resources           | 是    | [ResQuest] object                                           | 创建应用时使用的资源                                                                                                                                                        |
| version             | 否    | String                                                                                                                                                             | 版本号，长度不超过128，支持大小写数字，下划线，点，中划线                                                                                                                                    |
| volumes             | 否    | Array of [Volume] objects                                     | 卷配置                                                                                                                                                               |
| start_resources     | 否    | [ResQuest] object                                           | 创建部署所需要的起始资源                                                                                                                                                      |
| channel_resources   | 否    | [ResQuest] object                                           | 每增加一路所需要资源                                                                                                                                                        |
| skill_project_id    | 否    | String                                                                                                                                                             | 技能管理ID，技能来源source是skill的时候，需要传入该ID                                                                                                                                |
   
 表11Env 
| 参数         | 是否必选 | 参数类型                                                                                                                       | 描述                                                                              |
|:---|:---|:---|:---|
| name       | 是    | String                                                                                                                     | 环境变量的key，由大小写字母或下划线开头，由数字、大小写字母、下划线组成，最大长度2048个字符，不允许重复                         |
| value      | 否    | String                                                                                                                     | 环境变量的value，最大长度20480个字符。value、value_from和field_path必须三选一使用                      |
| value_from | 否    | [ValueFrom] object | 环境变量可使用配置项和密钥导入。value、value_from和field_path必须三选一使用                              |
| field_path | 否    | String                                                                                                                     | 该参数目前只支持赋值"status.hostIP"，即引用边缘节点的IP地址作为环境变量。value、value_from和field_path必须三选一使用 |
   
 表12ValueFrom 
| 参数        | 是否必选 | 参数类型                                                                                                                                       | 描述                                              |
|:---|:---|:---|:---|
| configmap | 否    | [ConfigsMap] object               | 环境变量引用配置项时使用。使用ValueFrom时，secret与configmap必须二选一 |
| secret    | 否    | [DeploymentSecrets] object | 环境变量引用密钥时使用。使用ValueFrom时，secret与configmap必须二选一  |
   
 表13ConfigsMap 
| 参数   | 是否必选 | 参数类型   | 描述                                                          |
|:---|:---|:---|:---|
| key  | 是    | String | 配置项的名称，以英文字母或中划线开头，由英文字母、数字、点号、中划线和下划线组成，长度1到63个字符。         |
| name | 是    | String | 配置项的属性名，以英文小写字母开头，由中文字符，英文字母，数字，下划线和中划线组成，不能以中划线结尾，长度4-64位。 |
   
 表14DeploymentSecrets 
| 参数   | 是否必选 | 参数类型   | 描述                                                       |
|:---|:---|:---|:---|
| name | 否    | String | 密钥的名称，以英文小写字母开头，由中文字符，英文字母，数字，下划线和中划线组成，不能以中划线结尾，长度4-64位 |
| key  | 否    | String | 密钥的属性名，以英文字母和中划线开头，由英文字母、数字、点号、中划线和下划线组成，长度1-63位         |
   
 表15HostContainerPortMapping 
| 参数              | 是否必选 | 参数类型                                                                                                                               | 描述                                  |
|:---|:---|:---|:---|
| container_port  | 是    | Long                                                                                                                               | 容器端口,1到65535之间的整数                   |
| host_ip         | 否    | String                                                                                                                             | 对应主机网卡地址，形如192.168.0.1              |
| host_port       | 否    | Long                                                                                                                               | 主机端口,1到65535之间的整数，与主机端口范围二选一        |
| host_port_range | 否    | [HostPortRange] object | 主机端口范围，在范围内为应用实例自动分配主机端口；与主机端口参数二选一 |
   
 表16HostPortRange 
| 参数       | 是否必选 | 参数类型 | 描述                                       |
|:---|:---|:---|:---|
| max_port | 是    | Long | 主机端口上限值,1到65535之间的整数；max_port需大于min_port |
| min_port | 是    | Long | 主机端口下限制,1到65535之间的整数                     |
   
 表17Probe 
| 参数                    | 是否必选 | 参数类型                                                                                                                   | 描述                                     |
|:---|:---|:---|:---|
| exec                  | 否    | [Exec] object       | 执行命令检查，与http_get二选一                    |
| http_get              | 否    | [HttpGet] object | 执行http探测                               |
| initial_delay_seconds | 否    | Long                                                                                                                   | 表示从工作负载启动后从多久开始探测，大于0且不大于3600的整数，默认为10 |
| timeout_seconds       | 否    | Long                                                                                                                   | 表示探测超时时间，大于0且不大于3600的整数，默认为1           |
   
 表18Exec 
| 参数      | 是否必选 | 参数类型   | 描述                                                         |
|:---|:---|:---|:---|
| command | 是    | String | 探针执行命令，最大长度10240个字符。不允许\^#\~\^$\|%\&\*\<\>()'"\[\]{}这些特殊字符 |
   
 表19HttpGet 
| 参数     | 是否必选 | 参数类型    | 描述                             |
|:---|:---|:---|:---|
| host   | 否    | String  | 请求的主机地址，默认为容器IP                |
| path   | 是    | String  | 必须要以/开头，构造结果为：协议类型://主机地址:端口路径 |
| port   | 是    | Integer | 探测的http端口，1到65535之间的整数         |
| scheme | 否    | String  | 协议类型，HTTP或HTTPS，默认HTTP         |
   
 表20Volume 
| 参数          | 是否必选 | 参数类型    | 描述                                                                                                                        |
|:---|:---|:---|:---|
| destination | 是    | String  | 卷挂载路径，必须是合法的路径                                                                                                            |
| key         | 是    | String  | 卷的类型，支持configMap,secret,emptyDir,hostPath                                                                                 |
| name        | 是    | String  | 卷名称，小写字母或数字，最长63个字符                                                                                                       |
| read_only   | 是    | Boolean | 读写权限，configMap和secret类型只支持读权限                                                                                             |
| source      | 是    | String  | 卷来源，type为hostPath时输入路径，要求以/开头，后面可包含中划线，反斜杠，下划线，点号，字母，数字； secret时输入secret名称，configMap时输入configMap名称，emptyDir时输入disk或memory |
| type        | 是    | String  | 卷的类型，支持configMap,secret,emptyDir,hostPath                                                                                 |
   
 表21ResQuest 
| 参数       | 是否必选 | 参数类型                                                                                                           | 描述          |
|:---|:---|:---|:---|
| limits   | 否    | [Res] object | 允许容器使用的最大资源 |
| requests | 否    | [Res] object | 容器需要使用的最小资源 |
   
 表22Res 
| 参数     | 是否必选 | 参数类型   | 描述                                              |
|:---|:---|:---|:---|
| cpu    | 否    | String | cpu数量，字符串所对应的数值在0.01到1000之间                     |
| gpu    | 否    | String | gpu数量，值在0到1000                                  |
| memory | 否    | String | 内存数量，如果是资源限制，其值范围在4到1024000之间，否则在0.01到1024000之间 |
| npu    | 否    | String | npu数量，字符串所对应的数值在0.到1000之间                       |
   
 表23DeploymentTag 
| 参数    | 是否必选 | 参数类型   | 描述                                                       |
|:---|:---|:---|:---|
| key   | 是    | String | 部署标签的key值，长度取值范围为1\~36，由英文字母，数字，中划线和下划线组成，长度1到36个字符      |
| value | 是    | String | 部署标签的value值，长度取值范围为1\~43，由英文字母，数字，下划线，点号和中划线组成，长度0到43个字符 |
   
#### 响应参数
**状态码： 200**
表24响应Body参数 
| 参数             | 参数类型                                                                                                                                    | 描述                                                                                                                                                                                  |
|:---|:---|:---|
| template       | [template] object               | 部署模板信息                                                                                                                                                                              |
| reason         | String                                                                                                                                  | 部署成功失败的理由                                                                                                                                                                           |
| ready_replicas | Integer                                                                                                                                 | 已经就绪的实例节点数                                                                                                                                                                          |
| replicas       | Integer                                                                                                                                 | 实例节点节点数                                                                                                                                                                             |
| description    | String                                                                                                                                  | 应用部署描述，最大长度255，不允许\^ \~ # $ % \& \* \< \> ( ) \[ \] { } ' " \\                                                                                                                      |
| created_at     | String                                                                                                                                  | 创建时间                                                                                                                                                                                |
| source         | String                                                                                                                                  | 应用部署来源: HiLens市场(hlm) or aigallery(aig) or 自定义(userdefined)                                                                                                                         |
| api_version    | String                                                                                                                                  | 应用部署版本                                                                                                                                                                              |
| node_ids       | Array of strings                                                                                                                        | 应用部署的指定节点，与cluster_id二选一                                                                                                                                                            |
| cluster_id     | String                                                                                                                                  | 应用部署的集群ID，与node_id二选一                                                                                                                                                               |
| updated_at     | String                                                                                                                                  | 更新时间                                                                                                                                                                                |
| project_id     | String                                                                                                                                  | 项目ID                                                                                                                                                                                |
| name           | String                                                                                                                                  | 部署名称                                                                                                                                                                                |
| id             | String                                                                                                                                  | 部署ID                                                                                                                                                                                |
| state          | String                                                                                                                                  | RUNNING：运行， FREEZE：冻结， UNFREEZE: 解冻， CREATING：创建中， CREATE_FAILED：创建失败， STARTING：启动中， START_FAILED：启动失败， STOPPING：停止中 STOP_FAILED：停止失败 DELETING：删除中 DELETE_FAILED：删除失败 HIBERNATED：休眠 |
| node_num       | Integer                                                                                                                                 | 部署的节点数，最小为1，集群部署也为1                                                                                                                                                                 |
| result         | Array of [NodeResult] objects | 每个节点的部署结果                                                                                                                                                                           |
   
 表25template 
| 参数      | 参数类型                                                                                                                            | 描述     |
|:---|:---|:---|
| configs | [PodConfig] object     | 应用实例配置 |
| apps    | Array of [AppDef] objects | 部署应用列表 |
   
 表26PodConfig 
| 参数                 | 参数类型    | 描述                                    |
|:---|:---|:---|
| host_network       | Boolean | 应用实例是否启用主机网络，不启用则使用端口映射,默认值false      |
| host_pid           | Boolean | 应用实例是否与主机共PID命名空间,默认值false            |
| migration          | Boolean | 应用实例故障是否迁移,指定节点组部署时必选，默认值false        |
| restart_policy     | String  | 应用实例重启策略,可选值Always、OnFailure、Never    |
| toleration_seconds | Integer | 应用实例故障容忍时间,容忍时间到达后迁移应用实例，只在指定节点组部署时生效 |
   
 表27AppDef 
| 参数                  | 参数类型                                                                                                                                                                | 描述                                                                                                                                                                  |
|:---|:---|:---|
| app_order_id        | String                                                                                                                                                              | app应用的订单ID，技能来源是市场时，如果不填，则自动选择默认订单。                                                                                                                                 |
| app_url             | String                                                                                                                                                              | app应用的地址，可以是镜像地址或者OBS地址                                                                                                                                             |
| channel_limit       | Integer                                                                                                                                                             | 路数限制，添加作业的时候，摄像头和VCN的最大路数不超过该值，范围是0到1000                                                                                                                            |
| channel_upper_limit | Integer                                                                                                                                                             | 用户可以指定的路数限制上限，范围是0到1000                                                                                                                                             |
| args                | Array of strings                                                                                                                                                    | 容器启动参数，字符总长度最大为65536，不允许\^#\~\^$\|%\&\*\<\>()'"\[\]{}\]等特殊字符                                                                                                        |
| command             | Array of strings                                                                                                                                                    | 容器启动命令，字符总长度最大为65536。 command支持使用数组定义多条命令，但在IEF控制台界面只会显示第一条命令。不允许\^#\~\^$\|%\&\*\<\>()'"\[\]{}\]等特殊字符                                                               |
| envs                | Array of [Env] objects                                           | 环境变量                                                                                                                                                                |
| is_modelbox         | Boolean                                                                                                                                                             | 是否是modelbox镜像                                                                                                                                                       |
| liveness_probe      | [Probe] object                                                 | 探针配置                                                                                                                                                                |
| msgs                | Array of [Env] objects                                           | 消息变量                                                                                                                                                                |
| name                | String                                                                                                                                                              | 应用名字，只允许英文小写字母、数字、中划线，最大长度32, 英文小写字母或数字开头和结尾。该名称同时对应技能名称，当不传订单id的时候，默认通过该名称和版本号version字段，选择指定技能版本，进行部署，并选择可用的订单（默认订单优先）扣除份额。                                        |
| npu_type            | String                                                                                                                                                              | npu类型，支持D310类型和D910类型。D310表示D310类型。 D910表示D910类型。不填表示为D310类型 |
| ports               | Array of [HostContainerPortMapping] objects | 容器端口映射值                                                                                                                                                             |
| privileged          | Boolean                                                                                                                                                             | 是否启用特权容器,默认值false                                                                                                                                                   |
| readiness_probe     | [Probe] object                                                 | 探针配置                                                                                                                                                                |
| resources           | [ResQuest] object                                           | 创建应用时使用的资源                                                                                                                                                          |
| version             | String                                                                                                                                                              | 版本号，长度不超过128，支持大小写数字，下划线，点，中划线                                                                                                                                      |
| volumes             | Array of [Volume] objects                                     | 卷配置                                                                                                                                                                 |
| start_resources     | [ResQuest] object                                           | 创建部署所需要的起始资源                                                                                                                                                        |
| channel_resources   | [ResQuest] object                                           | 每增加一路所需要资源                                                                                                                                                          |
| skill_project_id    | String                                                                                                                                                              | 技能管理ID，技能来源source是skill的时候，需要传入该ID                                                                                                                                  |
   
 表28Env 
| 参数         | 参数类型                                                                                                                        | 描述                                                                              |
|:---|:---|:---|
| name       | String                                                                                                                      | 环境变量的key，由大小写字母或下划线开头，由数字、大小写字母、下划线组成，最大长度2048个字符，不允许重复                         |
| value      | String                                                                                                                      | 环境变量的value，最大长度20480个字符。value、value_from和field_path必须三选一使用                      |
| value_from | [ValueFrom] object | 环境变量可使用配置项和密钥导入。value、value_from和field_path必须三选一使用                              |
| field_path | String                                                                                                                      | 该参数目前只支持赋值"status.hostIP"，即引用边缘节点的IP地址作为环境变量。value、value_from和field_path必须三选一使用 |
   
 表29ValueFrom 
| 参数        | 参数类型                                                                                                                                        | 描述                                              |
|:---|:---|:---|
| configmap | [ConfigsMap] object               | 环境变量引用配置项时使用。使用ValueFrom时，secret与configmap必须二选一 |
| secret    | [DeploymentSecrets] object | 环境变量引用密钥时使用。使用ValueFrom时，secret与configmap必须二选一  |
   
 表30ConfigsMap 
| 参数   | 参数类型   | 描述                                                          |
|:---|:---|:---|
| key  | String | 配置项的名称，以英文字母或中划线开头，由英文字母、数字、点号、中划线和下划线组成，长度1到63个字符。         |
| name | String | 配置项的属性名，以英文小写字母开头，由中文字符，英文字母，数字，下划线和中划线组成，不能以中划线结尾，长度4-64位。 |
   
 表31DeploymentSecrets 
| 参数   | 参数类型   | 描述                                                       |
|:---|:---|:---|
| name | String | 密钥的名称，以英文小写字母开头，由中文字符，英文字母，数字，下划线和中划线组成，不能以中划线结尾，长度4-64位 |
| key  | String | 密钥的属性名，以英文字母和中划线开头，由英文字母、数字、点号、中划线和下划线组成，长度1-63位         |
   
 表32HostContainerPortMapping 
| 参数              | 参数类型                                                                                                                                | 描述                                  |
|:---|:---|:---|
| container_port  | Long                                                                                                                                | 容器端口,1到65535之间的整数                   |
| host_ip         | String                                                                                                                              | 对应主机网卡地址，形如192.168.0.1              |
| host_port       | Long                                                                                                                                | 主机端口,1到65535之间的整数，与主机端口范围二选一        |
| host_port_range | [HostPortRange] object | 主机端口范围，在范围内为应用实例自动分配主机端口；与主机端口参数二选一 |
   
 表33HostPortRange 
| 参数       | 参数类型 | 描述                                       |
|:---|:---|:---|
| max_port | Long | 主机端口上限值,1到65535之间的整数；max_port需大于min_port |
| min_port | Long | 主机端口下限制,1到65535之间的整数                     |
   
 表34Probe 
| 参数                    | 参数类型                                                                                                                    | 描述                                     |
|:---|:---|:---|
| exec                  | [Exec] object       | 执行命令检查，与http_get二选一                    |
| http_get              | [HttpGet] object | 执行http探测                               |
| initial_delay_seconds | Long                                                                                                                    | 表示从工作负载启动后从多久开始探测，大于0且不大于3600的整数，默认为10 |
| timeout_seconds       | Long                                                                                                                    | 表示探测超时时间，大于0且不大于3600的整数，默认为1           |
   
 表35Exec 
| 参数      | 参数类型   | 描述                                                         |
|:---|:---|:---|
| command | String | 探针执行命令，最大长度10240个字符。不允许\^#\~\^$\|%\&\*\<\>()'"\[\]{}这些特殊字符 |
   
 表36HttpGet 
| 参数     | 参数类型    | 描述                             |
|:---|:---|:---|
| host   | String  | 请求的主机地址，默认为容器IP                |
| path   | String  | 必须要以/开头，构造结果为：协议类型://主机地址:端口路径 |
| port   | Integer | 探测的http端口，1到65535之间的整数         |
| scheme | String  | 协议类型，HTTP或HTTPS，默认HTTP         |
   
 表37Volume 
| 参数          | 参数类型    | 描述                                                                                                                        |
|:---|:---|:---|
| destination | String  | 卷挂载路径，必须是合法的路径                                                                                                            |
| key         | String  | 卷的类型，支持configMap,secret,emptyDir,hostPath                                                                                 |
| name        | String  | 卷名称，小写字母或数字，最长63个字符                                                                                                       |
| read_only   | Boolean | 读写权限，configMap和secret类型只支持读权限                                                                                             |
| source      | String  | 卷来源，type为hostPath时输入路径，要求以/开头，后面可包含中划线，反斜杠，下划线，点号，字母，数字； secret时输入secret名称，configMap时输入configMap名称，emptyDir时输入disk或memory |
| type        | String  | 卷的类型，支持configMap,secret,emptyDir,hostPath                                                                                 |
   
 表38ResQuest 
| 参数       | 参数类型                                                                                                            | 描述          |
|:---|:---|:---|
| limits   | [Res] object | 允许容器使用的最大资源 |
| requests | [Res] object | 容器需要使用的最小资源 |
   
 表39Res 
| 参数     | 参数类型   | 描述                                              |
|:---|:---|:---|
| cpu    | String | cpu数量，字符串所对应的数值在0.01到1000之间                     |
| gpu    | String | gpu数量，值在0到1000                                  |
| memory | String | 内存数量，如果是资源限制，其值范围在4到1024000之间，否则在0.01到1024000之间 |
| npu    | String | npu数量，字符串所对应的数值在0.到1000之间                       |
   
 表40NodeResult 
| 参数            | 参数类型   | 描述                |
|:---|:---|:---|
| node_id       | String | 部署的节点ID           |
| error_message | String | 部署到该节点失败时，返回的错误信息 |
| error_code    | String | 部署到该节点失败时，返回的错误码  |
   
**状态码： 401**
表41响应Body参数 
| 参数            | 参数类型   | 描述   |
|:---|:---|:---|
| request_id    | String | 请求ID |
| error_code    | String | 错误码  |
| error_message | String | 错误信息 |
   
**状态码： 403**
表42响应Body参数 
| 参数            | 参数类型   | 描述   |
|:---|:---|:---|
| request_id    | String | 请求ID |
| error_code    | String | 错误码  |
| error_message | String | 错误信息 |
   
**状态码： 404**
表43响应Body参数 
| 参数            | 参数类型   | 描述   |
|:---|:---|:---|
| request_id    | String | 请求ID |
| error_code    | String | 错误码  |
| error_message | String | 错误信息 |
   
**状态码： 500**
表44响应Body参数 
| 参数            | 参数类型   | 描述   |
|:---|:---|:---|
| request_id    | String | 请求ID |
| error_code    | String | 错误码  |
| error_message | String | 错误信息 |
   
#### 请求示例
更新自定义技能
```
https://{endpoint}/v3/8c79e1e7ff39437680a67783feb0e815/ai-mgr/deployments/8c79e1e7ff39437680a67783feb0e811
{
  "deployment" : {
    "replicas" : 1,
    "template" : {
      "configs" : {
        "restart_policy" : "Always",
        "host_network" : false
      },
      "apps" : [ {
        "privileged" : false,
        "resources" : {
          "limits" : {
            "cpu" : "0.25",
            "memory" : "128"
          },
          "requests" : { }
        },
        "name" : "image",
        "app_url" : "xxx"
      } ]
    }
  }
}
```
#### 响应示例
**状态码： 200**
请求成功，当批量更新部署节点个数小于20个的时候，返回结果result字段非空，当大于20个的时候，result字段为空，此时可通过回调机制获取部署结果。
```
{
  "template" : {
    "configs" : {
      "migration" : false,
      "host_network" : false,
      "host_pid" : false,
      "restart_policy" : "Always",
      "toleration_seconds" : 0
    },
    "apps" : [ {
      "name" : "example1-skill-name",
      "args" : [ ],
      "command" : [ "--log_dir=/train --learning_rate=0.01 --batch_size=150" ],
      "resources" : {
        "limits" : {
          "cpu" : "0.25",
          "memory" : "128"
        },
        "requests" : { }
      },
      "envs" : [ {
        "name" : "IVA_SVC_CONFIG",
        "value" : "{\"algorithm\":{\"multiTask\":\"no\",\"algType\":\"hilens\"},\"cloud\":{\"disEndpoint\":\"https://dis.cn-north-7.myhuaweicloud.com\",\"region\":\"cn-north-7\"},\"svcInstanceId\":\"modelbox-instance-xxxx\"}"
      } ],
      "msgs" : [ ],
      "ports" : [ {
        "container_port" : 10,
        "host_port" : 23,
        "host_ip" : "10.10.10.10"
      } ],
      "privileged" : false,
      "volumes" : [ {
        "name" : "tmp",
        "type" : "emptyDir",
        "source" : "memory",
        "destination" : "/tmp",
        "read_only" : false
      }, {
        "name" : "run",
        "type" : "emptyDir",
        "source" : "memory",
        "destination" : "/run",
        "read_only" : false
      }, {
        "name" : "cgroup",
        "type" : "hostPath",
        "source" : "/sys/fs/cgroup",
        "destination" : "/sys/fs/cgroup",
        "read_only" : true
      } ],
      "app_url" : "xxx",
      "is_modelbox" : true
    } ]
  },
  "reason" : null,
  "ready_replicas" : 0,
  "replicas" : 1,
  "description" : "",
  "created_at" : "2022-01-25 15:57:07 GMT+08:00",
  "source" : "userdefined",
  "api_version" : null,
  "node_ids" : [ "hilens-e17b497c3a00406f89f605e5c16b40d7" ],
  "result" : [ {
    "node_id" : "hilens-e17b497c3a00406f89f605e5c16b40d7"
  } ],
  "cluster_id" : "",
  "updated_at" : "2022-01-25 15:57:07 GMT+08:00",
  "project_id" : "fff47e1722f94c4e98531bae56821372",
  "name" : "example1",
  "id" : "hilens-9eebd2c03a2e48a6a47949fcb4f3f66f",
  "state" : "CREATING"
}
```
#### 状态码
| 状态码 | 描述                                                                            |
|:---|:---|
| 200 | 请求成功，当批量更新部署节点个数小于20个的时候，返回结果result字段非空，当大于20个的时候，result字段为空，此时可通过回调机制获取部署结果。 |
| 401 | 认证不通过                                                                         |
| 403 | 拒绝执行请求                                                                        |
| 404 | 请求的资源不存在                                                                      |
| 500 | 服务器内部错误                                                                       |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-hilens/ErrorCode.html)。
