github.com/wawandco/ox@v0.13.6-0.20230809142027-913b3d837f2a/plugins/tools/standard/modtidy.go (about)

     1  package standard
     2  
     3  import (
     4  	"context"
     5  	"os"
     6  	"os/exec"
     7  
     8  	"github.com/wawandco/ox/plugins/base/new"
     9  )
    10  
    11  type ModTidy struct{}
    12  
    13  func (gag ModTidy) Name() string {
    14  	return "mod-tidy"
    15  }
    16  
    17  func (gag ModTidy) AfterInitialize(ctx context.Context, options new.Options) error {
    18  	err := os.Chdir(options.Folder)
    19  	if err != nil {
    20  		return err
    21  	}
    22  
    23  	cmd := exec.CommandContext(context.Background(), "go", "mod", "tidy")
    24  	cmd.Stderr = os.Stderr
    25  	cmd.Stdout = os.Stdout
    26  	cmd.Stdin = os.Stdin
    27  
    28  	return cmd.Run()
    29  }