Fully working oc-k8s

This commit is contained in:
mr
2026-02-05 08:43:21 +01:00
parent 5acf96919c
commit 7fb81e9829
16 changed files with 253 additions and 163 deletions

View File

@@ -30,14 +30,12 @@ func Delete_Cluster(folder string, release string) error {
if b, err := os.ReadFile(folder + "/" + release + "-values.yaml"); err == nil {
clusterName, _ = utils.Extract(string(b), "clusterName")
}
utils.Exec("kind delete cluster --name " + clusterName)
utils.Exec("yes | sudo cp -rf /etc/rancher/k3s/k3s.yaml ~/.kube/config")
return utils.Exec("chmod 600 ~/.kube/config")
utils.Exec("export KUBECONFIG=~/.kube/config")
return utils.Exec("kind delete cluster --name " + clusterName)
}
func Install_Cluster() error {
utils.Exec("yes | sudo cp -rf /etc/rancher/k3s/k3s.yaml ~/.kube/config")
utils.Exec("chmod 700 /home/mr/.kube")
utils.Exec("sudo cp -rf /etc/rancher/k3s/k3s.yaml ~/.kube/config")
return utils.Exec("chmod 600 ~/.kube/config")
}
@@ -51,8 +49,6 @@ func Create_Cluster(folder string, release string) error {
port, _ = utils.Extract(string(b), "hostPort")
}
utils.Exec("sudo fuser -k -TERM " + port + "/tcp")
utils.Exec("yes | sudo cp -rf /etc/rancher/k3s/k3s.yaml ~/.kube/config")
containerPort := "30950"
if scheme == "https" {
containerPort = "30951"
@@ -73,12 +69,7 @@ nodes:
- containerPort: ` + containerPort + `
hostPort: ` + port + `
protocol: TCP
`
utils.Exec(`docker exec -it oc-control-plane bash -c 'mkdir -p /etc/containerd && cat <<EOF >/etc/containerd/config.toml
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:5000"]
endpoint = ["http://dev-docker-registry-ui-registry-server.opencloud.svc.cluster.local:5000"]
EOF
containerd config restart'`)
`
cmd := exec.Command("kind", "create", "cluster", "--name", clusterName, "--wait", "0", "--config=-")
cmd.Stdin = bytes.NewBufferString(kindConfig)
cmd.Stdout = os.Stdout
@@ -88,17 +79,25 @@ containerd config restart'`)
fmt.Println(err)
return err
}
utils.Exec(`docker exec -it oc-control-plane bash -c 'mkdir -p /etc/containerd && cat <<EOF >/etc/containerd/config.toml
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:5000"]
endpoint = ["http://dev-docker-registry-ui-registry-server.opencloud.svc.cluster.local:5000"]
EOF
containerd config restart'`)
fmt.Println("[WARNING] New cluster should be merged into your current config !")
if err := utils.Exec("KUBECONFIG=~/.kube/config:/tmp/kind-" + clusterName + ".kubeconfig kubectl config view --flatten --merge --minify > /tmp/merged-kubeconfig.yaml"); err != nil {
return err
}
if err := utils.Exec("cp -f /tmp/merged-kubeconfig.yaml ~/.kube/config"); err != nil {
return err
}
if err := utils.Exec("export KUBECONFIG=~/.kube/config"); err != nil {
return err
}
if err := utils.Exec("kubectl config get-contexts"); err != nil {
return err
}