uuid used

This commit is contained in:
2026-02-20 15:06:15 +02:00
parent 35e83ed705
commit 8546ad496f
31 changed files with 265 additions and 238 deletions
+11 -10
View File
@@ -18,6 +18,7 @@ import (
"github.com/spf13/cobra"
"github.com/spf13/viper"
"mstore/pkg/auxuuid"
"mstore/pkg/client"
"mstore/pkg/descr"
"mstore/pkg/terms"
@@ -125,8 +126,8 @@ type CreateAccountParams struct {
NewPassword string
}
type CreateAccountResult struct {
AccountID string `yaml:"accountId"`
Grants map[string]string `yaml:"grantsIds,omitempty"`
AccountID auxuuid.UUID `yaml:"accountId"`
Grants map[auxuuid.UUID]string `yaml:"grantsIds,omitempty"`
}
func (util *AccountUtil) CreateAccount(cmd *cobra.Command, args []string) {
@@ -140,7 +141,7 @@ func (util *AccountUtil) CreateAccount(cmd *cobra.Command, args []string) {
func (util *AccountUtil) createAccount(common *CommonAccountParams, params *CreateAccountParams) (*CreateAccountResult, error) {
var err error
res := &CreateAccountResult{
Grants: make(map[string]string, 0),
Grants: make(map[auxuuid.UUID]string, 0),
}
hostname, err := packUserinfo(common.Hostname, common.Username, common.Password)
if err != nil {
@@ -202,7 +203,7 @@ func (util *AccountUtil) updateAccount(common *CommonAccountParams, params *Upda
re := regexp.MustCompile(uuidRegex)
id := strings.ToLower(params.AccountID)
if re.MatchString(id) {
err = client.NewClient().UpdateAccountByID(ctx, hostname, id, params.NewUsername, params.NewPassword)
err = client.NewClient().UpdateAccountByID(ctx, hostname, auxuuid.UUID(id), params.NewUsername, params.NewPassword)
} else {
err = client.NewClient().UpdateAccountByName(ctx, hostname, params.AccountID, params.NewUsername, params.NewPassword)
}
@@ -243,7 +244,7 @@ func (util *AccountUtil) getAccount(common *CommonAccountParams, params *GetAcco
re := regexp.MustCompile(uuidRegex)
id := strings.ToLower(params.AccountID)
if re.MatchString(id) {
opRes, err = client.NewClient().GetAccountByID(ctx, hostname, id)
opRes, err = client.NewClient().GetAccountByID(ctx, hostname, auxuuid.UUID(id))
} else {
opRes, err = client.NewClient().GetAccountByName(ctx, hostname, params.AccountID)
}
@@ -280,7 +281,7 @@ func (util *AccountUtil) deleteAccount(common *CommonAccountParams, params *Dele
re := regexp.MustCompile(uuidRegex)
id := strings.ToLower(params.AccountID)
if re.MatchString(id) {
err = client.NewClient().DeleteAccountByID(ctx, hostname, id)
err = client.NewClient().DeleteAccountByID(ctx, hostname, auxuuid.UUID(id))
} else {
err = client.NewClient().DeleteAccountByName(ctx, hostname, params.AccountID)
}
@@ -298,9 +299,9 @@ type ListAccountsParams struct {
}
type Userinfo struct {
Username string `yaml:"username,omitempty"`
AccountID string `yaml:"accountId,omitempty"`
Rights map[string]string `yaml:"rights,omitempty"`
Username string `yaml:"username,omitempty"`
AccountID auxuuid.UUID `yaml:"accountId,omitempty"`
Rights map[auxuuid.UUID]string `yaml:"rights,omitempty"`
}
type ListAccountsResult struct {
@@ -349,7 +350,7 @@ func (util *AccountUtil) listAccounts(common *CommonAccountParams, params *ListA
userinfo := Userinfo{
Username: account.Username,
AccountID: account.ID,
Rights: make(map[string]string, 0),
Rights: make(map[auxuuid.UUID]string, 0),
}
for _, grant := range account.Grants {
userinfo.Rights[grant.ID] = grant.Right
+11 -10
View File
@@ -18,6 +18,7 @@ import (
"github.com/spf13/cobra"
"github.com/spf13/viper"
"mstore/pkg/auxuuid"
"mstore/pkg/client"
"mstore/pkg/descr"
)
@@ -115,7 +116,7 @@ type CreateGrantParams struct {
Pattern string
}
type CreateGrantResult struct {
GrantID string `yaml:"grantId"`
GrantID auxuuid.UUID `yaml:"grantId"`
}
func (util *GrantUtil) CreateGrant(cmd *cobra.Command, args []string) {
@@ -138,9 +139,9 @@ func (util *GrantUtil) createGrant(common *CommonGrantParams, params *CreateGran
ctx, _ := context.WithTimeout(context.Background(), timeout)
re := regexp.MustCompile(uuidRegex)
id := strings.ToLower(params.AccountID)
var operRes string
var operRes auxuuid.UUID
if re.MatchString(id) {
operRes, err = client.NewClient().CreateGrantByAccountID(ctx, hostname, params.AccountID, params.Right, params.Pattern)
operRes, err = client.NewClient().CreateGrantByAccountID(ctx, hostname, auxuuid.UUID(id), params.Right, params.Pattern)
} else {
operRes, err = client.NewClient().CreateGrantByUsername(ctx, hostname, params.AccountID, params.Right, params.Pattern)
}
@@ -176,7 +177,7 @@ func (util *GrantUtil) updateGrant(common *CommonGrantParams, params *UpdateGran
timeout := time.Duration(common.Timeout) * time.Second
ctx, _ := context.WithTimeout(context.Background(), timeout)
id := strings.ToLower(params.GrantID)
err = client.NewClient().UpdateGrant(ctx, hostname, id, params.Pattern)
err = client.NewClient().UpdateGrant(ctx, hostname, auxuuid.UUID(id), params.Pattern)
if err != nil {
return res, err
}
@@ -212,7 +213,7 @@ func (util *GrantUtil) getGrant(common *CommonGrantParams, params *GetGrantParam
opRes := &descr.Grant{}
id := strings.ToLower(params.GrantID)
opRes, err = client.NewClient().GetGrant(ctx, hostname, id)
opRes, err = client.NewClient().GetGrant(ctx, hostname, auxuuid.UUID(id))
if err != nil {
return res, err
}
@@ -243,7 +244,7 @@ func (util *GrantUtil) deleteGrant(common *CommonGrantParams, params *DeleteGran
timeout := time.Duration(common.Timeout) * time.Second
ctx, _ := context.WithTimeout(context.Background(), timeout)
id := strings.ToLower(params.GrantID)
err = client.NewClient().DeleteGrant(ctx, hostname, id)
err = client.NewClient().DeleteGrant(ctx, hostname, auxuuid.UUID(id))
if err != nil {
return res, err
}
@@ -257,8 +258,8 @@ type ListGrantsParams struct {
}
type ListGrantsResult struct {
Grants []descr.Grant `yaml:"grants,omitempty"`
Rights map[string]string `yaml:"rights,omitempty"`
Grants []descr.Grant `yaml:"grants,omitempty"`
Rights map[auxuuid.UUID]string `yaml:"rights,omitempty"`
}
func (util *GrantUtil) ListGrants(cmd *cobra.Command, args []string) {
@@ -280,7 +281,7 @@ func (util *GrantUtil) listGrants(common *CommonGrantParams, params *ListGrantsP
re := regexp.MustCompile(uuidRegex)
id := strings.ToLower(params.AccountID)
if re.MatchString(id) {
grants, err = client.NewClient().ListGrantsByAccountID(ctx, hostname, params.AccountID)
grants, err = client.NewClient().ListGrantsByAccountID(ctx, hostname, auxuuid.UUID(id))
} else {
grants, err = client.NewClient().ListGrantsByUsername(ctx, hostname, params.AccountID)
}
@@ -290,7 +291,7 @@ func (util *GrantUtil) listGrants(common *CommonGrantParams, params *ListGrantsP
if params.Detail {
res.Grants = grants
} else {
res.Rights = make(map[string]string, 0)
res.Rights = make(map[auxuuid.UUID]string, 0)
for _, item := range grants {
res.Rights[item.ID] = item.Right
}