mysql

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 26, 2025 License: MPL-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewCtyunMysqlAssociationEip

func NewCtyunMysqlAssociationEip() resource.Resource

func NewCtyunMysqlInstance

func NewCtyunMysqlInstance() resource.Resource

func NewCtyunMysqlInstances

func NewCtyunMysqlInstances() datasource.DataSource

func NewCtyunMysqlWhiteList

func NewCtyunMysqlWhiteList() resource.Resource

Types

type AvailabilityZoneModel

type AvailabilityZoneModel struct {
	AvailabilityZoneName  types.String `tfsdk:"availability_zone_name"`  // 资源池可用区名称
	AvailabilityZoneCount types.Int32  `tfsdk:"availability_zone_count"` // 资源池可用区总数
	NodeType              types.String `tfsdk:"node_type"`               // 表示分布AZ的节点类型,master/slave
}

type BoundEipModel

type BoundEipModel struct {
	EipID      types.String `tfsdk:"eip_id"`
	Eip        types.String `tfsdk:"eip"`
	BindStatus types.Int32  `tfsdk:"bind_status"`
	Status     types.String `tfsdk:"status"`
	BandWidth  types.Int32  `tfsdk:"band_width"`
}

type CtyunAssociationEipConfig

type CtyunAssociationEipConfig struct {
	EipID     types.String `tfsdk:"eip_id"`     //弹性id
	InstID    types.String `tfsdk:"inst_id"`    //实例id
	ProjectID types.String `tfsdk:"project_id"` //项目id
	RegionID  types.String `tfsdk:"region_id"`  //区域Id
	EipStatus types.Int32  `tfsdk:"eip_status"` //弹性ip状态 0->unbind,1->bind,2->binding
	Status    types.String `tfsdk:"status"`     //弹性ip可读状态
	// contains filtered or unexported fields
}

type CtyunMysqlAccessWhiteListModel

type CtyunMysqlAccessWhiteListModel struct {
	GroupName           types.String `tfsdk:"group_name"`
	GroupWhiteListCount types.Int32  `tfsdk:"group_white_list_count"`
	ProdInstID          types.String `tfsdk:"prod_inst_id"`
	CreatedTime         types.String `tfsdk:"created_time"`
	UpdatedTime         types.String `tfsdk:"updated_time"`
	GroupWhiteList      types.Set    `tfsdk:"group_white_list"`
	AccessMachineType   types.String `tfsdk:"access_machine_type"`
}

type CtyunMysqlAccessWhiteListsConfig

type CtyunMysqlAccessWhiteListsConfig struct {
	ProdInstID types.String                     `tfsdk:"prod_inst_id"`
	ProjectID  types.String                     `tfsdk:"project_id"`
	RegionID   types.String                     `tfsdk:"region_id"`
	WhiteLists []CtyunMysqlAccessWhiteListModel `tfsdk:"white_lists"`
}

type CtyunMysqlAssociationEip

type CtyunMysqlAssociationEip struct {
	// contains filtered or unexported fields
}

func (*CtyunMysqlAssociationEip) BindLoop

func (c *CtyunMysqlAssociationEip) BindLoop(ctx context.Context, config *CtyunAssociationEipConfig, finalBindStatus int32, finalStatus string, loopCount ...int) (err error)

func (*CtyunMysqlAssociationEip) Configure

func (*CtyunMysqlAssociationEip) Create

func (*CtyunMysqlAssociationEip) Delete

func (*CtyunMysqlAssociationEip) ImportState

func (*CtyunMysqlAssociationEip) Metadata

func (*CtyunMysqlAssociationEip) MysqlBindEip

func (c *CtyunMysqlAssociationEip) MysqlBindEip(ctx context.Context, config *CtyunAssociationEipConfig) (err error)

func (*CtyunMysqlAssociationEip) Read

func (*CtyunMysqlAssociationEip) Schema

func (*CtyunMysqlAssociationEip) StartedLoop

