feat: add skip_if_no_notes_file setting

This commit is contained in:
RaviAnand Mohabir 2024-06-25 15:29:33 +02:00
parent 8a5a2b85cf
commit 3509a5c98f

View File

@ -23,18 +23,19 @@ type Args struct {
// Level defines the plugin log level. // Level defines the plugin log level.
Level string `envconfig:"PLUGIN_LOG_LEVEL"` Level string `envconfig:"PLUGIN_LOG_LEVEL"`
GiteaUrl string `envconfig:"PLUGIN_GITEA_URL"` GiteaUrl string `envconfig:"PLUGIN_GITEA_URL"`
GiteaUsername string `envconfig:"PLUGIN_GITEA_USERNAME"` GiteaUsername string `envconfig:"PLUGIN_GITEA_USERNAME"`
GiteaPassword string `envconfig:"PLUGIN_GITEA_PASSWORD"` GiteaPassword string `envconfig:"PLUGIN_GITEA_PASSWORD"`
Owner string `envconfig:"PLUGIN_OWNER"` Owner string `envconfig:"PLUGIN_OWNER"`
Repo string `envconfig:"PLUGIN_REPO"` Repo string `envconfig:"PLUGIN_REPO"`
TitleFormat string `envconfig:"PLUGIN_TITLE_FORMAT"` TitleFormat string `envconfig:"PLUGIN_TITLE_FORMAT"`
UseLatestGitTag bool `envconfig:"PLUGIN_USE_LATEST_GIT_TAG" default:"true"` UseLatestGitTag bool `envconfig:"PLUGIN_USE_LATEST_GIT_TAG" default:"true"`
TagFile string `envconfig:"PLUGIN_TAG_FILE"` TagFile string `envconfig:"PLUGIN_TAG_FILE"`
TagRegex string `envconfig:"PLUGIN_TAG_REGEX"` TagRegex string `envconfig:"PLUGIN_TAG_REGEX"`
NotesFile string `envconfig:"PLUGIN_NOTES_FILE"` NotesFile string `envconfig:"PLUGIN_NOTES_FILE"`
Notes string `envconfig:"PLUGIN_NOTES"` Notes string `envconfig:"PLUGIN_NOTES"`
IsPrerelease bool `envconfig:"PLUGIN_IS_PRERELEASE"` IsPrerelease bool `envconfig:"PLUGIN_IS_PRERELEASE"`
SkipIfNoNotesFile bool `envconfig:"PLUGIN_SKIP_IF_NO_NOTES_FILE"`
} }
type TitleTemplateCtx struct { type TitleTemplateCtx struct {
@ -60,6 +61,10 @@ func Exec(ctx context.Context, args Args) error {
content, err := os.ReadFile(args.NotesFile) content, err := os.ReadFile(args.NotesFile)
if err != nil { if err != nil {
if os.IsNotExist(err) && args.SkipIfNoNotesFile {
fmt.Println("No notes file found, skipping release")
return nil
}
return fmt.Errorf("error reading notes file %w", err) return fmt.Errorf("error reading notes file %w", err)
} }