diff options
| author | Max Resnick <max@ofmax.li> | 2023-12-09 22:52:00 -0800 |
|---|---|---|
| committer | Max Resnick <max@ofmax.li> | 2023-12-09 22:52:00 -0800 |
| commit | 397e118d646ccb3e7522153780fc96bf0b25dccf (patch) | |
| tree | 1c4eb3a48b3cc04d9848d42541dd5c72eec05743 /main.go | |
| parent | 0fef771016b2f14d389ee58fe6a12c9626109642 (diff) | |
| download | go-bumpver-397e118d646ccb3e7522153780fc96bf0b25dccf.tar.gz | |
chore: added more tests
Diffstat (limited to '')
| -rw-r--r-- | main.go | 18 |
1 files changed, 11 insertions, 7 deletions
@@ -102,7 +102,6 @@ var ( errNoRemoteFound = errors.New("No remotes found") clonedRepo = &git.Repository{} localRepo = &git.Repository{} - repoDir string remoteName string preReleaseFmtArgs map[string]string = make(map[string]string) preRelease bool @@ -115,6 +114,7 @@ var ( RunE: func(cmd *cobra.Command, argz []string) error { part := argz[0] preRelease := viper.GetBool("prerelease") + preReleaseFmtString := viper.GetString("prerelease-fmt") // remoteName := viper.GetString("remote-name") repoDir := viper.GetString("repo-dir") @@ -148,7 +148,8 @@ var ( nextVersion = lastVersion.IncPatch() case "prerelease": preRelVersion := preReleaseVersion{ - []string{"PR", "$KeyArg PR_NUM"}, + // []string{"PR", "$KeyArg PR_NUM"}, + parseFmtString(preReleaseFmtString), preReleaseFmtArgs, lastVersion, versionPart, @@ -194,6 +195,10 @@ func findTags(repo *git.Repository) ([]*semver.Version, error) { return repoTags, nil } +func parseFmtString(toSplit string) []string { + return strings.Split(toSplit, ".") +} + func main() { if err := rootCmd.Execute(); err != nil { fmt.Fprintln(os.Stderr, err) @@ -203,23 +208,22 @@ func main() { func init() { // global flags - viper.SetConfigName(".version") + viper.SetConfigName(".version.toml") viper.SetConfigType("toml") viper.AddConfigPath(".") - cwd := "" err := viper.ReadInConfig() // Find and read the config file if err != nil { // Handle errors reading the config file fmt.Println(err) - cwd, err = os.Getwd() } + cwd, err := os.Getwd() if err != nil { log.Fatal(err) } rootCmd.PersistentFlags().BoolVarP(&preRelease, "prerelease", "p", false, "create a prerelease tag for the (major|minor|patch)") - rootCmd.PersistentFlags().String("prerelease-fmt", "PR $KeyArg PR_NUM $BumpInt", "The format string for prerelease versions") + rootCmd.PersistentFlags().String("prerelease-fmt", "PR.$KeyArg PR_NUM.$BumpInt", "The format string for prerelease versions") rootCmd.PersistentFlags().StringToStringVarP(&preReleaseFmtArgs, "key-args", "k", nil, "key=arg for the fmt string") - repoDir = *rootCmd.PersistentFlags().String("repo-dir", cwd, "repo to examine") + rootCmd.PersistentFlags().String("repo-dir", cwd, "repo to examine") remoteName = *rootCmd.PersistentFlags().String("remote-name", "origin", "remote to search and push to") viper.BindPFlags(rootCmd.PersistentFlags()) } |