dto

package
v1.3.2 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2023 License: GPL-3.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AppToolMap = map[string]string{
	"mysql": "phpmyadmin",
	"redis": "redis-commander",
}
View Source
var ScopeKeyMap = map[NginxKey][]string{
	Index:     {"index"},
	LimitConn: {"limit_conn", "limit_rate", "limit_conn_zone"},
	SSL:       {"ssl_certificate", "ssl_certificate_key"},
	HttpPer:   {"server_names_hash_bucket_size", "client_header_buffer_size", "client_max_body_size", "keepalive_timeout", "gzip", "gzip_min_length", "gzip_comp_level"},
}
View Source
var StaticFileKeyMap = map[NginxKey]struct {
}{
	SSL:        {},
	CACHE:      {},
	ProxyCache: {},
}

Functions

This section is empty.

Types

type AddrRuleOperate added in v1.1.0

type AddrRuleOperate struct {
	Operation string `json:"operation" validate:"required,oneof=add remove"`
	Address   string `json:"address"  validate:"required"`
	Strategy  string `json:"strategy" validate:"required,oneof=accept drop"`
}

type AddrRuleUpdate added in v1.1.0

type AddrRuleUpdate struct {
	OldRule AddrRuleOperate `json:"oldRule"`
	NewRule AddrRuleOperate `json:"newRule"`
}

type AppConfigVersion added in v1.3.0

type AppConfigVersion struct {
	Name                string      `json:"name"`
	LastModified        int         `json:"lastModified"`
	DownloadUrl         string      `json:"downloadUrl"`
	DownloadCallBackUrl string      `json:"downloadCallBackUrl"`
	AppForm             interface{} `json:"additionalProperties"`
}

type AppDatabase

type AppDatabase struct {
	ServiceName string `json:"PANEL_DB_HOST"`
	DbName      string `json:"PANEL_DB_NAME"`
	DbUser      string `json:"PANEL_DB_USER"`
	Password    string `json:"PANEL_DB_USER_PASSWORD"`
}

type AppDefine

type AppDefine struct {
	Icon         string `json:"icon"`
	Name         string `json:"name"`
	ReadMe       string `json:"readMe"`
	LastModified int    `json:"lastModified"`

	AppProperty AppProperty        `json:"additionalProperties"`
	Versions    []AppConfigVersion `json:"versions"`
}

type AppForm

type AppForm struct {
	FormFields []AppFormFields `json:"formFields"`
}

type AppFormFields

type AppFormFields struct {
	Type     string         `json:"type"`
	LabelZh  string         `json:"labelZh"`
	LabelEn  string         `json:"labelEn"`
	Required bool           `json:"required"`
	Default  interface{}    `json:"default"`
	EnvKey   string         `json:"envKey"`
	Disabled bool           `json:"disabled"`
	Edit     bool           `json:"edit"`
	Rule     string         `json:"rule"`
	Multiple bool           `json:"multiple"`
	Child    interface{}    `json:"child"`
	Values   []AppFormValue `json:"values"`
}

type AppFormValue added in v1.0.3

type AppFormValue struct {
	Label string `json:"label"`
	Value string `json:"value"`
}

type AppList

type AppList struct {
	Valid        bool     `json:"valid"`
	Violations   []string `json:"violations"`
	LastModified int      `json:"lastModified"`

	Apps  []AppDefine     `json:"apps"`
	Extra ExtraProperties `json:"additionalProperties"`
}

type AppOssConfig

type AppOssConfig struct {
	Version string `json:"version"`
	Package string `json:"package"`
}

type AppProperty added in v1.3.0

type AppProperty struct {
	Name               string   `json:"name"`
	Type               string   `json:"type"`
	Tags               []string `json:"tags"`
	ShortDescZh        string   `json:"shortDescZh"`
	ShortDescEn        string   `json:"shortDescEn"`
	Key                string   `json:"key"`
	Required           []string `json:"Required"`
	CrossVersionUpdate bool     `json:"crossVersionUpdate"`
	Limit              int      `json:"limit"`
	Recommend          int      `json:"recommend"`
	Website            string   `json:"website"`
	Github             string   `json:"github"`
	Document           string   `json:"document"`
}

type AppResource

type AppResource struct {
	Type string `json:"type"`
	Name string `json:"name"`
}

type AppVersion

type AppVersion struct {
	Version  string `json:"version"`
	DetailId uint   `json:"detailId"`
}

type AuthParam

type AuthParam struct {
	RootPassword string `json:"PANEL_DB_ROOT_PASSWORD"`
}

type BackupDB

type BackupDB struct {
	MysqlName string `json:"mysqlName" validate:"required"`
	DBName    string `json:"dbName" validate:"required"`
}

type BackupInfo

