github.com/hhsnopek/up@v0.1.1/internal/cli/run/run.go (about)

     1  package run
     2  
     3  import (
     4  	"github.com/apex/up/internal/cli/root"
     5  	"github.com/apex/up/internal/stats"
     6  	"github.com/apex/up/internal/util"
     7  	"github.com/tj/kingpin"
     8  )
     9  
    10  func init() {
    11  	cmd := root.Command("run", "Run a hook.")
    12  	cmd.Example(`up run build`, "Run build hook.")
    13  	cmd.Example(`up run clean`, "Run clean hook.")
    14  
    15  	hook := cmd.Arg("hook", "Name of the hook to run.").Required().String()
    16  
    17  	cmd.Action(func(_ *kingpin.ParseContext) error {
    18  		defer util.Pad()()
    19  
    20  		stats.Track("Hook", map[string]interface{}{
    21  			"name": *hook,
    22  		})
    23  
    24  		return root.Project.RunHook(*hook)
    25  	})
    26  }