更新时间:2025-12-23 GMT+08:00
分享

更新应用 - UpdateApp

功能介绍

更新应用。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项。

URI

PUT /v1/{project_id}/eihealth-projects/{eihealth_project_id}/apps/{app_id}

表1 路径参数

参数

是否必选

参数类型

描述

app_id

是

String

参数解释:

应用ID。

约束限制:

不涉及

取值范围:

仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。

默认取值:

不涉及

eihealth_project_id

是

String

参数解释:

空间ID,您可以从获取空间ID中获取。

约束限制:

不涉及

取值范围:

仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。

默认取值:

不涉及

project_id

是

String

参数解释:

项目ID,您可以从获取项目ID中获取。

约束限制:

不涉及

取值范围:

仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。

默认取值:

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

是

String

参数解释:

用户Token。

Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限,获取Token接口响应消息头中X-Subject-Token的值即为Token。

约束限制:

不涉及

取值范围:

长度为[1-32768]个字符。

默认取值:

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

name

是

String

参数解释:

应用名称。

约束限制:

不涉及

取值范围:

长度为[1,56],以大小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以大小写字母或数字结尾。

默认取值:

不涉及

version

是

String

参数解释:

应用版本。

约束限制:

更新应用时,应用版本不支持修改。

取值范围:

长度[1,24],以小写字母或数字或大写字母开头,允许出现中划线,必须以小写字母或数字或大写字母结尾。

默认取值:

不涉及

summary

否

String

参数解释:

应用简述。

约束限制:

不涉及

取值范围:

长度[0,128]。

默认取值:

不涉及

description

否

String

参数解释:

应用描述。

约束限制:

后续支持markdown文本。

取值范围:

长度[0,65535]。

默认取值:

不涉及

labels

否

Array of strings

参数解释:

应用标签。

约束限制:

取值范围[0,5],单个标签最大长度32字符,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。

取值范围:

不涉及

默认取值:

不涉及

image

是

String

参数解释:

docker镜像地址。

约束限制:

不能包含中文字符。

取值范围:

取值范围[5-255]。

默认取值:

不涉及

commands

是

Array of strings

参数解释:

docker启动时执行命令。

约束限制:

取值范围[1-300],单个命令长度取值范围[0-256],不能包含中文字符。

取值范围:

不涉及

默认取值:

不涉及

resources

否

ResourceDto object

参数解释:

应用申请资源。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

inputs

否

Array of AppInputParameterDto objects

参数解释:

应用的输入参数列表。

约束限制:

最多支持设置128个参数。

取值范围:

不涉及

默认取值:

不涉及

outputs

否

Array of AppOutputParameterDto objects

参数解释:

应用的输出参数列表。

约束限制:

最多支持设置128个参数。

取值范围:

不涉及

默认取值:

不涉及

node_labels

否

Array of strings

参数解释:

节点标签。

约束限制:

取值范围[0,1],单个标签最大长度63字符。

取值范围:

不涉及

默认取值:

不涉及

icon

否

String

参数解释:

图标base64编码。

约束限制:

不涉及

取值范围:

长度[0,20000],必须以"data:image/svg+xml;base64,"开头,后跟A-Za-z0-9+/=字符。

默认取值:

不涉及

表4 ResourceDto

参数

是否必选

参数类型

描述

cpu_type

否

String

参数解释:

cpu架构类型。

约束限制:

不涉及

取值范围:

取值范围,支持X86|ARM。

默认取值:

X86。

cpu

否

String

参数解释:

cpu申请使用量。

约束限制:

不涉及

取值范围:

取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值:

不涉及

memory

否

String

参数解释:

内存申请使用量。

约束限制:

不涉及

取值范围:

取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值:

不涉及

gpu_type

否

String

参数解释:

gpu架构类型。

约束限制:

不涉及

取值范围:

gpu架构类型,支持GPU|Snt9。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值:

不涉及

gpu

否

String

参数解释:

gpu申请使用量。

约束限制:

不涉及

取值范围:

取值范围[0-16],仅支持整数。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值:

不涉及

表5 AppInputParameterDto

参数

是否必选

参数类型

描述

name

是

String

参数解释:

参数名称,单个应用内唯一。

约束限制:

不涉及

取值范围:

长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。

默认取值:

不涉及

description

否

String

参数解释:

参数描述。

约束限制:

不涉及

取值范围:

长度[0-255]。

默认取值:

不涉及

required

是

Boolean

参数解释:

参数是否必须。

约束限制:

不涉及

取值范围:

  • true:参数是必须。

  • false:参数非必须。