type BackupInfo struct {
	ID        uint      `json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	Type      string    `json:"type"`
	Bucket    string    `json:"bucket"`
	Vars      string    `json:"vars"`
}

type BackupOperate

type BackupOperate struct {
	ID         uint   `json:"id"`
	Type       string `json:"type" validate:"required"`
	Bucket     string `json:"bucket"`
	AccessKey  string `json:"accessKey"`
	Credential string `json:"credential"`
	Vars       string `json:"vars" validate:"required"`
}

type BackupRecords

type BackupRecords struct {
	ID         uint      `json:"id"`
	CreatedAt  time.Time `json:"createdAt"`
	Source     string    `json:"source"`
	BackupType string    `json:"backupType"`
	FileDir    string    `json:"fileDir"`
	FileName   string    `json:"fileName"`
}

type BackupSearch

type BackupSearch struct {
	PageInfo
	Type       string `json:"type" validate:"required,oneof=website mysql"`
	Name       string `json:"name" validate:"required"`
	DetailName string `json:"detailName"`
}

type BackupSearchFile

type BackupSearchFile struct {
	Type string `json:"type" validate:"required"`
}

type BatchDelete

type BatchDelete struct {
	Names []string `json:"names" validate:"required"`
}

type BatchDeleteReq

type BatchDeleteReq struct {
	Ids []uint `json:"ids" validate:"required"`
}

type BatchRuleOperate added in v1.1.0

type BatchRuleOperate struct {
	Type  string            `json:"type" validate:"required"`
	Rules []PortRuleOperate `json:"rules"`
}

type CaptchaResponse

type CaptchaResponse struct {
	CaptchaID string `json:"captchaID"`
	ImagePath string `json:"imagePath"`
}

type ChangeDBInfo

type ChangeDBInfo struct {
	ID    uint   `json:"id"`
	Value string `json:"value" validate:"required"`
}

type ChangeHostGroup

type ChangeHostGroup struct {
	ID      uint `json:"id" validate:"required"`
	GroupID uint `json:"groupID" validate:"required"`
}

type CleanLog

type CleanLog struct {
	LogType string `json:"logType" validate:"required,oneof=login operation"`
}

type CommandInfo

type CommandInfo struct {
	ID      uint   `json:"id"`
	Name    string `json:"name"`
	Command string `json:"command"`
}

type CommandOperate

type CommandOperate struct {
	ID      uint   `json:"id"`
	Name    string `json:"name" validate:"required"`
	Command string `json:"command" validate:"required"`
}

type CommonBackup

type CommonBackup struct {
	Type       string `json:"type" validate:"required,oneof=app mysql redis website"`
	Name       string `json:"name"`
	DetailName string `json:"detailName"`
}

type CommonRecover

type CommonRecover struct {
	Source     string `json:"source" validate:"required,oneof=OSS S3 SFTP MINIO LOCAL COS KODO"`
	Type       string `json:"type" validate:"required,oneof=app mysql redis website"`
	Name       string `json:"name"`
	DetailName string `json:"detailName"`
	File       string `json:"file"`
}

type ComposeContainer

type ComposeContainer struct {
	ContainerID string `json:"containerID"`
	Name        string `json:"name"`
	CreateTime  string `json:"createTime"`
	State       string `json:"state"`
}

type ComposeCreate

type ComposeCreate struct {
	Name     string `json:"name"`
	From     string `json:"from" validate:"required,oneof=edit path template"`
	File     string `json:"file"`
	Path     string `json:"path"`
	Template uint   `json:"template"`
}

type ComposeInfo

type ComposeInfo struct {
	Name            string             `json:"name"`
	CreatedAt       string             `json:"createdAt"`
	CreatedBy       string             `json:"createdBy"`
	ContainerNumber int                `json:"containerNumber"`
	ConfigFile      string             `json:"configFile"`
	Workdir         string             `json:"workdir"`
	Path            string             `json:"path"`
	Containers      []ComposeContainer `json:"containers"`
}

type ComposeOperation

type ComposeOperation struct {
	Name      string `json:"name" validate:"required"`
	Path      string `json:"path" validate:"required"`
	Operation string `json:"operation" validate:"required,oneof=start stop down"`
	WithFile  bool   `json:"withFile"`
}

type ComposeTemplateCreate

type ComposeTemplateCreate struct {
	Name        string `json:"name" validate:"required"`
	Description string `json:"description"`
	Content     string `json:"content"`
}

type ComposeTemplateInfo

type ComposeTemplateInfo struct {
	ID          uint      `json:"id"`
	CreatedAt   time.Time `json:"createdAt"`
	Name        string    `json:"name"`
	Description string    `json:"description"`
	Content     string    `json:"content"`
}

type ComposeTemplateUpdate

type ComposeTemplateUpdate struct {
	ID          uint   `json:"id"`
	Description string `json:"description"`
	Content     string `json:"content"`
}

type ComposeUpdate

type ComposeUpdate struct {
	Name    string `json:"name" validate:"required"`
	Path    string `json:"path" validate:"required"`
	Content string `json:"content" validate:"required"`
}

type ContainerCreate

type ContainerCreate struct {
	Name            string         `json:"name"`
	Image           string         `json:"image"`
	PublishAllPorts bool           `json:"publishAllPorts"`
	ExposedPorts    []PortHelper   `json:"exposedPorts"`
	Cmd             []string       `json:"cmd"`
	NanoCPUs        int64          `json:"nanoCPUs"`
	Memory          int64          `json:"memory"`
	AutoRemove      bool           `json:"autoRemove"`
	Volumes         []VolumeHelper `json:"volumes"`
	Labels          []string       `json:"labels"`
	Env             []string       `json:"env"`
	RestartPolicy   string         `json:"restartPolicy"`
}

type ContainerExec

type ContainerExec struct {
	ContainerName string      `json:"containerName"`
	DbParam       AppDatabase `json:"dbParam"`
	Auth          AuthParam   `json:"auth"`
}

type ContainerInfo

type ContainerInfo struct {
	ContainerID string `json:"containerID"`
	Name        string `json:"name"`
	ImageId     string `json:"imageID"`
	ImageName   string `json:"imageName"`
	CreateTime  string `json:"createTime"`
	State       string `json:"state"`
	RunTime     string `json:"runTime"`

	CPUPercent    float64  `json:"cpuPercent"`
	MemoryPercent float64  `json:"memoryPercent"`
	Ports         []string `json:"ports"`

	IsFromApp     bool `json:"isFromApp"`
	IsFromCompose bool `json:"isFromCompose"`
}

type ContainerLog

type ContainerLog struct {
	ContainerID string `json:"containerID" validate:"required"`
	Mode        string `json:"mode" validate:"required"`
}

type ContainerOperation

type ContainerOperation struct {
	Name      string `json:"name" validate:"required"`
	Operation string `json:"operation" validate:"required,oneof=start stop restart kill pause unpause rename remove"`
	NewName   string `json:"newName"`
}

type ContainerPrune added in v1.3.0

type ContainerPrune struct {
	PruneType  string `json:"pruneType" validate:"required,oneof=container image volume network"`
	WithTagAll bool   `josn:"withTagAll"`
}

type ContainerPruneReport added in v1.3.0

type ContainerPruneReport struct {
	DeletedNumber  int `json:"deletedNumber"`
	SpaceReclaimed int `json:"spaceReclaimed"`
}

type ContainterStats

type ContainterStats struct {
	CPUPercent float64 `json:"cpuPercent"`
	Memory     float64 `json:"memory"`
	Cache      float64 `json:"cache"`
	IORead     float64 `json:"ioRead"`
	IOWrite    float64 `json:"ioWrite"`
	NetworkRX  float64 `json:"networkRX"`
	NetworkTX  float64 `json:"networkTX"`

	ShotTime time.Time `json:"shotTime"`
}

type CronjobBatchDelete added in v1.1.0

type CronjobBatchDelete struct {
	CleanData bool   `json:"cleanData"`
	IDs       []uint `json:"ids"`
}

type CronjobClean added in v1.1.0

type CronjobClean struct {
	CleanData bool `json:"cleanData"`
	CronjobID uint `json:"cronjobID" validate:"required"`
}

type CronjobCreate

type CronjobCreate struct {
	Name     string `json:"name" validate:"required"`
	Type     string `json:"type" validate:"required"`
	SpecType string `json:"specType" validate:"required"`
	Week     int    `json:"week" validate:"number,max=7,min=1"`
	Day      int    `json:"day" validate:"number"`
	Hour     int    `json:"hour" validate:"number"`
	Minute   int    `json:"minute" validate:"number"`
	Second   int    `json:"second" validate:"number"`

	Script         string `json:"script"`
	Website        string `json:"website"`
	ExclusionRules string `json:"exclusionRules"`
	DBName         string `json:"dbName"`
	URL            string `json:"url"`
	SourceDir      string `json:"sourceDir"`
	KeepLocal      bool   `json:"keepLocal"`
	TargetDirID    int    `json:"targetDirID"`
	RetainCopies   int    `json:"retainCopies" validate:"number,min=1"`
}

type CronjobDownload

type CronjobDownload struct {
	RecordID        uint `json:"recordID" validate:"required"`
	BackupAccountID uint `json:"backupAccountID" validate:"required"`
}

type CronjobInfo

type CronjobInfo struct {
	ID       uint   `json:"id"`
	Name     string `json:"name"`
	Type     string `json:"type"`
	SpecType string `json:"specType"`
	Week     int    `json:"week"`
	Day      int    `json:"day"`
	Hour     int    `json:"hour"`
	Minute   int    `json:"minute"`
	Second   int    `json:"second"`

	Script         string `json:"script"`
	Website        string `json:"website"`
	ExclusionRules string `json:"exclusionRules"`
	DBName         string `json:"dbName"`
	URL            string `json:"url"`
	SourceDir      string `json:"sourceDir"`
	KeepLocal      bool   `json:"keepLocal"`
	TargetDir      string `json:"targetDir"`
	TargetDirID    int    `json:"targetDirID"`
	RetainCopies   int    `json:"retainCopies"`

	LastRecordTime string `json:"lastRecordTime"`
	Status         string `json:"status"`
}

type CronjobUpdate

type CronjobUpdate struct {
	ID       uint   `json:"id" validate:"required"`
	Name     string `json:"name" validate:"required"`
	SpecType string `json:"specType" validate:"required"`
	Week     int    `json:"week" validate:"number,max=7,min=1"`
	Day      int    `json:"day" validate:"number"`
	Hour     int    `json:"hour" validate:"number"`
	Minute   int    `json:"minute" validate:"number"`
	Second   int    `json:"second" validate:"number"`

	Script         string `json:"script"`
	Website        string `json:"website"`
	ExclusionRules string `json:"exclusionRules"`
	DBName         string `json:"dbName"`
	URL            string `json:"url"`
	SourceDir      string `json:"sourceDir"`
	KeepLocal      bool   `json:"keepLocal"`
	TargetDirID    int    `json:"targetDirID"`
	RetainCopies   int    `json:"retainCopies" validate:"number,min=1"`
}

type CronjobUpdateStatus

type CronjobUpdateStatus struct {
	ID     uint   `json:"id" validate:"required"`
	Status string `json:"status" validate:"required"`
}

type DBBaseInfo

type DBBaseInfo struct {
	Name          string `json:"name"`
	ContainerName string `json:"containerName"`
	Port          int64  `json:"port"`
}

type DaemonJsonConf

type DaemonJsonConf struct {
	IsSwarm      bool     `json:"isSwarm"`
	Status       string   `json:"status"`
	Version      string   `json:"version"`
	Mirrors      []string `json:"registryMirrors"`
	Registries   []string `json:"insecureRegistries"`
	LiveRestore  bool     `json:"liveRestore"`
	IPTables     bool     `json:"iptables"`
	CgroupDriver string   `json:"cgroupDriver"`

	LogMaxSize string `json:"logMaxSize"`
	LogMaxFile string `json:"logMaxFile"`
}

type DaemonJsonUpdateByFile

type DaemonJsonUpdateByFile struct {
	File string `json:"file"`
}

type DashboardBase

type DashboardBase struct {
	WebsiteNumber     int `json:"websiteNumber"`
	DatabaseNumber    int `json:"databaseNumber"`
	CronjobNumber     int `json:"cronjobNumber"`
	AppInstalldNumber int `json:"appInstalldNumber"`

	Hostname             string `json:"hostname"`
	OS                   string `json:"os"`
	Platform             string `json:"platform"`
	PlatformFamily       string `json:"platformFamily"`
	PlatformVersion      string `json:"platformVersion"`
	KernelArch           string `json:"kernelArch"`
	KernelVersion        string `json:"kernelVersion"`
	VirtualizationSystem string `json:"virtualizationSystem"`

	CPUCores        int    `json:"cpuCores"`
	CPULogicalCores int    `json:"cpuLogicalCores"`
	CPUModelName    string `json:"cpuModelName"`

	CurrentInfo DashboardCurrent `json:"currentInfo"`
}

type DashboardCurrent

type DashboardCurrent struct {
	Uptime          uint64 `json:"uptime"`
	TimeSinceUptime string `json:"timeSinceUptime"`

	Procs uint64 `json:"procs"`

	Load1            float64 `json:"load1"`
	Load5            float64 `json:"load5"`
	Load15           float64 `json:"load15"`
	LoadUsagePercent float64 `json:"loadUsagePercent"`

	CPUPercent     []float64 `json:"cpuPercent"`
	CPUUsedPercent float64   `json:"cpuUsedPercent"`
	CPUUsed        float64   `json:"cpuUsed"`
	CPUTotal       int       `json:"cpuTotal"`

	MemoryTotal       uint64  `json:"memoryTotal"`
	MemoryAvailable   uint64  `json:"memoryAvailable"`
	MemoryUsed        uint64  `json:"memoryUsed"`
	MemoryUsedPercent float64 `json:"MemoryUsedPercent"`

	IOReadBytes  uint64 `json:"ioReadBytes"`
	IOWriteBytes uint64 `json:"ioWriteBytes"`
	IOCount      uint64 `json:"ioCount"`
	IOReadTime   uint64 `json:"ioReadTime"`
	IOWriteTime  uint64 `json:"ioWriteTime"`

	DiskData []DiskInfo `json:"diskData"`

	NetBytesSent uint64 `json:"netBytesSent"`
	NetBytesRecv uint64 `json:"netBytesRecv"`

	ShotTime time.Time `json:"shotTime"`
}

type DatabaseFileRecords

type DatabaseFileRecords struct {
	FileName  string `json:"fileName"`
	FileDir   string `json:"fileDir"`
	CreatedAt string `json:"createdAt"`
	Size      int    `json:"size"`
}

type DeleteByName

type DeleteByName struct {
	Name string `json:"name" validate:"required"`
}

type DiskInfo added in v1.0.4

type DiskInfo struct {
	Path        string  `json:"path"`
	Type        string  `json:"type"`
	Device      string  `json:"device"`
	Total       uint64  `json:"total"`
	Free        uint64  `json:"free"`
	Used        uint64  `json:"used"`
	UsedPercent float64 `json:"usedPercent"`

	InodesTotal       uint64  `json:"inodesTotal"`
	InodesUsed        uint64  `json:"inodesUsed"`
	InodesFree        uint64  `json:"inodesFree"`
	InodesUsedPercent float64 `json:"inodesUsedPercent"`
}

type DockerOperation

type DockerOperation struct {
	Operation string `json:"operation" validate:"required,oneof=start restart stop"`
}

type DownloadRecord

type DownloadRecord struct {
	Source   string `json:"source" validate:"required,oneof=OSS S3 SFTP MINIO LOCAL COS KODO"`
	FileDir  string `json:"fileDir" validate:"required"`
	FileName string `json:"fileName" validate:"required"`
}

type ExtraProperties added in v1.3.0

type ExtraProperties struct {
	Tags []Tag `json:"tags"`
}

type FilePath

type FilePath struct {
	Path string `json:"path" validate:"required"`
}

type FirewallBaseInfo added in v1.1.0

type FirewallBaseInfo struct {
	Name       string `json:"name"`
	Status     string `json:"status"`
	Version    string `json:"version"`
	PingStatus string `json:"pingStatus"`
}

type FirewallOperation added in v1.1.0

type FirewallOperation struct {
	Operation string `json:"operation" validate:"required,oneof=start stop disablePing enablePing"`
}

type ForBuckets

type ForBuckets struct {
	Type       string `json:"type" validate:"required"`
	AccessKey  string `json:"accessKey"`
	Credential string `json:"credential" validate:"required"`
	Vars       string `json:"vars" validate:"required"`
}

type GenerateLoad added in v1.3.0

type GenerateLoad struct {
	EncryptionMode string `json:"encryptionMode" validate:"required,oneof=rsa ed25519 ecdsa dsa"`
}

type GenerateSSH added in v1.3.0

type GenerateSSH struct {
	EncryptionMode string `json:"encryptionMode" validate:"required,oneof=rsa ed25519 ecdsa dsa"`
	Password       string `json:"password"`
}

type GroupCreate

type GroupCreate struct {
	ID   uint   `json:"id"`
	Name string `json:"name" validate:"required"`
	Type string `json:"type" validate:"required"`
}

type GroupInfo

type GroupInfo struct {
	ID        uint   `json:"id"`
	Name      string `json:"name"`
	Type      string `json:"type"`
	IsDefault bool   `json:"isDefault"`
}

type GroupSearch

type GroupSearch struct {
	Type string `json:"type" validate:"required"`
}

type GroupUpdate

type GroupUpdate struct {
	ID        uint   `json:"id"`
	Name      string `json:"name"`
	Type      string `json:"type" validate:"required"`
	IsDefault bool   `json:"isDefault"`
}

type HostConnTest

type HostConnTest struct {
	Addr       string `json:"addr" validate:"required"`
	Port       uint   `json:"port" validate:"required,number,max=65535,min=1"`
	User       string `json:"user" validate:"required"`
	AuthMode   string `json:"authMode" validate:"oneof=password key"`
	Password   string `json:"password"`
	PrivateKey string `json:"privateKey"`
	PassPhrase string `json:"passPhrase"`
}

type HostInfo

type HostInfo struct {
	ID               uint      `json:"id"`
	CreatedAt        time.Time `json:"createdAt"`
	GroupID          uint      `json:"groupID"`
	GroupBelong      string    `json:"groupBelong"`
	Name             string    `json:"name"`
	Addr             string    `json:"addr"`
	Port             uint      `json:"port"`
	User             string    `json:"user"`
	AuthMode         string    `json:"authMode"`
	Password         string    `json:"password"`
	PrivateKey       string    `json:"privateKey"`
	PassPhrase       string    `json:"passPhrase"`
	RememberPassword bool      `json:"rememberPassword"`

	Description string `json:"description"`
}

type HostOperate

type HostOperate struct {
	ID               uint   `json:"id"`
	GroupID          uint   `json:"groupID"`
	Name             string `json:"name"`
	Addr             string `json:"addr" validate:"required"`
	Port             uint   `json:"port" validate:"required,number,max=65535,min=1"`
	User             string `json:"user" validate:"required"`
	AuthMode         string `json:"authMode" validate:"oneof=password key"`
	Password         string `json:"password"`
	PrivateKey       string `json:"privateKey"`
	PassPhrase       string `json:"passPhrase"`
	RememberPassword bool   `json:"rememberPassword"`

	Description string `json:"description"`
}

type HostTree

type HostTree struct {
	ID       uint        `json:"id"`
	Label    string      `json:"label"`
	Children []TreeChild `json:"children"`
}

type ImageBuild

type ImageBuild struct {
	From       string   `josn:"from" validate:"required"`
	Name       string   `json:"name" validate:"required"`
	Dockerfile string   `josn:"dockerfile" validate:"required"`
	Tags       []string `josn:"tags"`
}

type ImageInfo

type ImageInfo struct {
	ID        string    `json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	Tags      []string  `json:"tags"`
	Size      string    `json:"size"`
}

