From 54b1b71b1293ba399f9227909f4bb664f7780211 Mon Sep 17 00:00:00 2001 From: Dmitry Petrov Date: Mon, 15 Jan 2024 18:26:46 +0100 Subject: [PATCH] kleiner release: allow to specify the version explicitly --- cmd/release.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/cmd/release.go b/cmd/release.go index 614f347..785415f 100644 --- a/cmd/release.go +++ b/cmd/release.go @@ -18,6 +18,7 @@ import ( func ReleaseCommand(buildinfo *types.BuildInfo) *cobra.Command { var tagComment string + var versionOverride string var releaseCmd = &cobra.Command{ Use: "release", @@ -56,6 +57,17 @@ func ReleaseCommand(buildinfo *types.BuildInfo) *cobra.Command { lastVersionStr = lastVersion.String() } + if versionOverride != "" { + v, err := version.Parse(versionOverride) + + if err != nil { + return err + } + + fmt.Printf("Using [%s] as a new version\n", v.String()) + newVersion = v + } + input := confirmation.New( fmt.Sprintf("Do you want to release version [%s]? Last version is %s.", newVersion, lastVersionStr), confirmation.No) @@ -122,6 +134,7 @@ func ReleaseCommand(buildinfo *types.BuildInfo) *cobra.Command { } releaseCmd.Flags().StringVarP(&tagComment, "tag-comment", "m", "", "a message for the new tag") + releaseCmd.Flags().StringVarP(&versionOverride, "version", "v", "", "specify the version explicitly") _ = releaseCmd.MarkFlagRequired("tag-comment") return releaseCmd