MCPcopy
hub / github.com/digitalocean/doctl / Complete

Method Complete

doit.go:119–141  ·  view source on GitHub ↗

Complete is the complete version for doit.

(lv LatestVersioner)

Source from the content-addressed store, hash-verified

117
118// Complete is the complete version for doit.
119func (v Version) Complete(lv LatestVersioner) string {
120 var buffer bytes.Buffer
121 buffer.WriteString(fmt.Sprintf("doctl version %s", v.String()))
122
123 if v.Build != "" {
124 buffer.WriteString(fmt.Sprintf("\nGit commit hash: %s", v.Build))
125 }
126
127 if tagName, err := lv.LatestVersion(); err == nil {
128 v0, err1 := semver.Make(tagName)
129 v1, err2 := semver.Make(v.String())
130
131 if len(v0.Build) == 0 {
132 v0, err1 = semver.Make(tagName + "-release")
133 }
134
135 if err1 == nil && err2 == nil && v0.GT(v1) {
136 buffer.WriteString(fmt.Sprintf("\nrelease %s is available, check it out! ", tagName))
137 }
138 }
139
140 return buffer.String()
141}
142
143// CompleteJSON is the complete version for doit, formatted as JSON.
144func (v Version) CompleteJSON(lv LatestVersioner) string {

Callers 2

TestVersionFunction · 0.80
VersionFunction · 0.80

Calls 3

StringMethod · 0.95
SprintfMethod · 0.80
LatestVersionMethod · 0.65

Tested by 1

TestVersionFunction · 0.64