@@ -20,6 +20,7 @@ import (
2020 "errors"
2121 "fmt"
2222 osexec "os/exec"
23+ "path"
2324 "strings"
2425 "time"
2526
@@ -41,6 +42,17 @@ func (d *deployer) Up() error {
4142 return err
4243 }
4344
45+ // kops is fetched when --up is called instead of init to support a scenario where k/k is being built
46+ // and a kops build is not ready yet
47+ if d .KopsVersionMarker != "" {
48+ d .KopsBinaryPath = path .Join (d .commonOptions .RunDir (), "kops" )
49+ baseURL , err := kops .DownloadKops (d .KopsVersionMarker , d .KopsBinaryPath )
50+ if err != nil {
51+ return fmt .Errorf ("init failed to download kops from url: %v" , err )
52+ }
53+ d .KopsBaseURL = baseURL
54+ }
55+
4456 if d .terraform == nil {
4557 klog .Info ("Cleaning up any leaked resources from previous cluster" )
4658 // Intentionally ignore errors:
@@ -118,6 +130,7 @@ func (d *deployer) createCluster(zones []string, adminAccess string, yes bool) e
118130 "--kubernetes-version" , d .KubernetesVersion ,
119131 "--ssh-public-key" , d .SSHPublicKeyPath ,
120132 "--set" , "cluster.spec.nodePortAccess=0.0.0.0/0" ,
133+ "--set" , `spec.containerd.configAdditions=plugins."io.containerd.grpc.v1.cri".containerd.runtimes.test-handler.runtime_type=io.containerd.runc.v2` ,
121134 }
122135 if yes {
123136 args = append (args , "--yes" )
0 commit comments