github.com/docker/compose-on-kubernetes@v0.5.0/internal/version.go (about)

     1  package internal
     2  
     3  import (
     4  	"fmt"
     5  	"runtime"
     6  	"strings"
     7  	"time"
     8  )
     9  
    10  const (
    11  	unknownGitCommit = "unknown-commit"
    12  )
    13  
    14  // Default build-time variable.
    15  // These values are overridden via ldflags
    16  var (
    17  	Version   = "unknown-version"
    18  	GitCommit = unknownGitCommit
    19  	BuildTime = "unknown-buildtime"
    20  )
    21  
    22  // FullVersion returns the completion version informations of the project
    23  func FullVersion() string {
    24  	infos := []string{
    25  		fmt.Sprintf("Version:    %s", Version),
    26  		fmt.Sprintf("Git commit: %s", GitCommit),
    27  		fmt.Sprintf("OS/Arch:    %s/%s", runtime.GOOS, runtime.GOARCH),
    28  	}
    29  
    30  	if t, err := time.Parse(time.RFC3339Nano, BuildTime); err == nil {
    31  		infos = append(infos, fmt.Sprintf("Built:      %s", t.Format(time.ANSIC)))
    32  	}
    33  
    34  	return strings.Join(infos, "\n")
    35  }