github.com/Benchkram/bob@v0.0.0-20220321080157-7c8f3876e225/bob/bobfile/playbook.go (about)

     1  package bobfile
     2  
     3  import (
     4  	"github.com/Benchkram/bob/bob/playbook"
     5  	"github.com/Benchkram/bob/bobtask"
     6  )
     7  
     8  func (b *Bobfile) Playbook(taskname string, opts ...playbook.Option) (*playbook.Playbook, error) {
     9  	pb := playbook.New(
    10  		taskname,
    11  		opts...,
    12  	)
    13  
    14  	err := b.BTasks.Walk(taskname, "", func(tn string, task bobtask.Task, err error) error {
    15  		if err != nil {
    16  			return err
    17  		}
    18  
    19  		pb.Tasks[tn] = playbook.NewStatus(task)
    20  
    21  		return nil
    22  	})
    23  	if err != nil {
    24  		return nil, err
    25  	}
    26  
    27  	return pb, nil
    28  }