func (c *CtyunMysqlAssociationEip) StartedLoop(ctx context.Context, state *CtyunAssociationEipConfig, loopCount ...int) (err error)

func (*CtyunMysqlAssociationEip) Update

type CtyunMysqlAssociationEips

type CtyunMysqlAssociationEips struct {
	// contains filtered or unexported fields
}

func NewCtyunMysqlAssociationEips

func NewCtyunMysqlAssociationEips() *CtyunMysqlAssociationEips

func (*CtyunMysqlAssociationEips) Configure

func (*CtyunMysqlAssociationEips) Metadata

func (*CtyunMysqlAssociationEips) Read

func (*CtyunMysqlAssociationEips) Schema

type CtyunMysqlAssociationEipsConfig

type CtyunMysqlAssociationEipsConfig struct {
	RegionID  types.String    `tfsdk:"region_id"`
	InstID    types.String    `tfsdk:"inst_id"`
	EipID     types.String    `tfsdk:"eip_id"`
	ProjectID types.String    `tfsdk:"project_id"`
	Eips      []BoundEipModel `tfsdk:"eips"`
}

type CtyunMysqlInstance

type CtyunMysqlInstance struct {
	// contains filtered or unexported fields
}

func (*CtyunMysqlInstance) Configure

func (*CtyunMysqlInstance) Create

func (c *CtyunMysqlInstance) Create(ctx context.Context, request resource.CreateRequest, response *resource.CreateResponse)

func (*CtyunMysqlInstance) CreateLoop

func (c *CtyunMysqlInstance) CreateLoop(ctx context.Context, ListParams *mysql.TeledbGetListRequest, ListHeaders *mysql.TeledbGetListHeaders, loopCount ...int) (err error)

func (*CtyunMysqlInstance) CreateMysqlInstance

func (c *CtyunMysqlInstance) CreateMysqlInstance(ctx context.Context, config *CtyunMysqlInstanceConfig) (err error)

CreateMysqlInstance 创建mysql实例

func (*CtyunMysqlInstance) Delete

func (c *CtyunMysqlInstance) Delete(ctx context.Context, request resource.DeleteRequest, response *resource.DeleteResponse)

func (*CtyunMysqlInstance) ImportState

func (*CtyunMysqlInstance) ListLoop

func (*CtyunMysqlInstance) Metadata

func (*CtyunMysqlInstance) Read

func (c *CtyunMysqlInstance) Read(ctx context.Context, request resource.ReadRequest, response *resource.ReadResponse)

func (*CtyunMysqlInstance) RunningStatusLoop

func (c *CtyunMysqlInstance) RunningStatusLoop(ctx context.Context, config *CtyunMysqlInstanceConfig, runningStatus int32, orderStatus int32, loopCount ...int) (err error)

func (*CtyunMysqlInstance) Schema

func (c *CtyunMysqlInstance) Schema(ctx context.Context, request resource.SchemaRequest, response *resource.SchemaResponse)

func (*CtyunMysqlInstance) StartedLoop

func (c *CtyunMysqlInstance) StartedLoop(ctx context.Context, state *CtyunMysqlInstanceConfig, loopCount ...int) (err error)

func (*CtyunMysqlInstance) Update

func (c *CtyunMysqlInstance) Update(ctx context.Context, request resource.UpdateRequest, response *resource.UpdateResponse)

func (*CtyunMysqlInstance) UpgradeLoop

func (c *CtyunMysqlInstance) UpgradeLoop(ctx context.Context, state *CtyunMysqlInstanceConfig, plan *CtyunMysqlInstanceConfig, loopCount ...int) (err error)

func (*CtyunMysqlInstance) UpgradeStorageLoop

func (c *CtyunMysqlInstance) UpgradeStorageLoop(ctx context.Context, state *CtyunMysqlInstanceConfig, plan *CtyunMysqlInstanceConfig, NodeType string) (err error)

type CtyunMysqlInstanceConfig

