描述
系统变量是由云应用平台注入的变量,应用开发无需关注。
变量名都是以
cloudapp_ 开头。使用时需要在 tf 中声明
variable。系统变量名是固定的,用户无法变更。
使用示例
声明变量
# 系统变量variable "cloudapp_cam_role" {}variable "cloudapp_spec" {}variable "cloudapp_repo_server" {}variable "cloudapp_repo_username" {}variable "cloudapp_repo_password" {}variable "cloudapp_id" {}variable "cloudapp_name" {}variable "cloudapp_tags" {}variable "cloudapp_installer_uin" {}variable "cloudapp_owner_uin" {}variable "cloudapp_owner_appid" {}# 应用内变量variable "app_network_vpc" {type = object({region = stringavailability_zone = stringregion_id = stringvpc = object({id = stringcidr_block = string})subnet = object({id = stringcidr_block = stringzone = string})})}variable "app_cvm" {type = object({instance_type = string})}variable "app_cvm_image" {type = object({image_id = string})}variable "charge_type" {type = stringdefault = "POSTPAID"}variable "charge_perpaid_period" {type = numberdefault = 1}
使用变量
resource "random_password" "password_for_cvm" {length = 16override_special = "_+-&=!@#$%^*()"}resource "tencentcloud_instance" "main" {instance_name = "main_instance"availability_zone = var.app_network_vpc.availability_zoneimage_id = var.app_cvm_image.image_id #"img-mmytdhbn"instance_type = var.app_cvm.instance_typepassword = random_password.password_for_cvm.resultvpc_id = var.app_network_vpc.vpc.idsubnet_id = var.app_network_vpc.subnet.idinstance_charge_type = var.charge_type == "PREPAID" ? "PREPAID" : "POSTPAID_BY_HOUR"instance_charge_type_prepaid_period = var.charge_perpaid_periodcam_role_name = var.cloudapp_cam_role}
变量说明
当前支持的系统变量如下:
变量 | 类型 | 说明 |
cloudapp_cam_role | string | 用于调用应用接口的 CAM 角色名,需传给 CVM 或者 TKE 使用。 |
cloudapp_spec | object | 用户选定的商品规格。 |
cloudapp_repo_server | string | 容器镜像仓库地址。 |
cloudapp_repo_username | string | 容器镜像仓库用户名。 |
cloudapp_repo_password | string | 容器镜像仓库密码。 |
cloudapp_id | string | 云应用实例 ID。 |
cloudapp_name | string | 云应用实例名称。 |
cloudapp_tags | Array<{ Key: string; Value: string;}> | 云应用实例标签清单。 |
cloudapp_installer_uin | string | 安装用户 uin。 |
cloudapp_owner_uin | string | 所属主账号 uin。 |
cloudapp_owner_appid | string | 所属主账号 appid。 |