Documentation
¶
Index ¶
- Constants
- Variables
- func CreateGodUser(user, password string) error
- func CreateSQLiteDb(verbose bool)
- func FlushSqliteDb() error
- func MachineAdd(name, addr, ip, user, password, key, auth string, port uint) error
- func MachineDelete(idx uint) error
- func MachineDeleteAll() error
- func MachineDuplicate(idx uint) error
- func MachineUpdate(name, addr, user, password, pkey, t string, id, port uint) error
- func TaskAdd(content, cate, deadLine string) error
- func TaskRm(id uint) error
- func TaskUpdate(id uint, status string) error
- func TranslateCh2En(text string) (string, error)
- func TranslateEn2Ch(text string) (string, error)
- type BaseModel
- type Comment
- type CommentQ
- type Ginbro
- type HackNew
- type HackNewQ
- type JsonArrayUint
- func (j JsonArrayUint) AppendOrRemove(e uint) (isExist bool, a JsonArrayUint)
- func (j JsonArrayUint) Equals(j1 JsonArrayUint) bool
- func (j JsonArrayUint) IsNull() bool
- func (m JsonArrayUint) MarshalJSONArrayUint() ([]byte, error)
- func (o *JsonArrayUint) Scan(input interface{}) (err error)
- func (m *JsonArrayUint) UnmarshalJSONArrayUint(data []byte) error
- func (o JsonArrayUint) Value() (driver.Value, error)
- type LogicSshWsSession
- type Machine
- type PaginationQ
- type SlackMsg
- type SshLog
- type SshLogQ
- type Task
- type User
- func (m *User) AfterFind() (err error)
- func (m *User) All(q *PaginationQ) (list *[]User, total uint, err error)
- func (m *User) CreateUserOfRole(role uint) (err error)
- func (m *User) Delete() (err error)
- func (m *User) Login(ip string, roleId uint) (string, error)
- func (m *User) One() error
- func (m *User) Update() (err error)
- type WslogHook
- type WslogMsg
Constants ¶
View Source
const TimeLayout = "2006-01-02T15:04"
Variables ¶
View Source
var AppIss = "github.com/libragen/felix"
View Source
var AppSecret = ""
View Source
var ExpireTime = time.Hour * 24
Functions ¶
func CreateGodUser ¶
func CreateSQLiteDb ¶
func CreateSQLiteDb(verbose bool)
func FlushSqliteDb ¶
func FlushSqliteDb() error
func MachineAdd ¶
MachineAdd
func MachineDelete ¶
func MachineDeleteAll ¶
func MachineDeleteAll() error
func MachineDuplicate ¶
func MachineUpdate ¶
func TaskUpdate ¶
func TranslateCh2En ¶
func TranslateEn2Ch ¶
Types ¶
type Comment ¶
type Comment struct {
BaseModel
PageUrl string `json:"page_url" gorm:"index" form:"page_url"`
ParentPath string `json:"parent_path" form:"parent_path" gorm:"default:'0';index" comment:"父级评论的id路径使用like %查询"`
UserId uint `json:"user_id"`
Content string `json:"content"`
LikeUids JsonArrayUint `gorm:"type:json" json:"like_uids"`
DislikeUids JsonArrayUint `gorm:"type:json" json:"dislike_uids"`
ThankUids JsonArrayUint `gorm:"type:json" json:"thank_uids"`
AtUids JsonArrayUint `gorm:"type:json" json:"at_uids" comment:"at用户IDs json uint array"`
User User `json:"user"`
}
type CommentQ ¶
type CommentQ struct {
PaginationQ
Comment
}
func (*CommentQ) SearchAll ¶
func (cq *CommentQ) SearchAll() (data *PaginationQ, err error)
type Ginbro ¶
type Ginbro struct {
BaseModel
IsSuccess bool `json:"is_success" form:"is_success"`
AppSecret string `json:"app_secret" form:"app_secret"`
AppAddr string `json:"app_addr" form:"app_addr"`
AppDir string `json:"app_dir" form:"app_dir"`
AppPkg string `json:"app_pkg" form:"app_pkg"`
AuthTable string `json:"auth_table" form:"auth_table"`
AuthColumn string `json:"auth_column" form:"auth_column"`
DbUser string `json:"db_user" form:"db_user"`
DbPassword string `json:"db_password" form:"db_password"`
DbAddr string `json:"db_addr" form:"db_addr"`
DbName string `json:"db_name" form:"db_name"`
DbChar string `json:"db_char" form:"db_char"`
DbType string `json:"db_type" form:"db_type"`
}
type HackNew ¶
type HackNew struct {
BaseModel
TitleZh string `json:"title_zh" form:"title_zh"`
TitleEn string `json:"title_en" form:"title_en"`
Url string `gorm:"index" json:"url" form:"url"`
Cate string `json:"cate" comment:"news or show" form:"cate"`
}
func (*HackNew) CreateOrUpdate ¶
type HackNewQ ¶
type HackNewQ struct {
PaginationQ
HackNew
}
func (*HackNewQ) SearchAll ¶
func (cq *HackNewQ) SearchAll() (data *PaginationQ, err error)
type JsonArrayUint ¶
type JsonArrayUint []uint
func (JsonArrayUint) AppendOrRemove ¶
func (j JsonArrayUint) AppendOrRemove(e uint) (isExist bool, a JsonArrayUint)
func (JsonArrayUint) Equals ¶
func (j JsonArrayUint) Equals(j1 JsonArrayUint) bool
func (JsonArrayUint) IsNull ¶
func (j JsonArrayUint) IsNull() bool
func (JsonArrayUint) MarshalJSONArrayUint ¶
func (m JsonArrayUint) MarshalJSONArrayUint() ([]byte, error)
func (*JsonArrayUint) Scan ¶
func (o *JsonArrayUint) Scan(input interface{}) (err error)
func (*JsonArrayUint) UnmarshalJSONArrayUint ¶
func (m *JsonArrayUint) UnmarshalJSONArrayUint(data []byte) error
type LogicSshWsSession ¶
type LogicSshWsSession struct {
IsFlagged bool `comment:"当前session是否包含禁止命令"`
// contains filtered or unexported fields
}
func NewLogicSshWsSession ¶
func (*LogicSshWsSession) LogString ¶
func (sws *LogicSshWsSession) LogString() string
func (*LogicSshWsSession) Start ¶
func (sws *LogicSshWsSession) Start(quitChan chan bool)
func (*LogicSshWsSession) Wait ¶
func (sws *LogicSshWsSession) Wait(quitChan chan bool)
type Machine ¶
type Machine struct {
BaseModel
Name string `json:"name" gorm:"type:varchar(50);unique_index"`
Host string `json:"host" gorm:"type:varchar(50)"`
Ip string `json:"ip" gorm:"type:varchar(80)"`
Port uint `json:"port" gorm:"type:int(6)"`
User string `json:"user" gorm:"type:varchar(20)"`
Password string `json:"password,omitempty"`
Key string `json:"key,omitempty"`
Type string `json:"type" gorm:"type:varchar(20)"`
}
Machine
func MachineAll ¶
func MachineFind ¶
func (*Machine) All ¶
func (m *Machine) All(q *PaginationQ) (list *[]Machine, total uint, err error)
All get all for pagination
func (*Machine) ChangeUpdateTime ¶
type PaginationQ ¶
type PaginationQ struct {
Ok bool `json:"ok"`
Size uint `form:"size" json:"size"`
Page uint `form:"page" json:"page"`
Data interface{} `json:"data" comment:"muster be a pointer of slice gorm.Model"` // save pagination list
Total uint `json:"total"`
}
PaginationQ gin handler query binding struct
func (*PaginationQ) SearchAll ¶
func (p *PaginationQ) SearchAll(queryTx *gorm.DB) (data *PaginationQ, err error)
SearchAll optimized pagination method for gorm
type SlackMsg ¶
type SlackMsg struct {
Text string `json:"text"`
Username string `json:"username"`
IconURL string `json:"icon_url"`
IconEmoji string `json:"icon_emoji"`
Channel string `json:"channel"`
UnfurlLinks bool `json:"unfurl_links"`
Attachments []struct {
Title string `json:"title"`
Fallback string `json:"fallback"`
Text string `json:"text"`
Pretext string `json:"pretext"`
Color string `json:"color"`
Fields []struct {
Title string `json:"title"`
Value string `json:"value"`
Short bool `json:"short"`
} `json:"fields"`
} `json:"attachments"`
}
type SshLog ¶
type SshLog struct {
BaseModel
UserId uint `gorm:"index" json:"user_id" form:"user_id"`
MachineId uint `gorm:"index" json:"machine_id" form:"machine_id"`
SshUser string `json:"ssh_user" comment:"ssh账号"`
ClientIp string `json:"client_ip" form:"client_ip"`
StartedAt time.Time `json:"started_at" form:"started_at"`
Status uint `json:"status" comment:"0-未标记 2-正常 4-警告 8-危险 16-致命"`
Remark string `json:"remark"`
Log string `gorm:"type:text" json:"log"`
Machine Machine `gorm:"association_autoupdate:false;association_autocreate:false" json:"machine"`
User User `gorm:"association_autoupdate:false;association_autocreate:false" json:"user"`
}
type SshLogQ ¶
type SshLogQ struct {
SshLog
PaginationQ
FromTime string `form:"from_time"`
ToTime string `form:"to_time"`
}
type Task ¶
type User ¶
type User struct {
BaseModel
Username string `` /* 147-byte string literal not displayed */
NickName string `gorm:"column:nick_name" form:"nick_name" json:"nick_name" comment:"真实姓名"`
Email string `gorm:"column:email" form:"email" json:"email" comment:"邮箱" columnType:"varchar(255)" dataType:"varchar" columnKey:"UNI"`
Mobile string `` /* 131-byte string literal not displayed */
Password string `` /* 139-byte string literal not displayed */
RoleId uint `` /* 172-byte string literal not displayed */
Status uint `` /* 149-byte string literal not displayed */
Avatar string `` /* 129-byte string literal not displayed */
Remark string `gorm:"column:remark" form:"remark" json:"remark" comment:"备注" columnType:"varchar(255)" dataType:"varchar" columnKey:""`
FriendIds JsonArrayUint `gorm:"type:json" json:"friend_ids" comment:"json uint 数组"`
Karma uint `json:"karma"`
CommentIds JsonArrayUint `gorm:"type:json" json:"comment_ids"`
HashedPassword string `gorm:"-" json:"-"`
}
User
func (*User) CreateUserOfRole ¶
CreateUserOfRole
type WslogHook ¶
type WslogHook struct {
BaseModel
Name string `json:"name" gorm:"type:varchar(50);unique_index"`
UserId uint `json:"user_id"`
Token string `json:"token"`
ExpireAt time.Time `json:"expire_at"`
}
func WslogHookCheckToken ¶
type WslogMsg ¶
type WslogMsg struct {
BaseModel
HookId uint `gorm:"index" json:"hook_id"`
UserId uint `gorm:"index" json:"user_id"`
ToUid uint `gorm:"index" json:"to_uid"`
SlackMsg SlackMsg `gorm:"type:json" json:"slack_msg"`
}
Click to show internal directories.
Click to hide internal directories.