Updated on 2024-10-16 GMT+08:00

Creating an Environment

Function

An environment is a collection of basic compute (such as CCE and ECS), network (such as ELB and EIP), and middleware (such as DCS and RDS) resources, used for component deployment and running. ServiceStage combines multiple basic resources into an environment, including development, test, pre-production, and production environments. Managing resources and deploying components by environment simplifies O&M management.

This API is used to create an environment.

URI

POST /v3/{project_id}/cas/environments

Table 1 Path parameter

Parameter

Mandatory

Type

Description

project_id

Yes

String

Tenant's project ID. See Obtaining a Project ID.

Request

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

Content-Type

Yes

String

Message body type (format). Default value: application/json;charset=utf8.

X-Auth-Token

Yes

String

API calling can be authenticated using a token or AK/SK. If you use a token, this parameter is mandatory and must be set to the token. For details about how to obtain a token, see Obtaining a User Token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

name

Yes

String

Environment name.

The value contains 2 to 64 characters consisting of letters, digits, hyphens (-), or underscores (_). It starts with a letter and ends with a letter or digit. Letters are case insensitive.

deploy_mode

No

String

Environment type.

  • virtualmachine
  • container: Kubernetes
  • mixed: VM and Kubernetes

description

No

String

Environment description.

The value can contain up to 128 characters.

enterprise_project_id

No

String

Enterprise project ID.

vpc_id

Yes

String

VPC ID.

labels

No

Array of objects

Label. You can use Tag Management Service (TMS) to filter resources by labels. See Table 4.

Each environment can have a maximum of 20 labels.

NOTE:

Labels can be set in CN East2.

Table 4 labels

Parameter

Mandatory

Type

Description

key

Yes

String

Label name.

Labels are used to identify cloud resources. When you have multiple cloud resources of the same type, you can use labels to classify them based on usage, owner, or environment.

The value contains 1 to 36 characters, including digits, letters, underscores (_), or hyphens (-).

value

Yes

String

Label value.

The value contains 2 to 43 characters, including digits, letters, underscores (_), periods (.), or hyphens (-).

Response

Table 5 Response parameters

Parameter

Type

Description

id

String

Environment ID.

name

String

Environment name.

description

String

Environment description.

project_id

String

Project ID.

enterprise_project_id

String

Enterprise project ID.

deploy_mode

String

Environment type.

vpc_id

String

VPC ID.

creator

String

Environment creator.

create_time

Integer

Environment creation time.

update_time

Integer

Environment update time.

labels

Array of objects

Label. You can use TMS to query resources by labels. See Table 6.

Table 6 labels

Parameter

Type

Description

key

String

Label name.

value

String

Label value.

Example Request

Create a VM environment env-test. The ID of the VPC where the environment is located is 0c72428b-cd6c-4283-a560-210d3edb49f7.

{
    "name": "env-test",
    "description": "",
    "enterprise_project_id": "0",
    "vpc_id": "0c72428b-cd6c-4283-a560-210d3edb49f7",
    "labels": [
        {
            "key": "aaaaa",
            "value": "a5"
        }
    ],
    "deploy_mode": "virtualmachine"
}

Example Response

{
    "id": "c93a5313-d141-4b9f-97ce-b4ce2b3988bd",
    "name": "test",
    "description": "",
    "project_id": "13ae26238d724e54947af3e0fcbef9c3",
    "enterprise_project_id": "0",
    "vpc_id": "0c72428b-cd6c-4283-a560-210d3edb49f7",
    "creator": "ss-test",
    "create_time": 1681384236023,
    "update_time": 1681384236023,
    "deploy_mode": "virtualmachine",
    "labels": []
}

Status Code

Status Code

Description

200

OK

400

Bad Request

404

Not Found

500

Internal Server Error

Error Code

The error code format is SVCSTG.00100.[Error_ID], for example, SVCSTG.00100400. For details, see ServiceStage Error Codes.