MCPcopy Create free account
hub / github.com/1Panel-dev/1Panel / BindUser

Method BindUser

agent/app/service/database_postgresql.go:89–123  ·  view source on GitHub ↗
(req dto.PostgresqlBindUser)

Source from the content-addressed store, hash-verified

87}
88
89func (u *PostgresqlService) BindUser(req dto.PostgresqlBindUser) error {
90 if cmd.CheckIllegal(req.Name, req.Username, req.Password) {
91 return buserr.New("ErrCmdIllegal")
92 }
93 dbItem, err := postgresqlRepo.Get(postgresqlRepo.WithByPostgresqlName(req.Database), repo.WithByName(req.Name))
94 if err != nil {
95 return err
96 }
97
98 pgClient, err := LoadPostgresqlClientByFrom(req.Database)
99 if err != nil {
100 return err
101 }
102 if err := pgClient.CreateUser(client.CreateInfo{
103 Name: req.Name,
104 Username: req.Username,
105 Password: req.Password,
106 SuperUser: req.SuperUser,
107 Timeout: 300,
108 }, false); err != nil {
109 return err
110 }
111 pass, err := encrypt.StringEncrypt(req.Password)
112 if err != nil {
113 return fmt.Errorf("decrypt database db password failed, err: %v", err)
114 }
115 if err := postgresqlRepo.Update(dbItem.ID, map[string]interface{}{
116 "username": req.Username,
117 "password": pass,
118 "super_user": req.SuperUser,
119 }); err != nil {
120 return err
121 }
122 return nil
123}
124
125func (u *PostgresqlService) Create(ctx context.Context, req dto.PostgresqlDBCreate) (*model.DatabasePostgresql, error) {
126 if cmd.CheckIllegal(req.Name, req.Username, req.Password, req.Format) {

Callers

nothing calls this directly

Calls 5

GetMethod · 0.65
WithByPostgresqlNameMethod · 0.65
CreateUserMethod · 0.65
UpdateMethod · 0.65

Tested by

no test coverage detected