github.com/amane3/goreleaser@v0.182.0/internal/pipe/project/project.go (about) 1 // Package project sets "high level" defaults related to the project. 2 package project 3 4 import ( 5 "fmt" 6 7 "github.com/amane3/goreleaser/pkg/context" 8 ) 9 10 // Pipe implemens defaulter to set the project name. 11 type Pipe struct{} 12 13 func (Pipe) String() string { 14 return "project name" 15 } 16 17 // Default set project defaults. 18 func (Pipe) Default(ctx *context.Context) error { 19 if ctx.Config.ProjectName == "" { 20 switch { 21 case ctx.Config.Release.GitHub.Name != "": 22 ctx.Config.ProjectName = ctx.Config.Release.GitHub.Name 23 case ctx.Config.Release.GitLab.Name != "": 24 ctx.Config.ProjectName = ctx.Config.Release.GitLab.Name 25 case ctx.Config.Release.Gitea.Name != "": 26 ctx.Config.ProjectName = ctx.Config.Release.Gitea.Name 27 default: 28 return fmt.Errorf("couldn't guess project_name, please add it to your config") 29 } 30 } 31 return nil 32 }