@@ -20,6 +20,7 @@ import (
20
20
"errors"
21
21
"fmt"
22
22
osexec "os/exec"
23
+ "path"
23
24
"strings"
24
25
"time"
25
26
@@ -41,6 +42,17 @@ func (d *deployer) Up() error {
41
42
return err
42
43
}
43
44
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
+
44
56
if d .terraform == nil {
45
57
klog .Info ("Cleaning up any leaked resources from previous cluster" )
46
58
// Intentionally ignore errors:
@@ -118,6 +130,7 @@ func (d *deployer) createCluster(zones []string, adminAccess string, yes bool) e
118
130
"--kubernetes-version" , d .KubernetesVersion ,
119
131
"--ssh-public-key" , d .SSHPublicKeyPath ,
120
132
"--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` ,
121
134
}
122
135
if yes {
123
136
args = append (args , "--yes" )
0 commit comments