本文为您介绍ComputeNest CLI相关命令行以及命令行的使用示例。
了解ComputeNest CLI命令
命令 | 说明 |
登录到计算巢。 | |
列出支持的服务模板。 | |
通过指定项目名称来初始化项目。 | |
通过导入配置文件来创建或更新服务。 | |
通过指定输出目录生成文件或项目。 | |
通过service-test命令对服务进行测试用例的生成、导入、执行和导出。 |
要获取特定命令的帮助,请在命令后添加 --help
:
computenest-cli import --help
使用ComputeNest CLI命令
login
参数说明
参数
必填
描述
示例值
默认值
--access_key_id
是
认证所需的访问密钥ID。
AKID1234567890
None
--access_key_secret
是
认证所需的访问密钥。
secret1234567890
None
--security_token
否
认证所需的Security Token。
security_token_value
None
示例
computenest-cli login \ --access_key_id AKID1234567890 \ --access_key_secret secret1234567890
list-projects
使用此命令来获取支持的服务模板和项目名称,你可以使用 computenest-cli init-project --project_name xxx
来初始化项目。
参数说明
参数
必填
描述
示例值
默认值
--service_type
否
筛选出指定服务类型,可选值包括
private
和managed
。private
指的是私有化部署,managed
指的是全托管部署。private
None
示例
computenest-cli list-projects --service_type private
init-project
通过指定项目名称来初始化项目。使用此命令来下载指定项目到输出路径,随后你可以切换到输出路径中,使用 computenest-cli import
来快速创建计算巢服务。
参数说明
参数
必填
描述
示例值
默认值
--project_name
是
项目名称。
MyProject
None
--output_path
是
项目文件保存的输出目录路径。
/path/to/output
.
示例
computenest-cli init-project --project_name springboot-package-ecs-demo --output_path
import
通过导入配置文件来创建或更新服务。
参数说明
参数
必填
描述
示例值
默认值
--file_path
否
配置文件的路径。如果未指定,将会寻找当前目录下的
config.yaml
,或者.computenest/config.yaml
文件。/path/to/your/config.yaml
config.yaml
--region_id
否
服务部署所在的区域ID。例如,杭州区域为"cn-hangzhou",新加坡区域为"ap-southeast-1"。
cn-hangzhou
cn-hangzhou
--service_id
否
服务的唯一标识符。如果指定,将用于识别被导入的服务,并可能更新服务名称。
service-12345
None
--service_name
否
导入服务的名称,用于识别服务。
my-service
None
--service_info
否
描述服务信息的JSON字符串,用于支持中英文Locale。每个条目包含
Locale
、ShortDescription
、Image
和Name
。[{"Locale": "en-US", "ShortDescription": "Example Service", "Image": "https://example.com/image.png", "Name": "example-service"}]
None
--version_name
否
服务版本的可选描述,用于区分不同版本的部署。
v1.0
None
--desc
否
服务的简短描述,帮助用户理解服务的用途。
示例服务
None
--update_artifact
否
指定是否需要更新制品。设定为
True
更新制品,False
保持现有制品。True
False
--icon
否
服务自定义图标的URL,可以使用文件相对路径、绝对路径或指向OSS等可公开访问的图像位置。
https://xxx/icon.png
None
--parameters
否
传递给服务配置的JSON格式参数字符串,默认为空的JSON对象
{}
。该选项在创建托管版务时使用。{"key1": "value1", "key2": "value2"}
{}
--parameter_path
否
参数文件的路径,覆盖
--parameters
选项。文件应为JSON或YAML格式。该选项在创建托管服务时使用。/path/to/parameters.json
""
注意:
--file_path
可以在项目根目录执行的情况下载入,此目录需要包含.computenest
目录。如果指定了
--service_id
,将优先使用该 ID 识别服务且可更新服务名称;否则使用--service_name
识别服务。
示例
仅使用服务名称创建服务,其他参数使用默认值
computenest-cli import --service_name=my-service-test1
当该服务创建好后,使用同样的命令更新服务,可使用
--update_artifact=True
来更新服务采用的软件(部署物)。computenest-cli import --service_name=my-service-test1 --update_artifact=True
配置中英文
computenest-cli import --service_info '[{"Locale": "en-US", "ShortDescription": "An example service for demonstration purposes.", "Image": "https://service-info-public.oss-cn-hangzhou.aliyuncs.com/5141674772595072/service-image/ca7d10d9-1aa0-4bb5-913d-b347f71804a4.png", "Name": "ExampleServiceXYZ"}, {"Locale": "zh-CN", "ShortDescription": "此服务用于演示如何配置和部署。", "Image": "https://service-info-public.oss-cn-hangzhou.aliyuncs.com/1853370294850618/service-image/bfd30cc4-e959-4093-b5cb-77a05058b911.png", "Name": "示例服务test-anxh"}]'
指定配置文件与其他参数
computenest-cli import \ --region_id cn-hangzhou \ --file_path config1.yaml \ --update_artifact True \ --service_id service-12345 \ --service_name my-service \ --version_name new_version \ --icon https://xxx/icon.png \ --desc "Sample service" \ --parameter_path /path/to/parameters.json
generate
通过指定输出目录生成文件或项目。
参数说明
参数
必填
描述
示例值
默认值
--output_path
是
生成文件保存的输出目录路径。
/path/to/output
.computenest
--file_path
否
要生成的具体文件的路径。
/path/to/file.txt
.
--parameters
否
JSON 格式的参数字符串。默认为空的 JSON 对象
{}
。{"key1": "value1"}
{}
--parameter_path
否
参数文件的路径。如果提供,将覆盖
--parameters
选项。/path/to/parameters.json
None
--overwrite
,-y
否
如果设置,则确认在不提示的情况下覆盖输出文件。
(无示例,仅为标志)
False
示例
仅传入
parameters
参数,生成BetterChatGPT项目的配置文件computenest-cli generate -y \ --parameters '{ "ArtifactSourceType": "DockerCompose", "RepoName": "ztjhz/BetterChatGPT", "Platform": "github", "Branch": "main", "ServiceType": "private", "DockerComposeYamlPath": "docker-compose.yml", "DockerComposeEnvPath": ".env.example", "RegionId": "cn-hangzhou", "ServiceBuildRegion": "ap-southeast-1" }'
service-test
通过service-test命令对服务进行测试用例的生成、导入、执行和导出。
子命令列表:generate 、import 、execute 、export。
generate
在指定路径下对每个模板生成一个Case文件。
参数
必填
描述
示例值
默认值
--service_id
否
服务ID。
service-xxx
None
--service_name
否
服务名称。
my-test
None
--version_name
否
版本名称。
draft
不传值时查询当前服务的默认版本。
--cases_path
否
服务测试用例所在路径名。
/path/to/your/test/cases
None
--region_id
否
地域ID。
cn-hangzhou
None
--overwrite
否
是否覆盖指定路径的测试用例。
``
True
computenest-cli service-test generate --service_id service-f99b********46f --cases_path path/to/your/test/cases
import
将指定路径下Case文件集合导入到当前服务版本。
参数
必填
描述
示例值
默认值
--service_id
否
服务ID。
service-xxx
None
--service_name
否
服务名称。
my-test
None
--version_name
否
版本名称。
draft
不传值时查询当前服务的默认版本。
--cases_path
否
服务测试用例所在路径名。
/path/to/your/test/cases
None
--region_id
否
地域ID。
cn-hangzhou
None
computenest-cli service-test import --service_id service-f99b********46f --cases_path path/to/your/test/cases
execute
将指定路径下Case文件集合作为一个Task运行。
参数
必填
描述
示例值
默认值
--task_name
是
任务名称。
task-2025
None
--task_region_id
否
任务执行地域。
cn-hangzhou
系统随机选择支持的地域。
--version_name
否
版本名称。
draft
不传值时查询当前服务的默认版本。
--cases_path
否
服务测试用例所在路径名。
/path/to/your/test/cases
None
--region_id
否
地域ID。
cn-hangzhou
None
computenest-cli service-test execute --task_name task-2025 --service_id service-f99b********46f --cases_path path/to/your/test/cases
export
将指定服务版本的Case文件集合导出到指定路径。
参数
必填
描述
示例值
默认值
--service_id
否
服务ID。
service-xxx
None
--service_name
否
服务名称。
my-test
None
--version_name
否
版本名称。
draft
不传值时查询当前服务的默认版本。
--cases_path
否
服务测试用例所在路径名。
/path/to/your/test/cases
None
--region_id
否
地域ID。
cn-hangzhou
None
computenest-cli service-test export --service_id service-f99b********46f --cases_path path/to/your/test/cases