[rgw] Why are some parameters unsupported ?
- Dominant language
- Go
- Stars
- 691
- Forks
- 296
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 11
Description
I found this comment `// valid parameters not supported by go-ceph: system, exclusive, placement-tags` in the Create user function and I was wondering if there is a specific reason why its not supported. is there an issue with just adding it to the struct and to the array in the function ?
``` golang
func (api *API) CreateUser(ctx context.Context, user User) (User, error) {
if user.ID == "" {
return User{}, errMissingUserID
}
if user.DisplayName == "" {
return User{}, errMissingUserDisplayName
}
// valid parameters not supported by go-ceph: system, exclusive, placement-tags
body, err := api.call(ctx, http.MethodPut, "/user", valueToURLParams(user, []string{"uid", "display-name", "default-placement", "email", "key-type", "access-key", "secret-key", "user-caps", "tenant", "generate-key", "max-buckets", "suspended", "op-mask", "account-id", "account-root"}))
if err != nil {
return User{}, err
}
// Unmarshal response into Go type
u := User{}
err = json.Unmarshal(body, &u)
if err != nil {
return User{}, fmt.Errorf("%s. %s. %w", unmarshalError, string(body), err)
}
return u, nil
}
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the CreateUser entry point and the User type shown in the issue, then inspect how valueToURLParams builds the request. Check Ceph RGW support for system, exclusive, and placement-tags before deciding whether they can be exposed. Done means the supported parameters are represented consistently and CreateUser sends them correctly, with relevant tests updated or added if present.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100