默认取值:

false

concurrent

否

String

参数解释:

参数是否开启并发。当前支持vars_iter并发类型,不填表示未开启并发。

约束限制:

不涉及

取值范围:

取值范围[0-16],仅支持vars_iter并发类型。

默认取值:

不涉及

type

是

String

参数解释:

参数类型。

约束限制:

不涉及

取值范围:

  • STRING:字符参数类型

  • FILE:文件参数类型

  • DIRECTORY:目录参数类型

  • ENUM:枚举参数类型

默认取值:

不涉及

pattern

否

String

参数解释:

提示用户参数填写的格式。

约束限制:

不涉及

取值范围:

取值范围[0-64]。对于STRING类型,匹配字符串内容,比如后缀约束.fastq;对于ENUM类型,可以提示一定要在param_enum列表范围内取值;对于FILE类型,约束文件后缀类型;对于DIRECTORY类型,提示目录下需要包含哪些文件。

默认取值:

不涉及

values

否

Array of strings

参数解释:

参数列表取值。

约束限制:

最多支持设置128个参数,每个参数取值范围[0,2048]。

取值范围:

不涉及

默认取值:

不涉及

enum

否

Array of strings

参数解释:

枚举参数的取值列表。

约束限制:

列表最大长度20,每一项字符串最长128。参数类型为ENUM时需要填此字段。

取值范围:

不涉及

默认取值:

不涉及

表6 AppOutputParameterDto

参数

是否必选

参数类型

描述

name

是

String

参数解释:

参数名称,单个应用内唯一。

约束限制:

不涉及

取值范围:

长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。

默认取值:

不涉及

description

否

String

参数解释:

参数描述。

约束限制:

不涉及

取值范围:

长度[0-255]。

默认取值:

不涉及

required

是

Boolean

参数解释:

参数是否必须。

约束限制:

不涉及

取值范围:

  • true:参数是必须。

  • false:参数非必须。

默认取值:

false

type

是

String

参数解释:

参数类型。

约束限制:

不涉及

取值范围:

  • STRING:字符参数类型

  • FILE:文件参数类型

  • DIRECTORY:目录参数类型

  • ENUM:枚举参数类型

默认取值:

不涉及

pattern

否

String

参数解释:

提示用户参数填写的格式。

约束限制:

不涉及

取值范围:

取值范围[0-64]。对于STRING类型,匹配字符串内容,比如后缀约束.fastq;对于ENUM类型,可以提示一定要在param_enum列表范围内取值;对于FILE类型,约束文件后缀类型;对于DIRECTORY类型,提示目录下需要包含哪些文件。

默认取值:

不涉及

values

否

Array of strings

参数解释:

参数列表取值。

约束限制:

最多支持设置128个参数,每个参数取值范围[0,2048]。

取值范围:

不涉及

默认取值:

不涉及

enum

否

Array of strings

参数解释:

枚举参数的取值列表。

约束限制:

列表最大长度20,每一项字符串最长128。参数类型为ENUM时需要填此字段。

取值范围:

不涉及

默认取值:

不涉及

响应参数

状态码:200

OK

无

请求示例

更新应用,更新应用cpu资源为1C,内存资源为1G。

https://{endpoint}/v1/{project_id}/eihealth-projects/{eihealth_project_id}/apps/{app_id}

{
  "name" : "demo-app",
  "version" : "1.0.0",
  "summary" : "summary",
  "description" : "description",
  "labels" : [ "labelA", "labelB" ],
  "image" : "gwj-test-01/busybox:latest",
  "commands" : [ "echo eihealth;" ],
  "resources" : {
    "cpu_type" : "X86",
    "cpu" : "1C",
    "memory" : "1G",
    "gpu_type" : "GPU",
    "gpu" : 0
  },
  "inputs" : [ {
    "name" : "dir-parameter",
    "description" : "parameter description",
    "required" : true,
    "concurrent" : "vars_iter",
    "type" : "DIRECTORY",
    "pattern" : "*.fastq",
    "values" : [ "test-project:/300M_NA12878_clean_1.fastq" ]
  } ],
  "outputs" : [ {
    "name" : "dir-parameter",
    "description" : "parameter description",
    "required" : true,
    "type" : "DIRECTORY",
    "pattern" : "*.fastq",
    "values" : [ "test-project:/output-dir/" ]
  } ],
  "node_labels" : [ "health.node" ],
  "icon" : "data:image/png;base64,xxxxx"
}

响应示例

无

状态码

状态码

描述

200

OK

错误码

请参见错误码。

相关文档