mirror of
https://github.com/kairos-io/kairos-sdk.git
synced 2025-09-22 03:17:44 +00:00
@@ -125,6 +125,26 @@ func FindCommand(def string, options []string) string {
|
|||||||
return def
|
return def
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func K3sBin() string {
|
||||||
|
for _, p := range []string{"/usr/bin/k3s", "/usr/local/bin/k3s"} {
|
||||||
|
if _, err := os.Stat(p); err == nil {
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func K0sBin() string {
|
||||||
|
for _, p := range []string{"/usr/bin/k0s", "/usr/local/bin/k0s"} {
|
||||||
|
if _, err := os.Stat(p); err == nil {
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
func WriteEnv(envFile string, config map[string]string) error {
|
func WriteEnv(envFile string, config map[string]string) error {
|
||||||
content, err := os.ReadFile(envFile)
|
content, err := os.ReadFile(envFile)
|
||||||
if err != nil && !os.IsNotExist(err) {
|
if err != nil && !os.IsNotExist(err) {
|
||||||
@@ -251,6 +271,28 @@ func PowerOFF() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Version() string {
|
||||||
|
// Check for K3s version
|
||||||
|
k3sBin := K3sBin()
|
||||||
|
if k3sBin != "" {
|
||||||
|
v, err := OSRelease("VERSION")
|
||||||
|
if err == nil {
|
||||||
|
return strings.ReplaceAll(v, "+k3s1-Kairos", "-")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check for K0s version
|
||||||
|
k0sBin := K0sBin()
|
||||||
|
if k0sBin != "" {
|
||||||
|
v, err := SH(fmt.Sprintf("%s version", k0sBin))
|
||||||
|
if err == nil {
|
||||||
|
return strings.TrimSpace(v)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
func ListToOutput(rels []string, output string) []string {
|
func ListToOutput(rels []string, output string) []string {
|
||||||
switch strings.ToLower(output) {
|
switch strings.ToLower(output) {
|
||||||
case "yaml":
|
case "yaml":
|
||||||
|
Reference in New Issue
Block a user