type ImageLoad

type ImageLoad struct {
	Path string `josn:"path" validate:"required"`
}

type ImagePull

type ImagePull struct {
	RepoID    uint   `josn:"repoID"`
	ImageName string `josn:"imageName" validate:"required"`
}

type ImagePush

type ImagePush struct {
	RepoID  uint   `josn:"repoID" validate:"required"`
	TagName string `json:"tagName" validate:"required"`
	Name    string `json:"name" validate:"required"`
}

type ImageRepoCreate

type ImageRepoCreate struct {
	Name        string `json:"name" validate:"required"`
	DownloadUrl string `json:"downloadUrl"`
	Protocol    string `json:"protocol"`
	Username    string `json:"username"`
	Password    string `json:"password"`
	Auth        bool   `json:"auth"`
}

type ImageRepoDelete

type ImageRepoDelete struct {
	Ids []uint `json:"ids" validate:"required"`
}

type ImageRepoInfo

type ImageRepoInfo struct {
	ID          uint      `json:"id"`
	CreatedAt   time.Time `json:"createdAt"`
	Name        string    `json:"name"`
	DownloadUrl string    `json:"downloadUrl"`
	Protocol    string    `json:"protocol"`
	Username    string    `json:"username"`
	Auth        bool      `json:"auth"`

	Status  string `json:"status"`
	Message string `json:"message"`
}

