// Package project sets "high level" defaults related to the project. package project import ( "fmt" "github.com/goreleaser/goreleaser/pkg/context" ) // Pipe implemens defaulter to set the project name. type Pipe struct{} func (Pipe) String() string { return "project name" } // Default set project defaults. func (Pipe) Default(ctx *context.Context) error { if ctx.Config.ProjectName == "" { switch { case ctx.Config.Release.GitHub.Name != "": ctx.Config.ProjectName = ctx.Config.Release.GitHub.Name case ctx.Config.Release.GitLab.Name != "": ctx.Config.ProjectName = ctx.Config.Release.GitLab.Name case ctx.Config.Release.Gitea.Name != "": ctx.Config.ProjectName = ctx.Config.Release.Gitea.Name default: return fmt.Errorf("couldn't guess project_name, please add it to your config") } } return nil }