cmd/release/utils/projects/versions.go (34 lines of code) (raw):
package projects
import (
"bytes"
"fmt"
"os"
"path/filepath"
)
const (
gitTagFilename = "GIT_TAG"
golangFilename = "GOLANG_VERSION"
)
type Version struct {
gitTag string
golang string
}
func (v *Version) GetGitTag() string {
return v.gitTag
}
func (v *Version) GetGolang() string {
return v.golang
}
func readGitTagVersionFile(parentPath string) ([]byte, error) {
return readVersionFile(filepath.Join(parentPath, gitTagFilename))
}
func readGolangVersionFile(parentPath string) ([]byte, error) {
return readVersionFile(filepath.Join(parentPath, golangFilename))
}
func readVersionFile(versionFilepath string) ([]byte, error) {
fileOutput, err := os.ReadFile(versionFilepath)
if err != nil {
return []byte{}, fmt.Errorf("reading version at %s path:%w", versionFilepath, err)
}
return bytes.TrimSpace(fileOutput), nil
}