TencentCloud / tencentcloud-cli
Tencent Cloud API 3.0 Command Line Interface
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing TencentCloud/tencentcloud-cli in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Overview (README excerpt)
Crawler view腾讯云命令行工具简介 欢迎使用腾讯云命令行工具(TCCLI),TCCLI是管理腾讯云资源的统一工具。通过腾讯云命令行工具,您可以快速轻松的调用腾讯云 API来管理您的腾讯云资源。您还可以基于腾讯云命令行工具来做自动化和脚本处理,能够以更多样的方式进行组合和重用。 安装TCCLI • 安装 Python 环境和 Pip 工具,安装腾讯云命令行工具前请确保您的系统已经安装了 Python 环境和 Pip 工具。**注意python版本必须为2.7及以上版本**,更多内容请参考python主页和pip主页。 • TCCLI依赖于TencentCloudApi Python SDK,**如果TencentCloudApi Python SDK的版本号小于要安装TCCLI版本号,在安装TCCLI时会自动升级TencentCloudApi Python SDK**。 • 安装TCCLI,执行以下命令: 如果是MacOS用户,您还可以使用homebrew来安装tccli: > 执行如下命令之前您需要先安装homebrew,安装的方法可以参考homebrew官网 注意:如果是从3.0.252.3以下版本升级的需要执行 • 安装完成之后执行tccli --version检测是否安装成功。 • 如果您的环境是linux环境,您可以通过以下命令启动自动补全功能: 可以将命令 complete -C 'tccli_completer' tccli 加入环境变量(/etc/profile)中,使自动补全功能一直有效。 在 Docker 上使用 在 CNB 上使用 配置TCCLI 要使用腾讯云命令行工具,您还需要进行一些初始化配置,使其完成使用 云 API的必要前提条件。 • 交互模式,您可以通过tccli configure命令进入交互模式快速配置。 secretId: 云 API 密钥SecretId。 secretIKey: 云 API 密钥SecretKey。 region: 云产品地域,请移驾对应产品页面获取可用的region。 output: 可选参数,请求回包输出格式,支持[json table text]三种格式,默认为json。 更多信息请执行tccli configure help查看。 注意:如果环境变量定义了相关配置,则会优先于配置文件生效。分别为 TENCENTCLOUD\_SECRET\_ID,TENCENTCLOUD\_SECRET\_KEY,TENCENTCLOUD\_REGION。 • 命令行模式,通过命令行模式您可以在自动化脚本中配置您的信息。 更多信息请执行tccli configure [list get set remove] help查看。 • 多账户支持,TCCLI支持多账户,方便您多种配置同时使用。 如果不希望输入命令是手动指定账户名,还可以设置环境变量,tccli能从环境变量中读取指定的profile • 您可以配置https代理,让tccli通过代理调用API 在环境变量中配置https代理 您也可以直接使用'--https-proxy'选项设置https代理 凭证管理 腾讯云命令行工具(TCCLI)目前支持以下几种方式进行凭证管理,获取凭证的优先级:实例角色 > 角色 > TKE OIDC > 临时密钥 > 永久密钥: • 实例角色 有关实例角色的相关概念请参阅:腾讯云实例角色 在您为实例绑定角色后,您可以在实例中访问相关元数据接口获取临时凭证,SDK 会自动刷新临时凭证。相关命令如下: 使用方式: • 命令行输入 • 角色 有关角色的相关概念请参阅:腾讯云角色概述 要使用此种方式,您必须在腾讯云访问管理控制台上创建了一个角色,具体创建过程请参阅:腾讯云角色创建 在您拥有角色后,可以通过如下方式获取临时凭证,相关命令如下: • 命令行输入 • 环境变量 配置环境变量: , , , • TKE OIDC • 环境变量 配置环境变量: , , , • 临时密钥 • 命令行输入 • 环境变量 配置环境变量: , , • xxx.credential文件 • 永久密钥 • 命令行输入 • 环境变量 配置环境变量: , • xxx.credential文件 使用TCCLI 腾讯云命令行工具集成了腾讯云所有支持云 API 的产品,可以在命令行下完成对腾讯云产品的配置和管理。包括使用TCCLI创建云服务器,操作云服务器,通过TCCLI创建CBS盘、查看CBS盘使用情况,通过TCCLI创建VPC网络、往VPC网络中添加资源等等,所有在控制台页面能完成的操作,均能在腾讯云命令行工具上执行命令实现。 • 通过tccli cvm DescribeInstances命令查看当前账号有哪些云服务器。 • 通过tccli cbs DescribeDisks命令查看有CBS盘列表。 以创建一台cvm为例(**请注意demo中非简单类型的参数必须为标准json格式**): 更多功能,您可以通过tccli help查看支持的产品,通过tccli cvm help(以cvm举例)查看产品支持的接口。通过tccli cbs DescribeDisks help(以cbs产品的DescribeDisks接口为例) 查看接口支持的参数。如果想看详细信息,可以在help的后面增加字段'--detail'查看。例如:分别使用tccli help --detail,tccli cvm help --detail和tccli cbs DescribeDisks help --detail查看对应的详细信息。 返回值 从3.0.1009.1版本开始,命令行执行成功返回0值,执行失败返回非0值。 高级功能 多版本接口访问 某些产品可能存在多个版本的接口,TCCLI默认访问推荐版本的接口。如果您想访问其他版本的接口,可以通过以下方式实现(以cvm举例)。 指定输出语言 指定公共参数 可以获得接口指定语言的返回, 参数也支持在配置文件中配置,默认值为"zh-CN" 指定最近的接入点(Endpoint) TCCLI默认会请求就近的接口点访问服务,你也可以针对某一产品指定自己的Endpoint(以cvm为例)。 返回结果过滤 TCCLI 支持 JMESPath ,以下仅为部分示例,全部过滤能力请参考 JMESPath 官方文档。 • 不加任何过滤时的输出(以cvm DescribeZones接口的返回为例)。 • 只看某个字段。 • 指定某个数组类型对象的第N个子对象的信息。 注意:Mac OS 系统使用如下命令可能会报错 ,这时需要将说明过滤行为的内容用单引号包裹起来 • 指定数组类型对象下所有某个名称的子对象的某个字段。 • 过滤数组里的子对象,同时还以新的名称展示。 注意:这里需要将说明过滤行为的内容用单引号包裹起来。 • 高级过滤。CVM 的 DescribeInstances 接口,返回结构体中 InstanceSet 是一个数组,里面每个元素都是一个实例的信息。假设我们想要获取中国香港地域每个实例的唯一标识符 InstanceId,实例名称 InstanceName,并且过滤特定标签。标签是一个数组,里面每个元素是一个字典,键值 Key 是标签名,键值 Value 是标签值,我们想要获取标签名是 的标签值。最后结果打印文本。注意,过滤的标签值实际为数组,我们只取第一个,确保不会因为是数组而导致换行。此外,复杂的命令行语句编写困难,维护不便,建议使用 SDK 封装为程序调用更为合理。 结果轮询 可以使用'--waiter'参数来轮询实例的信息直到出现指定的状态 使用'--waiter'参数时,必须指定一以下两个参数: • expr: 指定被查询的字段,使用jmespath来查找被指定的字段的值 • to: 被轮询的字段的目标值 可选子参数: • timeout: 轮询的超时时间(s) • inaterval: 进程睡眠的时间(s) 您可以在配置文件中设置可选子参数的值,例如 输出入参骨架到json文件 从json文件读取参数,--cli-input-json后接file://+文件路径