type CtyunMysqlInstanceConfig struct {
	CycleType                   types.String `tfsdk:"cycle_type"`                     // 计费模式: 支持on_demand和month
	RegionID                    types.String `tfsdk:"region_id"`                      // 资源池Id
	VpcID                       types.String `tfsdk:"vpc_id"`                         // 虚拟私有云Id
	FlavorName                  types.String `tfsdk:"flavor_name"`                    // 规格名称
	SubnetID                    types.String `tfsdk:"subnet_id"`                      // 子网Id
	SecurityGroupID             types.String `tfsdk:"security_group_id"`              // 安全组
	Name                        types.String `tfsdk:"name"`                           // 集群名称
	Password                    types.String `tfsdk:"password"`                       // 管理员密码(RSA公钥加密)
	CycleCount                  types.Int32  `tfsdk:"cycle_count"`                    // 购买时长:单位月(范围:1-12,24,36)
	AutoRenew                   types.Bool   `tfsdk:"auto_renew"`                     // 自动续订状态
	ProdID                      types.String `tfsdk:"prod_id"`                        // 产品id
	MasterOrderID               types.String `tfsdk:"master_order_id"`                // 订单id
	InstID                      types.String `tfsdk:"inst_id"`                        // 实例id
	ProjectID                   types.String `tfsdk:"project_id"`                     // 项目id
	ProdRunningStatus           types.Int32  `tfsdk:"prod_running_status"`            // 以查询实例列表为主,0.正常 1.重启中 2.备份中 3.恢复中 4.修改参数中 5.应用参数组中 6&7.扩容中 8.修改端口中 9.迁移中 10.重置密码中
	Vip                         types.String `tfsdk:"vip"`                            // 虚拟IP地址
	WritePort                   types.Int32  `tfsdk:"write_port"`                     // 写数据端口
	ReadPort                    types.String `tfsdk:"read_port"`                      // 读端口
	ProdDbEngine                types.String `tfsdk:"prod_db_engine"`                 // 数据库引擎
	EIP                         types.String `tfsdk:"eip"`                            // 弹性ip
	EipStatus                   types.Int32  `tfsdk:"eip_status"`                     // 弹性ip状态 0->unbind,1->bind,2->binding
	SSlStatus                   types.Int32  `tfsdk:"ssl_status"`                     // Ssl状态 0->off,1->on
	NewMysqlVersion             types.String `tfsdk:"new_mysql_version"`              // mysql版本
	AuditLogStatus              types.Int32  `tfsdk:"audit_log_status"`               // 日志审计开关
	InstReleaseProtectionStatus types.Int32  `tfsdk:"inst_release_protection_status"` // 实例释放保护开关 1:on,0:off
	PauseEnable                 types.Bool   `tfsdk:"pause_enable"`                   // 是否允许暂停
	MysqlPort                   types.String `tfsdk:"mysql_port"`                     // 数据库端口
	SecurityGroupStatus         types.Int32  `tfsdk:"security_group_status"`          // 安全组状态 0->normal, 1->changing, 2->deleted
	StorageType                 types.String `tfsdk:"storage_type"`                   // 存储类型:SSD, SATA, SAS, SSD-genric, FAST-SSD
	StorageSpace                types.Int32  `tfsdk:"storage_space"`                  // 存储空间(单位:GB,范围100到32768)
	BackupStorageType           types.String `tfsdk:"backup_storage_type"`            // 备份存储空间磁盘类型
	BackupStorageSpace          types.Int32  `tfsdk:"backup_storage_space"`           // 备份节点,存储空间扩容使用
	AvailabilityZoneInfo        types.List   `tfsdk:"availability_zone_info"`         // 可用区信息
	RunningControl              types.String `tfsdk:"running_control"`                //
	ProdOrderStatus             types.Int32  `tfsdk:"prod_order_status"`
	ID                          types.String `tfsdk:"id"` // 实例id
	// contains filtered or unexported fields
}

type CtyunMysqlInstancesConfig