type ImageRepoOption

type ImageRepoOption struct {
	ID          uint   `json:"id"`
	Name        string `json:"name"`
	DownloadUrl string `json:"downloadUrl"`
}

type ImageRepoUpdate

type ImageRepoUpdate struct {
	ID          uint   `json:"id"`
	DownloadUrl string `json:"downloadUrl"`
	Protocol    string `json:"protocol"`
	Username    string `json:"username"`
	Password    string `json:"password"`
	Auth        bool   `json:"auth"`
}

type ImageSave

type ImageSave struct {
	TagName string `json:"tagName" validate:"required"`
	Path    string `josn:"path" validate:"required"`
	Name    string `json:"name" validate:"required"`
}

type ImageTag

type ImageTag struct {
	RepoID     uint   `josn:"repoID"`
	SourceID   string `json:"sourceID" validate:"required"`
	TargetName string `josn:"targetName" validate:"required"`
}

type InspectReq

type InspectReq struct {
	ID   string `json:"id"`
	Type string `json:"type"`
}

type LocalAppAppDefine added in v1.3.0

type LocalAppAppDefine struct {
	AppProperty model.App `json:"additionalProperties" yaml:"additionalProperties"`
}

type LocalAppInstallDefine added in v1.3.0

type LocalAppInstallDefine struct {
	FormFields interface{} `json:"formFields" yaml:"formFields"`
}

