tronnet/workflows: Static Analysis -- Golang / static-go (push) Successful in 30s
use json encoding for route body parameters, implement modify user/group/pool operations, simplify schema by using comon lib struct tags and RequireAll and AtLeastOne helper functions, properly implement locadb as Backend interface
37 lines
1.3 KiB
Go
37 lines
1.3 KiB
Go
package app
|
|
|
|
import paas "proxmoxaas-common-lib"
|
|
|
|
type Backend interface {
|
|
NewPool(poolname string, pool Pool) (int, error)
|
|
ModPool(poolname string, pool Pool) (int, error)
|
|
GetPool(poolname string) (Pool, []string, int, error) // []string members
|
|
DelPool(poolname string) (int, error)
|
|
NewGroup(groupname Groupname, group Group) (int, error)
|
|
ModGroup(groupname Groupname, group Group) (int, error)
|
|
GetGroup(groupname Groupname) (Group, []string, int, error) // []string members
|
|
DelGroup(groupname Groupname) (int, error)
|
|
AddGroupToPool(groupname Groupname, poolname string) (int, error)
|
|
DelGroupFromPool(groupname Groupname, poolname string) (int, error)
|
|
NewUser(username Username, user User) (int, error)
|
|
ModUser(username Username, user User) (int, error)
|
|
GetUser(username Username) (User, int, error)
|
|
DelUser(username Username) (int, error)
|
|
AddUserToGroup(username Username, groupname Groupname) (int, error)
|
|
DelUserFromGroup(username Username, groupname Groupname) (int, error)
|
|
}
|
|
|
|
type Pool = paas.Pool
|
|
type Groupname = paas.Groupname
|
|
type Group = paas.Group
|
|
type Username = paas.Username
|
|
type User = paas.User
|
|
|
|
func ParseGroupname(groupname string) (Groupname, error) {
|
|
return paas.ParseGroupname(groupname)
|
|
}
|
|
|
|
func ParseUsername(username string) (Username, error) {
|
|
return paas.ParseUsername(username)
|
|
}
|