mirror of
https://github.com/tnb-labs/panel.git
synced 2026-09-01 14:55:12 +08:00
e8f7811aba
website create 未传网站类型导致必然失败,补全类型、代理地址、 数据库、备注等参数,并在进入 biz 层前统一走验证器校验。 新增命令: - firewall status/on/off/list/port - cert list/renew - restore panel - website cert/list,user create/delete - backup list,app list,cron list/run/status - database list-server 调整: - 密码取值改为参数 > ACEPANEL_PASSWORD > 交互输入(不回显) - 补 bind-domain/bind-ip/bind-ua 的 on 子命令 - 新增全局 --json,接入全部 list 命令 - port 支持 flag 写法,info 支持 -u 指定用户 - 位置参数命令补 ArgsUsage 修复: - cutoff clear 清理远程日志时目录与上传路径不一致,导致远程切割 日志从未被清理,ClearStorageExpired 改为接收目标目录 - restore 缺少 panel 分支,从 FixPanel 抽出 restorePanel 复用 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
91 lines
3.8 KiB
Go
91 lines
3.8 KiB
Go
// Code generated by Wire. DO NOT EDIT.
|
|
|
|
//go:generate go run -mod=mod github.com/google/wire/cmd/wire
|
|
//go:build !wireinject
|
|
// +build !wireinject
|
|
|
|
package main
|
|
|
|
import (
|
|
"github.com/acepanel/panel/v3/internal/app"
|
|
"github.com/acepanel/panel/v3/internal/biz"
|
|
"github.com/acepanel/panel/v3/internal/bootstrap"
|
|
"github.com/acepanel/panel/v3/internal/command"
|
|
"github.com/acepanel/panel/v3/internal/data"
|
|
"github.com/acepanel/panel/v3/internal/service"
|
|
)
|
|
|
|
import (
|
|
_ "time/tzdata"
|
|
)
|
|
|
|
// Injectors from wire.go:
|
|
|
|
func initCli() (*app.Cli, func(), error) {
|
|
config, err := bootstrap.NewConf()
|
|
if err != nil {
|
|
return nil, nil, err
|
|
}
|
|
locale := bootstrap.NewT(config)
|
|
db, err := bootstrap.NewDB(config)
|
|
if err != nil {
|
|
return nil, nil, err
|
|
}
|
|
logger, cleanup, err := bootstrap.NewLogger(config)
|
|
if err != nil {
|
|
return nil, nil, err
|
|
}
|
|
slogLogger := bootstrap.NewSlog(logger)
|
|
appRepo := data.NewAppRepo(config, db, locale, slogLogger)
|
|
cacheRepo := data.NewCacheRepo(db)
|
|
notifyChannelRepo := data.NewNotifyChannelRepo(db)
|
|
settingRepo := data.NewSettingRepo(config, db)
|
|
notifyUsecase := biz.NewNotifyUsecase(locale, slogLogger, notifyChannelRepo, settingRepo)
|
|
taskRunner := bootstrap.NewRunner(notifyUsecase, db, locale, slogLogger)
|
|
taskRepo := data.NewTaskRepo(db, locale, slogLogger, taskRunner)
|
|
appUsecase := biz.NewAppUsecase(locale, appRepo, cacheRepo, taskRepo)
|
|
websiteRepo := data.NewWebsiteRepo(db, locale, settingRepo)
|
|
backupRepo := data.NewBackupRepo(config, db, locale, slogLogger, settingRepo, websiteRepo)
|
|
backupUsecase := biz.NewBackupUsecase(notifyUsecase, locale, slogLogger, backupRepo)
|
|
cacheUsecase := biz.NewCacheUsecase(cacheRepo)
|
|
certAccountRepo := data.NewCertAccountRepo(db, locale, slogLogger)
|
|
userRepo := data.NewUserRepo(db, locale)
|
|
certAccountUsecase := biz.NewCertAccountUsecase(locale, slogLogger, certAccountRepo, userRepo)
|
|
certRepo := data.NewCertRepo(db, locale, slogLogger)
|
|
certUsecase := biz.NewCertUsecase(locale, slogLogger, certRepo, settingRepo)
|
|
cronRepo := data.NewCronRepo(db, locale)
|
|
cronUsecase := biz.NewCronUsecase(cronRepo, slogLogger)
|
|
databaseServerRepo := data.NewDatabaseServerRepo(db)
|
|
databaseServerUsecase := biz.NewDatabaseServerUsecase(locale, slogLogger, databaseServerRepo)
|
|
settingUsecase := biz.NewSettingUsecase(locale, slogLogger, settingRepo, taskRepo)
|
|
userPasskeyRepo := data.NewUserPasskeyRepo(db)
|
|
userPasskeyUsecase := biz.NewUserPasskeyUsecase(userPasskeyRepo)
|
|
userUsecase := biz.NewUserUsecase(locale, slogLogger, userRepo)
|
|
databaseUserRepo := data.NewDatabaseUserRepo(db)
|
|
databaseUserUsecase := biz.NewDatabaseUserUsecase(slogLogger, databaseServerRepo, databaseUserRepo)
|
|
databaseRepo := data.NewDatabaseRepo(db)
|
|
databaseUsecase := biz.NewDatabaseUsecase(databaseUserUsecase, locale, slogLogger, databaseRepo, databaseServerRepo)
|
|
tamperRepo, err := data.NewTamperRepo(db)
|
|
if err != nil {
|
|
cleanup()
|
|
return nil, nil, err
|
|
}
|
|
tamperUsecase := biz.NewTamperUsecase(notifyUsecase, settingUsecase, locale, slogLogger, tamperRepo)
|
|
websiteStatRepo, err := data.NewWebsiteStatRepo()
|
|
if err != nil {
|
|
cleanup()
|
|
return nil, nil, err
|
|
}
|
|
websiteStatUsecase := biz.NewWebsiteStatUsecase(websiteStatRepo)
|
|
websiteUsecase := biz.NewWebsiteUsecase(certAccountUsecase, certUsecase, databaseUsecase, databaseUserUsecase, tamperUsecase, websiteStatUsecase, locale, slogLogger, databaseServerRepo, websiteRepo)
|
|
validator := bootstrap.NewValidator(config, db)
|
|
cliService := service.NewCliService(appUsecase, backupUsecase, cacheUsecase, certAccountUsecase, certUsecase, cronUsecase, databaseServerUsecase, notifyUsecase, settingUsecase, userPasskeyUsecase, userUsecase, websiteUsecase, config, db, locale, validator)
|
|
v := command.Commands(locale, cliService)
|
|
cliCommand := bootstrap.NewCli(locale, v)
|
|
gormigrate := bootstrap.NewMigrate(db)
|
|
cli := app.NewCli(cliCommand, gormigrate)
|
|
return cli, func() {
|
|
cleanup()
|
|
}, nil
|
|
}
|