Updated on 2024-01-09 GMT+08:00

Creating an Environment

Function

An environment is a collection of compute, storage, and network resources used for deploying and running an application. ServiceStage combines the compute resources (such as CCE clusters and ECSs), network resources (such as ELB instances and EIPs), and middleware (such as DCS instances, RDS instances, and CSE engines) in the same enterprise project and VPC into an environment, such as a development environment, testing environment, pre-production environment, or production environment. The resources within an environment can be networked together. Managing resources and deploying services by environment simplifies O&M.

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 or format.

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 (-), and 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.

Table 4 labels parameters

Parameter

Mandatory

Type

Description

key

Yes

String

Label name.

value

Yes

String

Label value.

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

Creator.

create_time

Integer

Creation time.

update_time

Integer

Update time.

labels

Array of objects

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

Table 6 labels parameters

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

Table 7 Status codes

HTTP 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.