更新时间:2026-02-28 GMT+08:00
分享

创建技术栈 - CreateTechnologyStack

功能介绍

此API用于创建自定义技术栈。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。

  • 如果使用角色与策略授权,具体权限要求请参见权限和授权项
  • 如果使用身份策略授权,需具备如下身份策略权限。

    授权项

    访问级别

    资源类型(*为必须)

    条件键

    别名

    依赖的授权项

    servicestage::createRuntimeStack

    write

    -

    -

    servicestage:runtimestack:create

    -

URI

POST /v3/{project_id}/cas/runtimestacks

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

租户项目ID。获取方法,请参考获取项目ID

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

请求消息

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

参数解释:

消息体的类型(格式)。

约束限制:

不涉及

取值范围:

application/json;charset=utf8

默认取值:

不涉及

X-Auth-Token

String

参数解释:

调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值。Token获取方式,请参考认证鉴权

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

参数解释:

技术栈名称。

取值范围:

不涉及

默认取值:

不涉及

deploy_mode

String

参数解释:

部署类型。

取值范围:

  • container:容器部署。
  • virtualmachine:虚拟机部署。

默认取值:

不涉及

type

String

参数解释:

技术栈类型。

取值范围:

  • “deploy_mode”“container”时,支持Java、Tomcat。
  • “deploy_mode”“virtualmachine”时,支持Java、Tomcat。

默认取值:

不涉及

version

String

参数解释:

版本号。

取值范围:

不涉及

默认取值:

不涉及

spec

Object

参数解释:

技术栈相关参数,请参考表4

description

String

参数解释:

技术栈描述。

取值范围:

不涉及

默认取值:

不涉及

表4 spec

参数

是否必选

参数类型

描述

sdk

String

参数解释:

技术栈工具包。

取值范围:

不涉及

默认取值:

不涉及

os

String

参数解释:

技术栈操作系统。

取值范围:

不涉及

默认取值:

不涉及

parameters

Map<String, String>

参数解释:

技术栈相关镜像参数。

取值范围:

键(Key)和值(Value)取值说明:

  • os_url,操作系统镜像地址,用于作为容器部署类型技术栈的基础镜像。值示例:swr.cn-north-4.myhuaweicloud.com/example/euleros_x86_64:2.9.5。
  • os_type,容器部署类型技术栈的操作系统镜像类型。值可以为系统预置(system)或者自定义(custom)。
  • jdk_url,JDK版本软件包的存储路径。值示例:obs://example/bisheng-jdk-8u412-linux-aarch64.tar.gz。
  • tomcat_url,Tomcat版本软件包的存储路径。值示例:obs://example/apache-tomcat-8.5.100.tar.gz。

默认取值:

不涉及

响应消息

表5 响应参数

参数

参数类型

描述

id

String

参数解释:

技术栈的ID。

取值范围:

不涉及

name

String

参数解释:

运行时名称。

取值范围:

不涉及

project_id

String

参数解释:

租户项目ID。

取值范围:

不涉及

deploy_mode

String

参数解释:

部署类型。

取值范围:

  • container:容器部署。
  • virtualmachine:虚拟机部署。

version

String

参数解释:

版本号。

取值范围:

不涉及

type

String

参数解释:

技术栈类型。

取值范围:

  • “deploy_mode”“container”时,支持Java、Tomcat。
  • “deploy_mode”“virtualmachine”时,支持Java、Tomcat。

version

String

参数解释:

技术栈版本。

取值范围:

不涉及

spec

Object

参数解释:

技术栈相关参数,请参考表6

description

String

参数解释:

技术栈描述。

取值范围:

不涉及

system

Integer

参数解释:

是否系统技术栈。

取值范围:

  • 1:系统技术栈。
  • 0:自定义技术栈。

status

String

参数解释:

技术栈状态。

取值范围:

  • Supported:启用。
  • Deprecated:已弃用。
  • Disable:未启用。

creator

String

参数解释:

创建人。

取值范围:

不涉及

create_time

Integer

参数解释:

创建时间。

取值范围:

不涉及

update_time

Integer

参数解释:

修改时间。

取值范围:

不涉及

component_count

Integer

参数解释:

技术栈关联的组件个数。

取值范围:

不涉及

表6 spec

参数

参数类型

描述

os

String

参数解释:

技术栈操作系统。

取值范围:

不涉及

sdk

String

参数解释:

技术栈工具包。

取值范围:

不涉及

parameters

Map<String,String>

参数解释:

技术栈相关镜像地址。

取值范围:

不涉及

请求示例

创建虚拟机部署类型的自定义Java技术栈版本。

{
	"name": "test",
	"deploy_mode": "virtualmachine",
	"type": "Java",
	"version": "1.0.0",
	"description": "1234",
	"spec": {
		"parameters": {
			"jdk_url": "obs://example/bisheng-jdk-8u412-linux-aarch64.tar.gz"
		}
	}
}

响应示例

{
    "id": "cf4727f0-0d6f-43d5-b1b8-f2c1f09d1611",
    "name": "test",
    "project_id": "578ac30b81034b89a7255b3af26db9c9",
    "deploy_mode": "virtualmachine",
    "type": "Java",
    "version": "1.0.0",
    "description": null,
    "spec": {
        "os": null,
        "sdk": null,
        "parameters": {
            "jdk_url": "obs://example/bisheng-jdk-8u412-linux-aarch64.tar.gz"
        }
    },
    "system": 0,
    "status": "Disable",
    "creator": "example",
    "create_time": 1722934506431,
    "update_time": 1722934506431
}

状态码

状态码

描述

200

操作成功

400

错误的请求

404

请求对象不存在

409

请求与当前对象状态冲突

500

内部错误

错误码

请参考ServiceStage错误码

相关文档