Bug #32704
closedThe /api/usergroups/:usergroup_id/external_usergroups API is not accepting 1-group as the name of usergroup
Description
Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1967319
Description of problem:
The redhat.satellite.external_usergroup calls this API --> GET /api/usergroups/:usergroup_id/external_usergroups
As per the satellite apidoc the :usergroup_id , should be a string
But if I decide to use a satellite usergroup name e.g "1-group" , it fails whereas "1 group" works fine.
So the hyphen (-) is creating some sort of issue here.
Version-Release number of selected component (if applicable):
Satellite 6.9
How reproducible:
Always
Steps to Reproduce:
1. Build a Satellite 6.9
2. Create a usergroup by name "1-group"
3. Run following API --> curl -ku admin:RedHat1! "https://satellite.example.com/api/v2/usergroups/1-group/external_usergroups/"
4. Modify the usergroup name from "1-group" to "1 group"
5. Run following API --> curl -ku admin:RedHat1! "https://satellite.example.com/api/v2/usergroups/1%20group/external_usergroups/"
Actual results:
Step 3 error:
~~
{
"error": {"message":"Resource external_usergroup not found by id ''"}
}
~~
Step 5 success:
~~
{
"total": 0,
"subtotal": 0,
"page": 1,
"per_page": 20,
"search": null,
"sort": {
"by": null,
"order": null
},
"results": []
}
~~
Expected results:
Step 3 should be successful as well.
Additional info:
This affects the working of redhat.satellite.external_usergroup module if customer decided to map an AD group to Satellite usergroup by name "043-enterprise systems"