更新时间:2023-11-02 GMT+08:00
分享

上传应用

通过在本地修改应用的yaml模板,上传应用至项目中。

  1. 获取应用yaml模板。
    • 单击“上传应用”,在弹出的页面中下载yaml示例文件。
    • 使用命令行工具,执行health get app -s命令获取创建应用的yaml模板,复制模板并保存到本地。可以保存成.yaml或.txt文件,保存为txt文件时,其内容需为yaml格式。
  2. 修改应用yaml模板。

    在本地编写模板,模板中的参数与在EIHealth平台新建应用过程一致。

    修改yaml模板时,详细的命令和参数请参见应用配置文件说明

    # 详情说明可参考API文档中应用管理-创建应用
    app:
      id: ''                                      # 应用id
      name: 'demo-app'                            # 应用名称 取值范围:[1,56],以大小写字母开头,允许出现中划线(-)、下划线(_)、大小写字母和数字,且必须以大小写字母或数字结尾。更新应用时,应用名称不支持修改。
      version: '1.0.0'                            # 应用版本 取值范围:[1,24],以小写字母或数字或大写字母开头,允许出现中划线,必须以小写字母或数字或大写字母结尾。更新应用时,应用版本不支持修改。
      summary: 'summary'                          # 应用简述 取值范围[0,128]
      description: 'description'                  # 应用描述 取值范围[0,65535],后续支持markdown文本
      labels:                                     # 应用标签 取值范围[0,5],标签名称长度为1~32,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。
      - labelA
      - labelB
      image: 'gwj-test-01/busybox:latest'         # docker镜像地址取值范围[1-255],不能包含中文字符,格式为{project-name}/{image-repo}:{image-tag}
      commands:                                   # docker启动时执行命令 单行命令长度取值范围[0-256],不能包含中文字符,支持多行输入,最多支持300行。
      - 'echo eihealth;'
      node_labels:                                # 计算节点标签 标签个数取值范围[0-1],单个节点标签最大长度56个字符,以字母或数字开头,可以包含下划线(_)、中划线(-)、点(.)、字母和数字,且必须以字母或数字结尾
      - health.label
      resources:                                  # 应用的资源配额
        cpu_type: 'X86'                           # cpu架构类型,不填默认X86
        cpu: '0.1C'                               # cpu申请使用量,取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
        memory: '0.1G'                            # 内存申请使用量,取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
        gpu_type: ''                              # gpu架构类型,取值范围 ' '|GPU|Snt9|D310。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
        gpu: '0'                                  # gpu申请使用量,取值范围[0-16],仅支持整数,Snt9有特殊约束,申请数量需要是0,1,2,4,8。
                                                  # 对于应用,不填默认0;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
      inputs:
      - name: 'input-dir'                         # 参数名称,单个应用内唯一。取值范围:长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。
        type: DIRECTORY                           # 参数类型。取值:[STRING,FILE,DIRECTORY,ENUM]
        pattern: '*.fastq'                        # 提示用户参数填写的格式,取值范围:[0-64]。对于STRING类型,匹配字符串内容,比如后缀约束.fastq;
                                                  # 对于ENUM类型,可以提示一定要在param_enum列表范围内取值;对于FILE类型,约束文件后缀类型;对于DIRECTORY类型,提示xxx;
        required: true                            # 参数是否必须,取值[true,false]
        concurrent: vars_iter                      # 是否并发,取值 vars_iter 时为开启并发状态,不设置则不开启
        description: ''                           # 参数描述。取值范围:[0-255]
        values:                                   # 参数取值 如填写,只支持填一项,根据参数类型进行不同的校验
        - 'gwj-test-01:/test'
      - name: 'input-enum'                        # 参数名称,单个应用内唯一。取值范围:长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。
        type: ENUM                                # 参数类型。取值:[STRING,FILE,DIRECTORY,ENUM]
        pattern: ''                               # 提示用户参数填写的格式,取值范围:[0-64]。对于STRING类型,匹配字符串内容,比如后缀约束.fastq;
                                                  # 对于ENUM类型,可以提示一定要在param_enum列表范围内取值;对于FILE类型,约束文件后缀类型;对于DIRECTORY类型,提示xxx;
        required: true                            # 参数是否必须,取值[true,false]
        description: ''                           # 参数描述。取值范围:[0-255]
        enum:                                     # type 为 ENUM 类型时需要添加enum选项
        - test
        - test2
        values:                                   # 参数取值 如填写,只支持填一项,只支持enum内的选项
        - test
      outputs:
      - name: 'output-dir'
        type: DIRECTORY
        pattern: '*'
        required: true
        description: ''
        values:
        - '/output'
  3. 上传应用模板。

    单击“上传应用”,在弹出的页面中上传yaml模板。

相关文档