@@ -12,11 +12,12 @@ import (
1212 "github.com/tschaefer/finchctl/cmd/errors"
1313 "github.com/tschaefer/finchctl/cmd/format"
1414 "github.com/tschaefer/finchctl/internal/service"
15+ "github.com/tschaefer/finchctl/internal/version"
1516)
1617
1718var deregisterCmd = & cobra.Command {
1819 Use : "deregister [user@]host[:port]" ,
19- Short : "Deregister the client from a service on a remote host" ,
20+ Short : "Deregister a client from a service on a remote host" ,
2021 Args : cobra .ExactArgs (1 ),
2122 Run : runDeregisterCmd ,
2223 ValidArgsFunction : completion .CompleteHostName ,
@@ -25,6 +26,7 @@ var deregisterCmd = &cobra.Command{
2526func init () {
2627 deregisterCmd .Flags ().String ("run.format" , "progress" , "output format" )
2728 deregisterCmd .Flags ().Bool ("run.dry-run" , false , "do not deregister, just print the commands that would be run" )
29+ deregisterCmd .Flags ().String ("client.rid" , version .ResourceID (), "client resource ID (default: local client rid)" )
2830
2931 _ = deregisterCmd .RegisterFlagCompletionFunc ("run.format" , completion .CompleteRunFormat )
3032}
@@ -46,6 +48,8 @@ func runDeregisterCmd(cmd *cobra.Command, args []string) {
4648 })
4749 errors .CheckErr (err , formatType )
4850
49- err = s .Deregister ()
51+ clientID , _ := cmd .Flags ().GetString ("client.rid" )
52+ keepCfg := cmd .Flags ().Lookup ("client.rid" ).Changed
53+ err = s .Deregister (clientID , keepCfg )
5054 errors .CheckErr (err , formatType )
5155}
0 commit comments