mirror of https://github.com/grafana/grafana.git
				
				
				
			
		
			
	
	
		
			39 lines
		
	
	
		
			850 B
		
	
	
	
		
			Go
		
	
	
	
		
		
			
		
	
	
			39 lines
		
	
	
		
			850 B
		
	
	
	
		
			Go
		
	
	
	
|  | package main | ||
|  | 
 | ||
|  | import ( | ||
|  | 	"log" | ||
|  | 	"strings" | ||
|  | 
 | ||
|  | 	"github.com/grafana/grafana/pkg/build/errutil" | ||
|  | 	"github.com/grafana/grafana/pkg/build/frontend" | ||
|  | 	"github.com/grafana/grafana/pkg/build/syncutil" | ||
|  | 	"github.com/urfave/cli/v2" | ||
|  | ) | ||
|  | 
 | ||
|  | func BuildFrontendPackages(c *cli.Context) error { | ||
|  | 	version := "" | ||
|  | 	if c.NArg() == 1 { | ||
|  | 		version = strings.TrimPrefix(c.Args().Get(0), "v") | ||
|  | 	} | ||
|  | 
 | ||
|  | 	cfg, mode, err := frontend.GetConfig(c, version) | ||
|  | 	if err != nil { | ||
|  | 		return err | ||
|  | 	} | ||
|  | 
 | ||
|  | 	p := syncutil.NewWorkerPool(cfg.NumWorkers) | ||
|  | 	defer p.Close() | ||
|  | 
 | ||
|  | 	g, _ := errutil.GroupWithContext(c.Context) | ||
|  | 	if err := frontend.BuildFrontendPackages(cfg.PackageVersion, mode, frontend.GrafanaDir, p, g); err != nil { | ||
|  | 		return cli.Exit(err.Error(), 1) | ||
|  | 	} | ||
|  | 	if err := g.Wait(); err != nil { | ||
|  | 		return cli.Exit(err.Error(), 1) | ||
|  | 	} | ||
|  | 
 | ||
|  | 	log.Println("Successfully built Grafana front-end packages!") | ||
|  | 
 | ||
|  | 	return nil | ||
|  | } |