type CtyunMysqlInstancesConfig struct {
	RegionID       types.String         `tfsdk:"region_id"`      // 区域id
	ProjectID      types.String         `tfsdk:"project_id"`     //项目id
	PageNow        types.Int32          `tfsdk:"page_now"`       // 当前页,必填
	PageSize       types.Int32          `tfsdk:"page_size"`      // 单页记录条数,必填
	TagVOList      types.List           `tfsdk:"tag_vo_list"`    // 标签列表,选填
	ResDbEngine    types.String         `tfsdk:"res_db_engine"`  // 数据库引擎,选填
	ProdInstName   types.String         `tfsdk:"prod_inst_name"` // 实例名称,选填
	Vip            types.String         `tfsdk:"vip"`            // 连接ip,选填
	MysqlInstances []MysqlInstanceModel `tfsdk:"mysql_instances"`
}

type CtyunMysqlSpecInfoModel

type CtyunMysqlSpecInfoModel struct {
	ProdId           types.Int64      `tfsdk:"prod_id"`             // 产品id
	ProdCode         types.String     `tfsdk:"prod_code"`           // 产品编码
	ProdSpecName     types.String     `tfsdk:"prod_spec_name"`      // 产品名称
	ProdSpecDesc     types.String     `tfsdk:"prod_spec_desc"`      // 产品描述
	InstanceDesc     types.String     `tfsdk:"instance_desc"`       // 实例描述
	ProdVersion      types.String     `tfsdk:"prod_version"`        // 产品版本
	HostSpec         types.String     `tfsdk:"host_spec"`           // 主机规格
	LvsSpec          types.String     `tfsdk:"lvs_spec"`            // lvs规格
	InstSpecInfoList []InstSpecInfo   `tfsdk:"inst_spec_info_list"` // AZ支持的产品规格信息,以及规格代S6/S7
	ProdHostConfig   []ProdHostConfig `tfsdk:"prod_host_config"`    //host实例
}

type CtyunMysqlSpecs

type CtyunMysqlSpecs struct {
	// contains filtered or unexported fields
}

func NewCtyunMysqlSpecs

func NewCtyunMysqlSpecs() *CtyunMysqlSpecs

func (*CtyunMysqlSpecs) Configure

func (*CtyunMysqlSpecs) Metadata

func (*CtyunMysqlSpecs) Read

func (c *CtyunMysqlSpecs) Read(ctx context.Context, request datasource.ReadRequest, response *datasource.ReadResponse)

func (*CtyunMysqlSpecs) Schema

type CtyunMysqlSpecsConfig

type CtyunMysqlSpecsConfig struct {
	RegionID       types.String              `tfsdk:"region_id"`
	InstanceSeries types.String              `tfsdk:"instance_series"`
	ProjectID      types.String              `tfsdk:"project_id"`
	Specs          []CtyunMysqlSpecInfoModel `tfsdk:"specs"`
}

type CtyunMysqlWhiteList

type CtyunMysqlWhiteList struct {
	// contains filtered or unexported fields
}

func (*CtyunMysqlWhiteList) Configure

func (*CtyunMysqlWhiteList) Create

func (*CtyunMysqlWhiteList) CreateMysqlAccessWhiteList

func (c *CtyunMysqlWhiteList) CreateMysqlAccessWhiteList(ctx context.Context, config *CtyunMysqlWhiteListConfig) (err error)

func (*CtyunMysqlWhiteList) Delete

func (*CtyunMysqlWhiteList) ImportState

func (*CtyunMysqlWhiteList) Metadata

func (*CtyunMysqlWhiteList) Read

func (c *CtyunMysqlWhiteList) Read(ctx context.Context, request resource.ReadRequest, response *resource.ReadResponse)

func (*CtyunMysqlWhiteList) Schema

func (*CtyunMysqlWhiteList) Update

type CtyunMysqlWhiteListConfig

