2017-03-14 02:11:24 +00:00
|
|
|
package control
|
2016-06-06 22:13:15 +00:00
|
|
|
|
|
|
|
import (
|
2017-02-17 08:20:04 +00:00
|
|
|
"bufio"
|
2016-06-06 22:13:15 +00:00
|
|
|
"fmt"
|
2017-02-17 08:20:04 +00:00
|
|
|
"os"
|
2016-06-06 22:13:15 +00:00
|
|
|
"strings"
|
|
|
|
|
2018-03-06 10:07:21 +00:00
|
|
|
"github.com/rancher/os/config"
|
2018-09-16 04:55:26 +00:00
|
|
|
"github.com/rancher/os/pkg/log"
|
2016-06-06 22:13:15 +00:00
|
|
|
)
|
|
|
|
|
2017-03-14 02:11:24 +00:00
|
|
|
func yes(question string) bool {
|
2016-06-06 22:13:15 +00:00
|
|
|
fmt.Printf("%s [y/N]: ", question)
|
2017-02-17 08:20:04 +00:00
|
|
|
in := bufio.NewReader(os.Stdin)
|
|
|
|
line, err := in.ReadString('\n')
|
2016-06-06 22:13:15 +00:00
|
|
|
if err != nil {
|
|
|
|
log.Fatal(err)
|
|
|
|
}
|
|
|
|
|
|
|
|
return strings.ToLower(line[0:1]) == "y"
|
|
|
|
}
|
2018-03-06 10:07:21 +00:00
|
|
|
|
|
|
|
func formatImage(image string, cfg *config.CloudConfig) string {
|
|
|
|
domainRegistry := cfg.Rancher.Environment["REGISTRY_DOMAIN"]
|
|
|
|
if domainRegistry != "docker.io" && domainRegistry != "" {
|
|
|
|
return fmt.Sprintf("%s/%s", domainRegistry, image)
|
|
|
|
}
|
|
|
|
return image
|
|
|
|
}
|
2019-01-04 07:22:32 +00:00
|
|
|
|
|
|
|
func symLinkEngineBinary(version string) []symlink {
|
|
|
|
baseSymlink := []symlink{
|
|
|
|
{"/var/lib/rancher/engine/docker", "/usr/bin/docker"},
|
|
|
|
{"/var/lib/rancher/engine/dockerd", "/usr/bin/dockerd"},
|
|
|
|
{"/var/lib/rancher/engine/docker-init", "/usr/bin/docker-init"},
|
|
|
|
{"/var/lib/rancher/engine/docker-proxy", "/usr/bin/docker-proxy"},
|
|
|
|
{"/usr/share/ros/os-release", "/usr/lib/os-release"},
|
|
|
|
{"/usr/share/ros/os-release", "/etc/os-release"},
|
|
|
|
}
|
|
|
|
if strings.Contains(version, "18.09") {
|
|
|
|
baseSymlink = append(baseSymlink, []symlink{
|
|
|
|
{"/var/lib/rancher/engine/containerd", "/usr/bin/containerd"},
|
|
|
|
{"/var/lib/rancher/engine/ctr", "/usr/bin/ctr"},
|
|
|
|
{"/var/lib/rancher/engine/containerd-shim", "/usr/bin/containerd-shim"},
|
|
|
|
{"/var/lib/rancher/engine/runc", "/usr/bin/runc"},
|
|
|
|
}...)
|
|
|
|
} else {
|
|
|
|
baseSymlink = append(baseSymlink, []symlink{
|
|
|
|
{"/var/lib/rancher/engine/docker-containerd", "/usr/bin/docker-containerd"},
|
|
|
|
{"/var/lib/rancher/engine/docker-containerd-ctr", "/usr/bin/docker-containerd-ctr"},
|
|
|
|
{"/var/lib/rancher/engine/docker-containerd-shim", "/usr/bin/docker-containerd-shim"},
|
|
|
|
{"/var/lib/rancher/engine/docker-runc", "/usr/bin/docker-runc"},
|
|
|
|
}...)
|
|
|
|
}
|
|
|
|
return baseSymlink
|
|
|
|
}
|
2019-01-09 05:15:15 +00:00
|
|
|
|
|
|
|
func checkGlobalCfg() bool {
|
|
|
|
_, err := os.Stat("/proc/1/root/boot/global.cfg")
|
|
|
|
if err == nil || os.IsExist(err) {
|
|
|
|
return true
|
|
|
|
}
|
|
|
|
return false
|
|
|
|
}
|