@@ -100,6 +100,12 @@ func (p *Plural) cdServiceCommands() []cli.Command {
100100 Action : latestVersion (requireArgs (p .handleDeleteClusterService , []string {"SERVICE_ID" })),
101101 Usage : "delete cluster service" ,
102102 },
103+ {
104+ Name : "kick" ,
105+ ArgsUsage : "SERVICE_ID" ,
106+ Action : latestVersion (requireArgs (p .handleKickClusterService , []string {"SERVICE_ID" })),
107+ Usage : "force sync cluster service" ,
108+ },
103109 }
104110}
105111
@@ -432,6 +438,29 @@ func (p *Plural) handleDeleteClusterService(c *cli.Context) error {
432438 return nil
433439}
434440
441+ func (p * Plural ) handleKickClusterService (c * cli.Context ) error {
442+ if err := p .InitConsoleClient (consoleToken , consoleURL ); err != nil {
443+ return err
444+ }
445+ serviceId , clusterName , serviceName , err := getServiceIdClusterNameServiceName (c .Args ().Get (0 ))
446+ if err != nil {
447+ return err
448+ }
449+ svc , err := p .ConsoleClient .GetClusterService (serviceId , serviceName , clusterName )
450+ if err != nil {
451+ return err
452+ }
453+ if svc == nil {
454+ return fmt .Errorf ("Could not find service for %s" , c .Args ().Get (0 ))
455+ }
456+ kick , err := p .ConsoleClient .KickClusterService (serviceId , serviceName , clusterName )
457+ if err != nil {
458+ return err
459+ }
460+ utils .Success ("Service %s has been sync successfully\n " , kick .Name )
461+ return nil
462+ }
463+
435464type ServiceDeploymentAttributesConfiguration struct {
436465 Configuration []* gqlclient.ConfigAttributes
437466}
0 commit comments