type CtyunMysqlWhiteListConfig struct {
	ProjectID           types.String `tfsdk:"project_id"`
	RegionID            types.String `tfsdk:"region_id"`
	ProdInstID          types.String `tfsdk:"prod_inst_id"`
	GroupName           types.String `tfsdk:"group_name"`
	GroupWhiteList      types.Set    `tfsdk:"group_white_list"`
	GroupWhiteListCount types.Int32  `tfsdk:"group_white_list_count"`
	CreatedTime         types.String `tfsdk:"created_time"`
	UpdatedTime         types.String `tfsdk:"updated_time"`
	AccessMachineType   types.String `tfsdk:"access_machine_type"` // 访问类型
}

type CtyunMysqlWhiteLists

type CtyunMysqlWhiteLists struct {
	// contains filtered or unexported fields
}

func NewCtyunMysqlWhiteLists

func NewCtyunMysqlWhiteLists() *CtyunMysqlWhiteLists

func (*CtyunMysqlWhiteLists) Configure

func (*CtyunMysqlWhiteLists) Metadata

func (*CtyunMysqlWhiteLists) Read

func (*CtyunMysqlWhiteLists) Schema

type InstSpecInfo

type InstSpecInfo struct {
	SpecId              types.String `tfsdk:"spec_id"`               // 废弃
	ProdPerformanceSpec types.String `tfsdk:"prod_performance_spec"` // 规格名称
	AzList              types.String `tfsdk:"az_list"`               // 该规格支持的AZ列表
	SpecName            types.String `tfsdk:"spec_name"`             // 主机世代完整名称
	CpuType             types.String `tfsdk:"cpu_type"`              // cpu类型
	HostType            types.String `tfsdk:"host_type"`             // 主机世代缩写
	MinRate             types.String `tfsdk:"min_rate"`              // 带宽下限
	MaxRate             types.String `tfsdk:"max_rate"`              // 带宽上限
}

type MysqlInstanceModel

