func commandReparentShard(wr *wrangler.Wrangler, subFlags *flag.FlagSet, args []string) (string, error) { leaveMasterReadOnly := subFlags.Bool("leave-master-read-only", false, "leaves the master read-only after reparenting") force := subFlags.Bool("force", false, "will force the reparent even if the master is already correct") subFlags.Parse(args) if subFlags.NArg() != 2 { log.Fatalf("action ReparentShard requires <keyspace/shard|zk shard path> <tablet alias|zk tablet path>") } keyspace, shard := shardParamToKeyspaceShard(subFlags.Arg(0)) tabletAlias := tabletParamToTabletAlias(subFlags.Arg(1)) return "", wr.ReparentShard(keyspace, shard, tabletAlias, *leaveMasterReadOnly, *force) }