type LocalAppParam added in v1.3.0

type LocalAppParam struct {
	AppParams LocalAppInstallDefine `json:"additionalProperties" yaml:"additionalProperties"`
}

type LogOption added in v1.3.0

type LogOption struct {
	LogMaxSize string `json:"logMaxSize"`
	LogMaxFile string `json:"logMaxFile"`
}

type Login

type Login struct {
	Name          string `json:"name"`
	Password      string `json:"password"`
	IgnoreCaptcha bool   `json:"ignoreCaptcha"`
	Captcha       string `json:"captcha"`
	CaptchaID     string `json:"captchaID"`
	AuthMethod    string `json:"authMethod"`
}

type LoginLog

type LoginLog struct {
	ID        uint      `json:"id"`
	IP        string    `json:"ip"`
	Address   string    `json:"address"`
	Agent     string    `json:"agent"`
	Status    string    `json:"status"`
	Message   string    `json:"message"`
	CreatedAt time.Time `json:"createdAt"`
}

type MFALogin

type MFALogin struct {
	Name       string `json:"name"`
	Password   string `json:"password"`
	Code       string `json:"code"`
	AuthMethod string `json:"authMethod"`
}

type MfaCredential

type MfaCredential struct {
	Secret string `json:"secret"`
	Code   string `json:"code"`
}

type MonitorData

type MonitorData struct {
	Param string        `json:"param" validate:"required,oneof=cpu memory load io network"`
	Date  []time.Time   `json:"date"`
	Value []interface{} `json:"value"`
}

type MonitorSearch

type MonitorSearch struct {
	Param     string    `json:"param" validate:"required,oneof=all cpu memory load io network"`
	Info      string    `json:"info"`
	StartTime time.Time `json:"startTime"`
	EndTime   time.Time `json:"endTime"`
}

type MysqlConfUpdateByFile

type MysqlConfUpdateByFile struct {
	MysqlName string `json:"mysqlName" validate:"required"`
	File      string `json:"file"`
}

type MysqlDBCreate

type MysqlDBCreate struct {
	Name        string `json:"name" validate:"required"`
	Format      string `json:"format" validate:"required,oneof=utf8mb4 utf8 gbk big5"`
	Username    string `json:"username" validate:"required"`
	Password    string `json:"password" validate:"required"`
	Permission  string `json:"permission" validate:"required"`
	Description string `json:"description"`
}

type MysqlDBDelete

type MysqlDBDelete struct {
	ID           uint `json:"id" validate:"required"`
	ForceDelete  bool `json:"forceDelete"`
	DeleteBackup bool `json:"deleteBackup"`
}

type MysqlDBInfo

type MysqlDBInfo struct {
	ID          uint      `json:"id"`
	CreatedAt   time.Time `json:"createdAt"`
	Name        string    `json:"name"`
	Format      string    `json:"format"`
	Username    string    `json:"username"`
	Password    string    `json:"password"`
	Permission  string    `json:"permission"`
	BackupCount int       `json:"backupCount"`
	Description string    `json:"description"`
}

type MysqlStatus

type MysqlStatus struct {
	AbortedClients               string `json:"Aborted_clients"`
	AbortedConnects              string `json:"Aborted_connects"`
	BytesReceived                string `json:"Bytes_received"`
	BytesSent                    string `json:"Bytes_sent"`
	ComCommit                    string `json:"Com_commit"`
	ComRollback                  string `json:"Com_rollback"`
	Connections                  string `json:"Connections"`
	CreatedTmpDiskTables         string `json:"Created_tmp_disk_tables"`
	CreatedTmpTables             string `json:"Created_tmp_tables"`
	InnodbBufferPoolPagesDirty   string `json:"Innodb_buffer_pool_pages_dirty"`
	InnodbBufferPoolReadRequests string `json:"Innodb_buffer_pool_read_requests"`
	InnodbBufferPoolReads        string `json:"Innodb_buffer_pool_reads"`
	KeyReadRequests              string `json:"Key_read_requests"`
	KeyReads                     string `json:"Key_reads"`
	KeyWriteEequests             string `json:"Key_write_requests"`
	KeyWrites                    string `json:"Key_writes"`
	MaxUsedConnections           string `json:"Max_used_connections"`
	OpenTables                   string `json:"Open_tables"`
	OpenedFiles                  string `json:"Opened_files"`
	OpenedTables                 string `json:"Opened_tables"`
	QcacheHits                   string `json:"Qcache_hits"`
	QcacheInserts                string `json:"Qcache_inserts"`
	Questions                    string `json:"Questions"`
	SelectFullJoin               string `json:"Select_full_join"`
	SelectRangeCheck             string `json:"Select_range_check"`
	SortMergePasses              string `json:"Sort_merge_passes"`
	TableLocksWaited             string `json:"Table_locks_waited"`
	ThreadsCached                string `json:"Threads_cached"`
	ThreadsConnected             string `json:"Threads_connected"`
	ThreadsCreated               string `json:"Threads_created"`
	ThreadsRunning               string `json:"Threads_running"`
	Uptime                       string `json:"Uptime"`
	Run                          string `json:"Run"`
	File                         string `json:"File"`
	Position                     string `json:"Position"`
}

type MysqlVariables

type MysqlVariables struct {
	BinlogCachSize       string `json:"binlog_cache_size"`
	InnodbBufferPoolSize string `json:"innodb_buffer_pool_size"`
	InnodbLogBufferSize  string `json:"innodb_log_buffer_size"`
	JoinBufferSize       string `json:"join_buffer_size"`
	KeyBufferSize        string `json:"key_buffer_size"`
	MaxConnections       string `json:"max_connections"`
	MaxHeapTableSize     string `json:"max_heap_table_size"`
	QueryCacheSize       string `json:"query_cache_size"`
	QueryCache_type      string `json:"query_cache_type"`
	ReadBufferSize       string `json:"read_buffer_size"`
	ReadRndBufferSize    string `json:"read_rnd_buffer_size"`
	SortBufferSize       string `json:"sort_buffer_size"`
	TableOpenCache       string `json:"table_open_cache"`
	ThreadCacheSize      string `json:"thread_cache_size"`
	ThreadStack          string `json:"thread_stack"`
	TmpTableSize         string `json:"tmp_table_size"`

	SlowQueryLog  string `json:"slow_query_log"`
	LongQueryTime string `json:"long_query_time"`
}

type MysqlVariablesUpdate

type MysqlVariablesUpdate struct {
	Param string      `json:"param"`
	Value interface{} `json:"value"`
}

type Network

type Network struct {
	ID         string    `json:"id"`
	Name       string    `json:"name"`
	Labels     []string  `json:"labels"`
	Driver     string    `json:"driver"`
	IPAMDriver string    `json:"ipamDriver"`
	Subnet     string    `json:"subnet"`
	Gateway    string    `json:"gateway"`
	CreatedAt  time.Time `json:"createdAt"`
	Attachable bool      `json:"attachable"`
}

type NetworkCreate added in v1.3.0

type NetworkCreate struct {
	Name    string   `json:"name"`
	Driver  string   `json:"driver"`
	Options []string `json:"options"`
	Subnet  string   `json:"subnet"`
	Gateway string   `json:"gateway"`
	IPRange string   `json:"ipRange"`
	Labels  []string `json:"labels"`
}

type NginxAuth added in v1.2.0

type NginxAuth struct {
	Username string `json:"username"`
	Remark   string `json:"remark"`
}

type NginxConfig

type NginxConfig struct {
	FilePath   string
	Config     *components.Config
	OldContent string
}

type NginxFull

type NginxFull struct {
	Install    model.AppInstall
	Website    model.Website
	ConfigDir  string
	ConfigFile string
	SiteDir    string
	Dir        string
	RootConfig NginxConfig
	SiteConfig NginxConfig
}

type NginxKey

type NginxKey string
const (
	Index      NginxKey = "index"
	LimitConn  NginxKey = "limit-conn"
	SSL        NginxKey = "ssl"
	CACHE      NginxKey = "cache"
	HttpPer    NginxKey = "http-per"
	ProxyCache NginxKey = "proxy-cache"
)

type NginxParam

type NginxParam struct {
	UpdateScope string
	Name        string
	Params      []string
}

type Operate added in v1.3.0

type Operate struct {
	Operation string `json:"operation" validate:"required"`
}

type OperateByID

type OperateByID struct {
	ID uint `json:"id" validate:"required"`
}

type OperationLog

type OperationLog struct {
	ID     uint   `json:"id"`
	Source string `json:"source"`

	IP        string `json:"ip"`
	Path      string `json:"path"`
	Method    string `json:"method"`
	UserAgent string `json:"userAgent"`

	Latency time.Duration `json:"latency"`
	Status  string        `json:"status"`
	Message string        `json:"message"`

	DetailZH  string    `json:"detailZH"`
	DetailEN  string    `json:"detailEN"`
	CreatedAt time.Time `json:"createdAt"`
}

type OperationWithName

type OperationWithName struct {
	Name string `json:"name" validate:"required"`
}

type OperationWithNameAndType

type OperationWithNameAndType struct {
	Name string `json:"name" validate:"required"`
	Type string `json:"type" validate:"required"`
}

type Options

type Options struct {
	Option string `json:"option"`
}

type PageContainer

type PageContainer struct {
	PageInfo
	Name    string `json:"name"`
	Filters string `json:"filters"`
}

type PageInfo

type PageInfo struct {
	Page     int `json:"page" validate:"required,number"`
	PageSize int `json:"pageSize" validate:"required,number"`
}

type PageResult

type PageResult struct {
	Total int64       `json:"total"`
	Items interface{} `json:"items"`
}

type PasswordUpdate

type PasswordUpdate struct {
	OldPassword string `json:"oldPassword" validate:"required"`
	NewPassword string `json:"newPassword" validate:"required"`
}

type PortHelper