type MysqlInstanceModel struct {
	ProdInstName                types.String `tfsdk:"prod_inst_name"`                 // 实例名称
	OuterProdInstId             types.String `tfsdk:"outer_prod_inst_id"`             // 实例ID
	ProdBillType                types.Int32  `tfsdk:"prod_bill_type"`                 // 计费模式 0:按月计费,1:按天计费,2:按年计费,3:按流量计费 4按需计费
	ProdType                    types.Int32  `tfsdk:"prod_type"`                      // 0:单机,1:一主一从,2:一主两从,4:只读实例
	ProdRunningStatus           types.Int32  `tfsdk:"prod_running_status"`            // 0.正常 1.重启中 2.备份中 3.恢复中 4.修改参数中 5.应用参数组中 6.扩容预处理中 7.扩容预处理完成 8.修改端口中 9.迁移中 10.重置密码中 11.修改数据复制方式中 12.缩容预处理中 13.缩容预处理完成 15.内核小版本升级 17.迁移可用区中 18.修改备份配置中 20.停止中 21.已停止 22.启动中 26.白名单配置中
	ProdOrderStatus             types.Int32  `tfsdk:"prod_order_status"`              // 0.正常 1.欠费暂停 2.已注销 3.创建中 4.施工失败 5.到期退订状态 6.新增的状态-openApi暂停 7.创建完成等待变更单 8.待注销 9.手动暂停 10.手动退订
	Alive                       types.Int32  `tfsdk:"alive"`                          // 运行状态 0正常 -1异常
	Vip                         types.String `tfsdk:"vip"`                            // 虚拟IP地址
	Vip6                        types.String `tfsdk:"vip6"`                           // 虚拟IPv6地址
	WritePort                   types.String `tfsdk:"write_port"`                     // 写数据端口
	ReadPort                    types.String `tfsdk:"read_port"`                      // 读端口
	CreateTime                  types.Int64  `tfsdk:"create_time"`                    // 创建时间
	ExpireTime                  types.Int64  `tfsdk:"expire_time"`                    // 到期时间
	MachineSpec                 types.String `tfsdk:"machine_spec"`                   // 实例规格
	ProdDbEngine                types.String `tfsdk:"prod_db_engine"`                 // 数据库引擎
	DiskSize                    types.Int32  `tfsdk:"disk_size"`                      // 存储空间大小 单位G
	NewMysqlVersion             types.String `tfsdk:"new_mysql_version"`              // mysql版本
	DiskType                    types.String `tfsdk:"disk_type"`                      // 存储类型
	BackupDiskUsedRated         types.Int32  `tfsdk:"backup_disk_used_rated"`         // 备份空间使用率
	NetName                     types.String `tfsdk:"net_name"`                       // 虚拟私有云
	Subnet                      types.String `tfsdk:"subnet"`                         // 子网名
	ProdInstFlag                types.String `tfsdk:"prod_inst_flag"`                 // 实例标签
	OrderId                     types.Int64  `tfsdk:"order_id"`                       // 订单ID
	CanOperate                  types.Int32  `tfsdk:"can_operate"`                    // 是否可升级
	TplName                     types.String `tfsdk:"tpl_name"`                       // 实例模板名
	AuditLogStatus              types.Int32  `tfsdk:"audit_log_status"`               // 日志审计开关
	ParameterGroupUsed          types.String `tfsdk:"parameter_group_used"`           // 参数模板名
	VpcID                       types.String `tfsdk:"vpc_id"`                         // 虚拟私有云id
	Usezos                      types.Int32  `tfsdk:"use_zos"`                        // 是否使用对象存储
	ProdInstId                  types.Int64  `tfsdk:"prod_inst_id"`                   // 内部实例id
	DbMysqlVersion              types.String `tfsdk:"db_mysql_version"`               // mysql版本
	Resources                   types.String `tfsdk:"resources"`                      // 订单来源
	UserId                      types.Int64  `tfsdk:"user_id"`                        // 用户id
	ProdBillTime                types.Int32  `tfsdk:"prod_bill_time"`                 // 计费模式类型
	TenantId                    types.String `tfsdk:"tenant_id"`                      // 租户id
	TplCode                     types.String `tfsdk:"tpl_code"`                       // 实例模板code
	ProdId                      types.Int64  `tfsdk:"prod_id"`                        // 产品id
	ProdInstSetName             types.String `tfsdk:"prod_inst_set_name"`             // 实例set名称
	SecurityGroup               types.String `tfsdk:"security_group"`                 // 安全组名
	ProjectID                   types.String `tfsdk:"project_id"`                     // 项目id
	ProjectName                 types.String `tfsdk:"project_name"`                   // 项目名
	PauseEnable                 types.Bool   `tfsdk:"pause_enable"`                   // 是否允许暂停
	InstReleaseProtectionStatus types.Int32  `tfsdk:"inst_release_protection_status"` // 实例释放保护开关
	LastManualBackUp            types.Int64  `tfsdk:"last_manual_back_up"`            // 最后系统全备id
	RenewalEnable               types.Bool   `tfsdk:"renewal_enable"`                 // 是否允许续订
	IsMGR                       types.Int32  `tfsdk:"is_mgr"`                         // 是否为mgr实例
}

type ProdHostConfig

type ProdHostConfig struct {
	HostTypeName         types.String `tfsdk:"host_type_name"`         // 类型名称
	HostType             types.String `tfsdk:"host_type"`              // 节点类型,当类型为mysql时,取值范围master(主节点)、readnode(只读节点)
	ProdPerformanceSpecs types.String `tfsdk:"prod_performance_specs"` // 支持的性能指标规格列表
	HostDefaultNum       types.Int32  `tfsdk:"host_default_num"`       // 节点默认数量
}

type TageVoModel

type TageVoModel struct {
	Value   types.String `tfsdk:"value"`    // 标签value,选填
	Key     types.String `tfsdk:"key"`      // 标签key,选填
	LabelID types.String `tfsdk:"label_id"` // k-v的唯一标识,选填
}

type UpdatedAZModel

type UpdatedAZModel struct {
	AvailabilityZoneName  types.String `tfsdk:"availability_zone_name"`  // 资源池可用区名称
	AvailabilityZoneCount types.Int32  `tfsdk:"availability_zone_count"` // 资源池可用区总数
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL