fix(internal/calculator): fix relase version calculation

This commit is contained in:
Nightapes
2019-09-03 21:34:00 +02:00
parent e8d7feeca3
commit 0994354089
3 changed files with 8 additions and 2 deletions

View File

@@ -30,6 +30,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
go build -o build/go-semantic-release-temp ./cmd/go-semantic-release/ go build -o build/go-semantic-release-temp ./cmd/go-semantic-release/
./build/go-semantic-release-temp next --no-cache --loglevel trace
go build -o build/go-semantic-release -ldflags "-w -s --X main.version=`./build/go-semantic-release-temp next`" ./cmd/go-semantic-release/ go build -o build/go-semantic-release -ldflags "-w -s --X main.version=`./build/go-semantic-release-temp next`" ./cmd/go-semantic-release/
GOOS=windows GOARCH=386 go build -o build/go-semantic-release.exe -ldflags "-w -s -X main.version=`./build/go-semantic-release-temp next`" ./cmd/go-semantic-release/ GOOS=windows GOARCH=386 go build -o build/go-semantic-release.exe -ldflags "-w -s -X main.version=`./build/go-semantic-release-temp next`" ./cmd/go-semantic-release/

View File

@@ -49,6 +49,11 @@ func (c *Calculator) CalculateNewVersion(commits map[shared.Release][]shared.Ana
} }
case "release": case "release":
if !firstRelease { if !firstRelease {
if lastVersion.Prerelease() != "" {
newVersion, _ := lastVersion.SetPrerelease("")
return newVersion
}
if len(commits["major"]) > 0 { if len(commits["major"]) > 0 {
return lastVersion.IncMajor() return lastVersion.IncMajor()
} else if len(commits["minor"]) > 0 { } else if len(commits["minor"]) > 0 {

View File

@@ -6,11 +6,11 @@ import (
"sort" "sort"
"github.com/Masterminds/semver" "github.com/Masterminds/semver"
"github.com/Nightapes/go-semantic-release/internal/shared"
log "github.com/sirupsen/logrus" log "github.com/sirupsen/logrus"
"gopkg.in/src-d/go-git.v4" "gopkg.in/src-d/go-git.v4"
"gopkg.in/src-d/go-git.v4/plumbing" "gopkg.in/src-d/go-git.v4/plumbing"
"gopkg.in/src-d/go-git.v4/plumbing/object" "gopkg.in/src-d/go-git.v4/plumbing/object"
"github.com/Nightapes/go-semantic-release/internal/shared"
) )
// GitUtil struct // GitUtil struct
@@ -87,7 +87,7 @@ func (g *GitUtil) GetLastVersion() (*semver.Version, string, error) {
err = gitTags.ForEach(func(p *plumbing.Reference) error { err = gitTags.ForEach(func(p *plumbing.Reference) error {
v, err := semver.NewVersion(p.Name().Short()) v, err := semver.NewVersion(p.Name().Short())
log.Tracef("%+v with hash: %s", p.Target(), p.Hash()) log.Tracef("Tag %+v with hash: %s", p.Target(), p.Hash())
if err == nil { if err == nil {
tags = append(tags, v) tags = append(tags, v)