type PortHelper struct {
	HostIP        string `json:"hostIP"`
	HostPort      string `json:"hostPort"`
	ContainerPort string `json:"containerPort"`
	Protocol      string `json:"protocol"`
}

type PortRuleOperate added in v1.1.0

type PortRuleOperate struct {
	Operation string `json:"operation" validate:"required,oneof=add remove"`
	Address   string `json:"address"`
	Port      string `json:"port" validate:"required"`
	Protocol  string `json:"protocol" validate:"required,oneof=tcp udp tcp/udp"`
	Strategy  string `json:"strategy" validate:"required,oneof=accept drop"`
}

type PortRuleUpdate added in v1.1.0

type PortRuleUpdate struct {
	OldRule PortRuleOperate `json:"oldRule"`
	NewRule PortRuleOperate `json:"newRule"`
}

type PortUpdate

type PortUpdate struct {
	ServerPort uint `json:"serverPort" validate:"required,number,max=65535,min=1"`
}

type Record

type Record struct {
	ID         uint      `json:"id"`
	StartTime  time.Time `json:"startTime"`
	Records    string    `json:"records"`
	Status     string    `json:"status"`
	Message    string    `json:"message"`
	TargetPath string    `json:"targetPath"`
	Interval   int       `json:"interval"`
	File       string    `json:"file"`
}

type RecordSearch

type RecordSearch struct {
	PageInfo
	Type       string `json:"type" validate:"required"`
	Name       string `json:"name" validate:"required"`
	DetailName string `json:"detailName"`
}

type RecoverDB

type RecoverDB struct {
	MysqlName  string `json:"mysqlName" validate:"required"`
	DBName     string `json:"dbName" validate:"required"`
	BackupName string `json:"backupName" validate:"required"`
}

type RedisBackupRecover

type RedisBackupRecover struct {
	FileName string `json:"fileName"`
	FileDir  string `json:"fileDir"`
}

type RedisConf

type RedisConf struct {
	Name          string `json:"name"`
	Port          int64  `json:"port"`
	ContainerName string `json:"containerName"`
	Timeout       string `json:"timeout"`
	Maxclients    string `json:"maxclients"`
	Requirepass   string `json:"requirepass"`
	Maxmemory     string `json:"maxmemory"`
}

type RedisConfPersistenceUpdate

type RedisConfPersistenceUpdate struct {
	Type        string `json:"type" validate:"required,oneof=aof rbd"`
	Appendonly  string `json:"appendonly"`
	Appendfsync string `json:"appendfsync"`
	Save        string `json:"save"`
}

type RedisConfUpdate

type RedisConfUpdate struct {
	Timeout    string `json:"timeout"`
	Maxclients string `json:"maxclients"`
	Maxmemory  string `json:"maxmemory"`
}

redis

type RedisConfUpdateByFile

type RedisConfUpdateByFile struct {
	File       string `json:"file"`
	RestartNow bool   `json:"restartNow"`
}

type RedisPersistence

type RedisPersistence struct {
	Appendonly  string `json:"appendonly"`
	Appendfsync string `json:"appendfsync"`
	Save        string `json:"save"`
}

type RedisStatus

type RedisStatus struct {
	TcpPort                  string `json:"tcp_port"`
	UptimeInDays             string `json:"uptime_in_days"`
	ConnectedClients         string `json:"connected_clients"`
	UsedMemory               string `json:"used_memory"`
	UsedMemory_rss           string `json:"used_memory_rss"`
	UsedMemory_peak          string `json:"used_memory_peak"`
	MemFragmentationRatio    string `json:"mem_fragmentation_ratio"`
	TotalConnectionsReceived string `json:"total_connections_received"`
	TotalCommandsProcessed   string `json:"total_commands_processed"`
	InstantaneousOpsPerSec   string `json:"instantaneous_ops_per_sec"`
	KeyspaceHits             string `json:"keyspace_hits"`
	KeyspaceMisses           string `json:"keyspace_misses"`
	LatestForkUsec           string `json:"latest_fork_usec"`
}

type Response

type Response struct {
	Code    int         `json:"code"`
	Message string      `json:"message"`
	Data    interface{} `json:"data"`
}

type RuleSearch added in v1.1.0

type RuleSearch struct {
	PageInfo
	Info string `json:"info"`
	Type string `json:"type" validate:"required"`
}

type SSHConf added in v1.3.0

type SSHConf struct {
	File string `json:"file"`
}

type SSHHistory added in v1.3.0

type SSHHistory struct {
	Date     time.Time `json:"date"`
	DateStr  string    `json:"dateStr"`
	Area     string    `json:"area"`
	User     string    `json:"user"`
	AuthMode string    `json:"authMode"`
	Address  string    `json:"address"`
	Port     string    `json:"port"`
	Status   string    `json:"status"`
	Message  string    `json:"message"`
}

type SSHInfo added in v1.3.0

type SSHInfo struct {
	Status                 string `json:"status"`
	Message                string `json:"message"`
	Port                   string `json:"port"`
	ListenAddress          string `json:"listenAddress"`
	PasswordAuthentication string `json:"passwordAuthentication"`
	PubkeyAuthentication   string `json:"pubkeyAuthentication"`
	PermitRootLogin        string `json:"permitRootLogin"`
	UseDNS                 string `json:"useDNS"`
}

type SSHLog added in v1.3.0

type SSHLog struct {
	Logs            []SSHHistory `json:"logs"`
	TotalCount      int          `json:"totalCount"`
	SuccessfulCount int          `json:"successfulCount"`
	FailedCount     int          `json:"failedCount"`
}

type SSLInfo added in v1.2.0

type SSLInfo struct {
	Domain   string `json:"domain"`
	Timeout  string `json:"timeout"`
	RootPath string `json:"rootPath"`
	Cert     string `json:"cert"`
	Key      string `json:"key"`
	SSLID    uint   `json:"sslID"`
}

type SSLUpdate added in v1.2.0

type SSLUpdate struct {
	SSLType string `json:"sslType"`
	Domain  string `json:"domain"`
	SSL     string `json:"ssl" validate:"required,oneof=enable disable"`
	Cert    string `json:"cert"`
	Key     string `json:"key"`
	SSLID   uint   `json:"sslID"`
}

type SearchDBWithPage

