package convids import ( "context" "fmt" "io" "codeberg.org/danjones000/utils/chill" "codeberg.org/danjones000/utils/cli/spin" conutils "codeberg.org/danjones000/utils/convids" ) func GetWalker(ctx context.Context, dryRun bool, in io.Reader, out, errOut io.Writer) conutils.ShowWalker { if dryRun { return conutils.DryRun(out) } gs := conutils.GetShowWithIO(ctx, in, out, errOut) return func(s *conutils.Show, path string) error { ct := chill.Chill(ctx) msg := fmt.Sprintf("Waiting for CPU to cool, for %s", path) sp := spin.Spin(ct, msg) err := sp.Wait() if err != nil { return err } return gs(s, path) } }