package logic import ( "context" "time" "certmanager/internal/descriptor" "certmanager/pkg/auxid" ) func (lg *Logic) CleanDatabase(ctx context.Context) error { var err error err = lg.db.CleanDatabase(ctx) if err != nil { return err } return err } func (lg *Logic) SeedAccount(ctx context.Context) (int64, error) { var err error var userID int64 accountDescrs, err := lg.db.ListAccounts(ctx) if err != nil { return userID, err } if len(accountDescrs) == 0 { now := time.Now().Format(time.RFC3339) accountDescr := &descriptor.Account{ ID: auxid.GenID(), Username: "certman", Password: "certman", Disabled: false, CreatedAt: now, UpdatedAt: now, } err = lg.db.InsertAccount(ctx, accountDescr) if err != nil { return userID, err } userID = accountDescr.ID grantTypes := []string{ descriptor.GrantModifyServices, descriptor.GrantModifyUssuers, descriptor.GrantModifyUsers, } for _, grantType := range grantTypes { grantDescr := &descriptor.Grant{ AccountID: accountDescr.ID, Operation: grantType, CreatedAt: now, } err = lg.db.InsertGrant(ctx, grantDescr) if err != nil { return userID, err } } } return userID, err }