mirror of
https://github.com/juanfont/headscale.git
synced 2026-09-27 02:26:21 +09:00
cli: fix users rename when resolved by name
The rename request sent the raw --identifier flag value, which is 0 when the user was resolved with --name, so the API answered "user not found". Send the matched user's ID instead. Equivalent of #3442 on main, rewritten: that fix targets the v1 HTTP client, which 0.29 does not have.
This commit is contained in:
@@ -231,7 +231,7 @@ var renameUserCmd = &cobra.Command{
|
||||
newName, _ := cmd.Flags().GetString("new-name")
|
||||
|
||||
renameReq := &v1.RenameUserRequest{
|
||||
OldId: id,
|
||||
OldId: users.GetUsers()[0].GetId(),
|
||||
NewName: newName,
|
||||
}
|
||||
|
||||
|
||||
+40
-1
@@ -237,13 +237,52 @@ func TestUserCommand(t *testing.T) {
|
||||
}
|
||||
}, integrationutil.ScaledTimeout(20*time.Second), 1*time.Second)
|
||||
|
||||
_, err = headscale.Execute(
|
||||
[]string{
|
||||
"headscale",
|
||||
"users",
|
||||
"rename",
|
||||
"--output=json",
|
||||
"--name=newname",
|
||||
"--new-name=renamedbyname",
|
||||
},
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
var listAfterRenameByName []*v1.User
|
||||
|
||||
assert.EventuallyWithT(t, func(ct *assert.CollectT) {
|
||||
err := executeAndUnmarshal(headscale,
|
||||
[]string{
|
||||
"headscale",
|
||||
"users",
|
||||
"list",
|
||||
"--output",
|
||||
"json",
|
||||
},
|
||||
&listAfterRenameByName,
|
||||
)
|
||||
assert.NoError(ct, err)
|
||||
|
||||
if !assert.Len(ct, listAfterRenameByName, 1) {
|
||||
return
|
||||
}
|
||||
|
||||
assert.Equal(
|
||||
ct,
|
||||
"renamedbyname",
|
||||
listAfterRenameByName[0].GetName(),
|
||||
"Should have renamedbyname after rename resolved by name",
|
||||
)
|
||||
}, integrationutil.ScaledTimeout(20*time.Second), 1*time.Second)
|
||||
|
||||
deleteResult, err = headscale.Execute(
|
||||
[]string{
|
||||
"headscale",
|
||||
"users",
|
||||
"destroy",
|
||||
"--force",
|
||||
"--name=newname",
|
||||
"--name=renamedbyname",
|
||||
},
|
||||
)
|
||||
require.NoError(t, err)
|
||||
|
||||
Reference in New Issue
Block a user