type SearchDBWithPage struct {
	PageInfo
	MysqlName string `json:"mysqlName" validate:"required"`
}

type SearchForTree

type SearchForTree struct {
	Info string `json:"info"`
}

type SearchHostWithPage

type SearchHostWithPage struct {
	PageInfo
	GroupID uint   `json:"groupID"`
	Info    string `json:"info"`
}

type SearchLgLogWithPage

type SearchLgLogWithPage struct {
	PageInfo
	IP     string `json:"ip"`
	Status string `json:"status"`
}

type SearchOpLogWithPage

type SearchOpLogWithPage struct {
	PageInfo
	Source    string `json:"source"`
	Status    string `json:"status"`
	Operation string `json:"operation"`
}

type SearchRecord

type SearchRecord struct {
	PageInfo
	CronjobID int       `json:"cronjobID"`
	StartTime time.Time `json:"startTime"`
	EndTime   time.Time `json:"endTime"`
	Status    string    `json:"status"`
}

type SearchSSHLog added in v1.3.0

type SearchSSHLog struct {
	PageInfo
	Info   string `json:"info"`
	Status string `json:"Status" validate:"required,oneof=Success Failed All"`
}

type SearchWithPage

type SearchWithPage struct {
	PageInfo
	Info string `json:"info"`
}

type SettingInfo

type SettingInfo struct {
	UserName      string `json:"userName"`
	Email         string `json:"email"`
	SystemVersion string `json:"systemVersion"`

	SessionTimeout string `json:"sessionTimeout"`
	LocalTime      string `json:"localTime"`
	TimeZone       string `json:"timeZone"`
	NtpSite        string `json:"ntpSite"`

	Port      string `json:"port"`
	PanelName string `json:"panelName"`
	Theme     string `json:"theme"`
	Language  string `json:"language"`

	ServerPort             string `json:"serverPort"`
	SSL                    string `json:"ssl"`
	SSLType                string `json:"sslType"`
	BindDomain             string `json:"bindDomain"`
	AllowIPs               string `json:"allowIPs"`
	SecurityEntrance       string `json:"securityEntrance"`
	ExpirationDays         string `json:"expirationDays"`
	ExpirationTime         string `json:"expirationTime"`
	ComplexityVerification string `json:"complexityVerification"`
	MFAStatus              string `json:"mfaStatus"`
	MFASecret              string `json:"mfaSecret"`

	MonitorStatus    string `json:"monitorStatus"`
	MonitorInterval  string `json:"monitorInterval"`
	MonitorStoreDays string `json:"monitorStoreDays"`

	MessageType string `json:"messageType"`
	EmailVars   string `json:"emailVars"`
	WeChatVars  string `json:"weChatVars"`
	DingVars    string `json:"dingVars"`

	AppStoreVersion      string `json:"appStoreVersion"`
	AppStoreLastModified string `json:"appStoreLastModified"`
}

type SettingUpdate

type SettingUpdate struct {
	Key   string `json:"key" validate:"required"`
	Value string `json:"value"`
}

type SnapshotCreate

type SnapshotCreate struct {
	From        string `json:"from" validate:"required,oneof=OSS S3 SFTP MINIO COS KODO"`
	Description string `json:"description" validate:"max=256"`
}

type SnapshotImport

type SnapshotImport struct {
	From        string   `json:"from"`
	Names       []string `json:"names"`
	Description string   `json:"description" validate:"max=256"`
}

type SnapshotInfo

type SnapshotInfo struct {
	ID          uint      `json:"id"`
	Name        string    `json:"name"`
	Description string    `json:"description" validate:"max=256"`
	From        string    `json:"from"`
	Status      string    `json:"status"`
	Message     string    `json:"message"`
	CreatedAt   time.Time `json:"createdAt"`
	Version     string    `json:"version"`

	InterruptStep    string `json:"interruptStep"`
	RecoverStatus    string `json:"recoverStatus"`
	RecoverMessage   string `json:"recoverMessage"`
	LastRecoveredAt  string `json:"lastRecoveredAt"`
	RollbackStatus   string `json:"rollbackStatus"`
	RollbackMessage  string `json:"rollbackMessage"`
	LastRollbackedAt string `json:"lastRollbackedAt"`
}

type SnapshotRecover

type SnapshotRecover struct {
	IsNew      bool `json:"isNew"`
	ReDownload bool `json:"reDownload"`
	ID         uint `json:"id" validate:"required"`
}

type SyncTime added in v1.3.0

type SyncTime struct {
	NtpSite string `json:"ntpSite"`
}

type Tag

type Tag struct {
	Key  string `json:"key"`
	Name string `json:"name"`
}

type TreeChild

type TreeChild struct {
	ID    uint   `json:"id"`
	Label string `json:"label"`
}

type UpdateDescription

type UpdateDescription struct {
	ID          uint   `json:"id" validate:"required"`
	Description string `json:"description" validate:"max=256"`
}

type Upgrade

type Upgrade struct {
	Version string `json:"version"`
}

type UpgradeInfo

type UpgradeInfo struct {
	NewVersion    string `json:"newVersion"`
	LatestVersion string `json:"latestVersion"`
	ReleaseNote   string `json:"releaseNote"`
}

type UploadRecover

type UploadRecover struct {
	MysqlName string `json:"mysqlName" validate:"required"`
	DBName    string `json:"dbName" validate:"required"`
	FileName  string `json:"fileName"`
	FileDir   string `json:"fileDir"`
}

type UserLoginInfo

type UserLoginInfo struct {
	Name      string `json:"name"`
	Token     string `json:"token"`
	MfaStatus string `json:"mfaStatus"`
}

type Volume

type Volume struct {
	Name       string    `json:"name"`
	Labels     []string  `json:"labels"`
	Driver     string    `json:"driver"`
	Mountpoint string    `json:"mountpoint"`
	CreatedAt  time.Time `json:"createdAt"`
}

type VolumeCreate added in v1.3.0

type VolumeCreate struct {
	Name    string   `json:"name"`
	Driver  string   `json:"driver"`
	Options []string `json:"options"`
	Labels  []string `json:"labels"`
}

type VolumeHelper

type VolumeHelper struct {
	SourceDir    string `json:"sourceDir"`
	ContainerDir string `json:"containerDir"`
	Mode         string `json:"mode"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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