更新时间:2022-08-29 GMT+08:00
分享

代码生成

功能

通过 DevStar 模板生成代码。

语法

hcloud DevStar <operation> --cli-region="cn-north-1" --param1=value1 --param2=value2 ...

其中 “operation”可选内容如下:

  • Operation 1:RunDevstarTemplateJob 用来启动代码生成任务,执行成功会返回 job_id。参数说明请参见表1
  • Operation 2:ShowJobDetail 用来查询任务的实时状态。参数说明请参见表2
  • Operation 3:DownloadApplicationCode 当任务状态为成功时,可以下载代码到本地。默认下载到命令行工具安装目录。参数说明请参见表3
  1. 代码生成功能由3个 operation 配合完成。执行顺序为Operation1启动代码生成任务,Operation2查询任务状态(可多次执行),当Operation2查询状态为成功时,执行Operation3下载代码至本地。
  2. Operation3执行完成后,请妥善保存代码,整个代码生成流程结束,不可再执行Operation2及Operation3。

参数说明

表1 RunDevstarTemplateJob 参数说明

参数名称

是否必选

参数描述

application_name

应用名称

template_id

DevStar 模板 ID。

repo_type

应用代码生成后的地址类型,目前支持 :

  • 1:压缩包下载地址
表2 ShowJobDetail 参数说明

参数名称

是否必选

参数描述

job_id

任务 ID。

表3 DownloadApplicationCode 参数说明

参数名称

是否必选

参数描述

job_id

任务 ID。

使用示例

  1. 执行如下命令,生成代码。

    hcloud DevStar RunDevstarTemplateJob --cli-region="cn-north-1" --repo_type=1 --application_name="spring" --template_id="0ae4cf82f4f3402bb6b7f1fbac6ed4dd"

    示例执行成功结果如下。

    {
      "job_id": "ACVhBgLx"
      ...
    

  1. 获取到任务 ID 后使用如下命令查询任务的运行状态。

    hcloud DevStar ShowJobDetail --cli-region="cn-north-1" --job_id="ACVhBgLx"

    显示如下则任务成功。

    {
      "id": "ACVhBgLx",
      "name": null,
      "job_status": {
        "initRepository": {
          "name": "生成代码",
          "displayName": null,
          "status": "success",
          "context": {
            "status": null,
            "project_uuid": null,
            "repository_uuid": null,
            "repository_id": null,
            "repository_name": null,
            "https_url": null,
            "ssh_url": null,
            "web_url": null,
            "failure_reason": null
          },
          "elapsedTime": 4,
          "createTime": 1655033046368,
          "startTime": 1655033047705,
          "endTime": 1655033052106,
          "logs": []
        }
      },
      "job_result": "success",
      "show_type": null
    }

  1. 任务执行成功后,输入下载代码命令将生成的代码下载到本地(默认下载到命令行工具安装目录)。

    hcloud DevStar DownloadApplicationCode --cli-region="cn-north-1" --job_id="ACVhBgLx"

相关文档