主要变更: - RDP 远程桌面:新增 backend/pkg/rdp(RDP 引擎 + credssp/display/rle/trace)、 backend/controller/rdp*(连接/凭证/文件/会话/实时)、frontend RDP 组件与 API - Windows SMB 文件传输:backend/pkg/winsmb - 云账单同步:backend/pkg/billingsync + billing_sync/aliyun_billing,前端账单详情 - Agent CLI Kubernetes 工具:kubernetes_action/get、pod_execute/logs - 服务器导入助手:server_import_helpers、ImportCredentialSettings - 国际化与组件重构(cloud/deploy/monitor/server/system 等多模块) - 清理编译产物二进制:移除 backend/server、backend/agent/bin/aiops-agent-* - .gitignore:新增 backend/agent/ 与 .cache/(避免 334MB go-build 缓存误入库) Co-Authored-By: Claude <noreply@anthropic.com>
28 lines
814 B
Go
28 lines
814 B
Go
package cloud
|
|
|
|
// CloudBillingRecord 云账单同步记录(跨平台统一结构) // Logan.Li
|
|
type CloudBillingRecord struct {
|
|
BillingDate string `json:"billing_date"`
|
|
Provider string `json:"provider"`
|
|
Cost float64 `json:"cost"`
|
|
Currency string `json:"currency"`
|
|
Service string `json:"service"`
|
|
Region string `json:"region"`
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
// BillingFetcher 云账单拉取接口
|
|
type BillingFetcher interface {
|
|
FetchDailyBill(billingDate string) ([]CloudBillingRecord, error)
|
|
}
|
|
|
|
// NewBillingFetcher 根据云厂商创建账单拉取器
|
|
func NewBillingFetcher(provider, accessKey, secretKey string) BillingFetcher {
|
|
switch provider {
|
|
case "aliyun":
|
|
if p := NewAliyunProvider(accessKey, secretKey); p != nil {
|
|
return p
|
|
}
|
|
}
|
|
return nil
|
|
} |