github.com/grahambrereton-form3/tilt@v0.10.18/internal/cli/wire_gen.go (about) 1 // Code generated by Wire. DO NOT EDIT. 2 3 //go:generate wire 4 //+build !wireinject 5 6 package cli 7 8 import ( 9 "context" 10 "time" 11 12 "github.com/google/wire" 13 "github.com/jonboulle/clockwork" 14 "github.com/windmilleng/wmclient/pkg/dirs" 15 "k8s.io/apimachinery/pkg/version" 16 "k8s.io/client-go/tools/clientcmd/api" 17 18 "github.com/windmilleng/tilt/internal/analytics" 19 "github.com/windmilleng/tilt/internal/build" 20 "github.com/windmilleng/tilt/internal/cloud" 21 "github.com/windmilleng/tilt/internal/cloud/cloudurl" 22 "github.com/windmilleng/tilt/internal/container" 23 "github.com/windmilleng/tilt/internal/containerupdate" 24 "github.com/windmilleng/tilt/internal/docker" 25 "github.com/windmilleng/tilt/internal/dockercompose" 26 "github.com/windmilleng/tilt/internal/dockerfile" 27 "github.com/windmilleng/tilt/internal/engine" 28 analytics2 "github.com/windmilleng/tilt/internal/engine/analytics" 29 "github.com/windmilleng/tilt/internal/engine/configs" 30 "github.com/windmilleng/tilt/internal/engine/dockerprune" 31 "github.com/windmilleng/tilt/internal/engine/k8swatch" 32 "github.com/windmilleng/tilt/internal/engine/runtimelog" 33 "github.com/windmilleng/tilt/internal/feature" 34 "github.com/windmilleng/tilt/internal/hud" 35 "github.com/windmilleng/tilt/internal/hud/server" 36 "github.com/windmilleng/tilt/internal/k8s" 37 "github.com/windmilleng/tilt/internal/minikube" 38 "github.com/windmilleng/tilt/internal/store" 39 "github.com/windmilleng/tilt/internal/synclet/sidecar" 40 "github.com/windmilleng/tilt/internal/tiltfile" 41 "github.com/windmilleng/tilt/internal/tiltfile/k8scontext" 42 "github.com/windmilleng/tilt/internal/token" 43 "github.com/windmilleng/tilt/pkg/model" 44 ) 45 46 // Injectors from wire.go: 47 48 func wireDockerPrune(ctx context.Context, analytics2 *analytics.TiltAnalytics) (dpDeps, error) { 49 clientConfig := k8s.ProvideClientConfig() 50 config, err := k8s.ProvideKubeConfig(clientConfig) 51 if err != nil { 52 return dpDeps{}, err 53 } 54 env := k8s.ProvideEnv(ctx, config) 55 restConfigOrError := k8s.ProvideRESTConfig(clientConfig) 56 clientsetOrError := k8s.ProvideClientset(restConfigOrError) 57 portForwardClient := k8s.ProvidePortForwardClient(restConfigOrError, clientsetOrError) 58 namespace := k8s.ProvideConfigNamespace(clientConfig) 59 kubeContext, err := k8s.ProvideKubeContext(config) 60 if err != nil { 61 return dpDeps{}, err 62 } 63 int2 := provideKubectlLogLevel() 64 kubectlRunner := k8s.ProvideKubectlRunner(kubeContext, int2) 65 client := k8s.ProvideK8sClient(ctx, env, restConfigOrError, clientsetOrError, portForwardClient, namespace, kubectlRunner, clientConfig) 66 runtime := k8s.ProvideContainerRuntime(ctx, client) 67 minikubeClient := minikube.ProvideMinikubeClient() 68 clusterEnv, err := docker.ProvideClusterEnv(ctx, env, runtime, minikubeClient) 69 if err != nil { 70 return dpDeps{}, err 71 } 72 localEnv, err := docker.ProvideLocalEnv(ctx, clusterEnv) 73 if err != nil { 74 return dpDeps{}, err 75 } 76 localClient := docker.ProvideLocalCli(ctx, localEnv) 77 clusterClient, err := docker.ProvideClusterCli(ctx, localEnv, clusterEnv, localClient) 78 if err != nil { 79 return dpDeps{}, err 80 } 81 switchCli := docker.ProvideSwitchCli(clusterClient, localClient) 82 extension := k8scontext.NewExtension(kubeContext, env) 83 dockerComposeClient := dockercompose.NewDockerComposeClient(localEnv) 84 defaults := _wireDefaultsValue 85 tiltfileLoader := tiltfile.ProvideTiltfileLoader(analytics2, client, extension, dockerComposeClient, defaults) 86 cliDpDeps := newDPDeps(switchCli, tiltfileLoader) 87 return cliDpDeps, nil 88 } 89 90 var ( 91 _wireDefaultsValue = feature.MainDefaults 92 ) 93 94 func wireCmdUp(ctx context.Context, analytics3 *analytics.TiltAnalytics, cmdUpTags analytics2.CmdUpTags) (CmdUpDeps, error) { 95 v := provideClock() 96 renderer := hud.NewRenderer(v) 97 modelWebHost := provideWebHost() 98 modelWebPort := provideWebPort() 99 webURL, err := provideWebURL(modelWebHost, modelWebPort) 100 if err != nil { 101 return CmdUpDeps{}, err 102 } 103 headsUpDisplay, err := hud.NewDefaultHeadsUpDisplay(renderer, webURL, analytics3) 104 if err != nil { 105 return CmdUpDeps{}, err 106 } 107 reducer := _wireReducerValue 108 storeLogActionsFlag := provideLogActions() 109 storeStore := store.NewStore(reducer, storeLogActionsFlag) 110 clientConfig := k8s.ProvideClientConfig() 111 config, err := k8s.ProvideKubeConfig(clientConfig) 112 if err != nil { 113 return CmdUpDeps{}, err 114 } 115 env := k8s.ProvideEnv(ctx, config) 116 restConfigOrError := k8s.ProvideRESTConfig(clientConfig) 117 clientsetOrError := k8s.ProvideClientset(restConfigOrError) 118 portForwardClient := k8s.ProvidePortForwardClient(restConfigOrError, clientsetOrError) 119 namespace := k8s.ProvideConfigNamespace(clientConfig) 120 kubeContext, err := k8s.ProvideKubeContext(config) 121 if err != nil { 122 return CmdUpDeps{}, err 123 } 124 int2 := provideKubectlLogLevel() 125 kubectlRunner := k8s.ProvideKubectlRunner(kubeContext, int2) 126 client := k8s.ProvideK8sClient(ctx, env, restConfigOrError, clientsetOrError, portForwardClient, namespace, kubectlRunner, clientConfig) 127 ownerFetcher := k8s.ProvideOwnerFetcher(client) 128 podWatcher := k8swatch.NewPodWatcher(client, ownerFetcher) 129 nodeIP, err := k8s.DetectNodeIP(ctx, env) 130 if err != nil { 131 return CmdUpDeps{}, err 132 } 133 serviceWatcher := k8swatch.NewServiceWatcher(client, ownerFetcher, nodeIP) 134 podLogManager := runtimelog.NewPodLogManager(client) 135 portForwardController := engine.NewPortForwardController(client) 136 fsWatcherMaker := engine.ProvideFsWatcherMaker() 137 timerMaker := engine.ProvideTimerMaker() 138 watchManager := engine.NewWatchManager(fsWatcherMaker, timerMaker) 139 runtime := k8s.ProvideContainerRuntime(ctx, client) 140 minikubeClient := minikube.ProvideMinikubeClient() 141 clusterEnv, err := docker.ProvideClusterEnv(ctx, env, runtime, minikubeClient) 142 if err != nil { 143 return CmdUpDeps{}, err 144 } 145 localEnv, err := docker.ProvideLocalEnv(ctx, clusterEnv) 146 if err != nil { 147 return CmdUpDeps{}, err 148 } 149 localClient := docker.ProvideLocalCli(ctx, localEnv) 150 clusterClient, err := docker.ProvideClusterCli(ctx, localEnv, clusterEnv, localClient) 151 if err != nil { 152 return CmdUpDeps{}, err 153 } 154 switchCli := docker.ProvideSwitchCli(clusterClient, localClient) 155 dockerContainerUpdater := containerupdate.NewDockerContainerUpdater(switchCli) 156 syncletImageRef, err := sidecar.ProvideSyncletImageRef(ctx) 157 if err != nil { 158 return CmdUpDeps{}, err 159 } 160 syncletManager := containerupdate.NewSyncletManager(client, syncletImageRef) 161 syncletUpdater := containerupdate.NewSyncletUpdater(syncletManager) 162 execUpdater := containerupdate.NewExecUpdater(client) 163 engineUpdateModeFlag := provideUpdateModeFlag() 164 updateMode, err := engine.ProvideUpdateMode(engineUpdateModeFlag, env, runtime) 165 if err != nil { 166 return CmdUpDeps{}, err 167 } 168 liveUpdateBuildAndDeployer := engine.NewLiveUpdateBuildAndDeployer(dockerContainerUpdater, syncletUpdater, execUpdater, updateMode, env, runtime) 169 labels := _wireLabelsValue 170 dockerImageBuilder := build.NewDockerImageBuilder(switchCli, labels) 171 imageBuilder := build.DefaultImageBuilder(dockerImageBuilder) 172 cacheBuilder := build.NewCacheBuilder(switchCli) 173 clock := build.ProvideClock() 174 execCustomBuilder := build.NewExecCustomBuilder(switchCli, clock) 175 clusterName := k8s.ProvideClusterName(ctx, config) 176 kindPusher := engine.NewKINDPusher(clusterName) 177 syncletContainer := sidecar.ProvideSyncletContainer(syncletImageRef) 178 imageBuildAndDeployer := engine.NewImageBuildAndDeployer(imageBuilder, cacheBuilder, execCustomBuilder, client, env, analytics3, updateMode, clock, runtime, kindPusher, syncletContainer) 179 dockerComposeClient := dockercompose.NewDockerComposeClient(localEnv) 180 imageAndCacheBuilder := engine.NewImageAndCacheBuilder(imageBuilder, cacheBuilder, execCustomBuilder, updateMode) 181 dockerComposeBuildAndDeployer := engine.NewDockerComposeBuildAndDeployer(dockerComposeClient, switchCli, imageAndCacheBuilder, clock) 182 localTargetBuildAndDeployer := engine.NewLocalTargetBuildAndDeployer(clock) 183 buildOrder := engine.DefaultBuildOrder(liveUpdateBuildAndDeployer, imageBuildAndDeployer, dockerComposeBuildAndDeployer, localTargetBuildAndDeployer, updateMode, env, runtime) 184 compositeBuildAndDeployer := engine.NewCompositeBuildAndDeployer(buildOrder) 185 buildController := engine.NewBuildController(compositeBuildAndDeployer) 186 extension := k8scontext.NewExtension(kubeContext, env) 187 defaults := _wireDefaultsValue 188 tiltfileLoader := tiltfile.ProvideTiltfileLoader(analytics3, client, extension, dockerComposeClient, defaults) 189 configsController := configs.NewConfigsController(tiltfileLoader, switchCli) 190 dockerComposeEventWatcher := engine.NewDockerComposeEventWatcher(dockerComposeClient) 191 dockerComposeLogManager := runtimelog.NewDockerComposeLogManager(dockerComposeClient) 192 profilerManager := engine.NewProfilerManager() 193 analyticsReporter := analytics2.ProvideAnalyticsReporter(analytics3, storeStore) 194 tiltBuild := provideTiltInfo() 195 webMode, err := provideWebMode(tiltBuild) 196 if err != nil { 197 return CmdUpDeps{}, err 198 } 199 webVersion := provideWebVersion(tiltBuild) 200 assetsServer, err := provideAssetServer(webMode, webVersion) 201 if err != nil { 202 return CmdUpDeps{}, err 203 } 204 httpClient := cloud.ProvideHttpClient() 205 address := cloudurl.ProvideAddress() 206 snapshotUploader := cloud.NewSnapshotUploader(httpClient, address) 207 headsUpServer, err := server.ProvideHeadsUpServer(ctx, storeStore, assetsServer, analytics3, snapshotUploader) 208 if err != nil { 209 return CmdUpDeps{}, err 210 } 211 modelNoBrowser := provideNoBrowserFlag() 212 headsUpServerController := server.ProvideHeadsUpServerController(modelWebHost, modelWebPort, headsUpServer, assetsServer, webURL, modelNoBrowser) 213 githubClientFactory := engine.NewGithubClientFactory() 214 tiltVersionChecker := engine.NewTiltVersionChecker(githubClientFactory, timerMaker) 215 analyticsUpdater := analytics2.NewAnalyticsUpdater(analytics3, cmdUpTags) 216 eventWatchManager := k8swatch.NewEventWatchManager(client, ownerFetcher) 217 cloudUsernameManager := cloud.NewUsernameManager(httpClient) 218 updateUploader := cloud.NewUpdateUploader(httpClient, address) 219 dockerPruner := dockerprune.NewDockerPruner(switchCli) 220 v2 := engine.ProvideSubscribers(headsUpDisplay, podWatcher, serviceWatcher, podLogManager, portForwardController, watchManager, buildController, configsController, dockerComposeEventWatcher, dockerComposeLogManager, profilerManager, syncletManager, analyticsReporter, headsUpServerController, tiltVersionChecker, analyticsUpdater, eventWatchManager, cloudUsernameManager, updateUploader, dockerPruner) 221 upper := engine.NewUpper(ctx, storeStore, v2) 222 windmillDir, err := dirs.UseWindmillDir() 223 if err != nil { 224 return CmdUpDeps{}, err 225 } 226 tokenToken, err := token.GetOrCreateToken(windmillDir) 227 if err != nil { 228 return CmdUpDeps{}, err 229 } 230 cmdUpDeps := provideCmdUpDeps(headsUpDisplay, upper, tiltBuild, tokenToken, address) 231 return cmdUpDeps, nil 232 } 233 234 var ( 235 _wireReducerValue = engine.UpperReducer 236 _wireLabelsValue = dockerfile.Labels{} 237 ) 238 239 func wireKubeContext(ctx context.Context) (k8s.KubeContext, error) { 240 clientConfig := k8s.ProvideClientConfig() 241 config, err := k8s.ProvideKubeConfig(clientConfig) 242 if err != nil { 243 return "", err 244 } 245 kubeContext, err := k8s.ProvideKubeContext(config) 246 if err != nil { 247 return "", err 248 } 249 return kubeContext, nil 250 } 251 252 func wireKubeConfig(ctx context.Context) (*api.Config, error) { 253 clientConfig := k8s.ProvideClientConfig() 254 config, err := k8s.ProvideKubeConfig(clientConfig) 255 if err != nil { 256 return nil, err 257 } 258 return config, nil 259 } 260 261 func wireEnv(ctx context.Context) (k8s.Env, error) { 262 clientConfig := k8s.ProvideClientConfig() 263 config, err := k8s.ProvideKubeConfig(clientConfig) 264 if err != nil { 265 return "", err 266 } 267 env := k8s.ProvideEnv(ctx, config) 268 return env, nil 269 } 270 271 func wireNamespace(ctx context.Context) (k8s.Namespace, error) { 272 clientConfig := k8s.ProvideClientConfig() 273 namespace := k8s.ProvideConfigNamespace(clientConfig) 274 return namespace, nil 275 } 276 277 func wireClusterName(ctx context.Context) (k8s.ClusterName, error) { 278 clientConfig := k8s.ProvideClientConfig() 279 config, err := k8s.ProvideKubeConfig(clientConfig) 280 if err != nil { 281 return "", err 282 } 283 clusterName := k8s.ProvideClusterName(ctx, config) 284 return clusterName, nil 285 } 286 287 func wireRuntime(ctx context.Context) (container.Runtime, error) { 288 clientConfig := k8s.ProvideClientConfig() 289 config, err := k8s.ProvideKubeConfig(clientConfig) 290 if err != nil { 291 return "", err 292 } 293 env := k8s.ProvideEnv(ctx, config) 294 restConfigOrError := k8s.ProvideRESTConfig(clientConfig) 295 clientsetOrError := k8s.ProvideClientset(restConfigOrError) 296 portForwardClient := k8s.ProvidePortForwardClient(restConfigOrError, clientsetOrError) 297 namespace := k8s.ProvideConfigNamespace(clientConfig) 298 kubeContext, err := k8s.ProvideKubeContext(config) 299 if err != nil { 300 return "", err 301 } 302 int2 := provideKubectlLogLevel() 303 kubectlRunner := k8s.ProvideKubectlRunner(kubeContext, int2) 304 client := k8s.ProvideK8sClient(ctx, env, restConfigOrError, clientsetOrError, portForwardClient, namespace, kubectlRunner, clientConfig) 305 runtime := k8s.ProvideContainerRuntime(ctx, client) 306 return runtime, nil 307 } 308 309 func wireK8sVersion(ctx context.Context) (*version.Info, error) { 310 clientConfig := k8s.ProvideClientConfig() 311 restConfigOrError := k8s.ProvideRESTConfig(clientConfig) 312 clientsetOrError := k8s.ProvideClientset(restConfigOrError) 313 info, err := k8s.ProvideServerVersion(clientsetOrError) 314 if err != nil { 315 return nil, err 316 } 317 return info, nil 318 } 319 320 func wireDockerClusterClient(ctx context.Context) (docker.ClusterClient, error) { 321 clientConfig := k8s.ProvideClientConfig() 322 config, err := k8s.ProvideKubeConfig(clientConfig) 323 if err != nil { 324 return nil, err 325 } 326 env := k8s.ProvideEnv(ctx, config) 327 restConfigOrError := k8s.ProvideRESTConfig(clientConfig) 328 clientsetOrError := k8s.ProvideClientset(restConfigOrError) 329 portForwardClient := k8s.ProvidePortForwardClient(restConfigOrError, clientsetOrError) 330 namespace := k8s.ProvideConfigNamespace(clientConfig) 331 kubeContext, err := k8s.ProvideKubeContext(config) 332 if err != nil { 333 return nil, err 334 } 335 int2 := provideKubectlLogLevel() 336 kubectlRunner := k8s.ProvideKubectlRunner(kubeContext, int2) 337 client := k8s.ProvideK8sClient(ctx, env, restConfigOrError, clientsetOrError, portForwardClient, namespace, kubectlRunner, clientConfig) 338 runtime := k8s.ProvideContainerRuntime(ctx, client) 339 minikubeClient := minikube.ProvideMinikubeClient() 340 clusterEnv, err := docker.ProvideClusterEnv(ctx, env, runtime, minikubeClient) 341 if err != nil { 342 return nil, err 343 } 344 localEnv, err := docker.ProvideLocalEnv(ctx, clusterEnv) 345 if err != nil { 346 return nil, err 347 } 348 localClient := docker.ProvideLocalCli(ctx, localEnv) 349 clusterClient, err := docker.ProvideClusterCli(ctx, localEnv, clusterEnv, localClient) 350 if err != nil { 351 return nil, err 352 } 353 return clusterClient, nil 354 } 355 356 func wireDockerLocalClient(ctx context.Context) (docker.LocalClient, error) { 357 clientConfig := k8s.ProvideClientConfig() 358 config, err := k8s.ProvideKubeConfig(clientConfig) 359 if err != nil { 360 return nil, err 361 } 362 env := k8s.ProvideEnv(ctx, config) 363 restConfigOrError := k8s.ProvideRESTConfig(clientConfig) 364 clientsetOrError := k8s.ProvideClientset(restConfigOrError) 365 portForwardClient := k8s.ProvidePortForwardClient(restConfigOrError, clientsetOrError) 366 namespace := k8s.ProvideConfigNamespace(clientConfig) 367 kubeContext, err := k8s.ProvideKubeContext(config) 368 if err != nil { 369 return nil, err 370 } 371 int2 := provideKubectlLogLevel() 372 kubectlRunner := k8s.ProvideKubectlRunner(kubeContext, int2) 373 client := k8s.ProvideK8sClient(ctx, env, restConfigOrError, clientsetOrError, portForwardClient, namespace, kubectlRunner, clientConfig) 374 runtime := k8s.ProvideContainerRuntime(ctx, client) 375 minikubeClient := minikube.ProvideMinikubeClient() 376 clusterEnv, err := docker.ProvideClusterEnv(ctx, env, runtime, minikubeClient) 377 if err != nil { 378 return nil, err 379 } 380 localEnv, err := docker.ProvideLocalEnv(ctx, clusterEnv) 381 if err != nil { 382 return nil, err 383 } 384 localClient := docker.ProvideLocalCli(ctx, localEnv) 385 return localClient, nil 386 } 387 388 func wireDownDeps(ctx context.Context, tiltAnalytics *analytics.TiltAnalytics) (DownDeps, error) { 389 clientConfig := k8s.ProvideClientConfig() 390 config, err := k8s.ProvideKubeConfig(clientConfig) 391 if err != nil { 392 return DownDeps{}, err 393 } 394 env := k8s.ProvideEnv(ctx, config) 395 restConfigOrError := k8s.ProvideRESTConfig(clientConfig) 396 clientsetOrError := k8s.ProvideClientset(restConfigOrError) 397 portForwardClient := k8s.ProvidePortForwardClient(restConfigOrError, clientsetOrError) 398 namespace := k8s.ProvideConfigNamespace(clientConfig) 399 kubeContext, err := k8s.ProvideKubeContext(config) 400 if err != nil { 401 return DownDeps{}, err 402 } 403 int2 := provideKubectlLogLevel() 404 kubectlRunner := k8s.ProvideKubectlRunner(kubeContext, int2) 405 client := k8s.ProvideK8sClient(ctx, env, restConfigOrError, clientsetOrError, portForwardClient, namespace, kubectlRunner, clientConfig) 406 extension := k8scontext.NewExtension(kubeContext, env) 407 runtime := k8s.ProvideContainerRuntime(ctx, client) 408 minikubeClient := minikube.ProvideMinikubeClient() 409 clusterEnv, err := docker.ProvideClusterEnv(ctx, env, runtime, minikubeClient) 410 if err != nil { 411 return DownDeps{}, err 412 } 413 localEnv, err := docker.ProvideLocalEnv(ctx, clusterEnv) 414 if err != nil { 415 return DownDeps{}, err 416 } 417 dockerComposeClient := dockercompose.NewDockerComposeClient(localEnv) 418 defaults := _wireDefaultsValue 419 tiltfileLoader := tiltfile.ProvideTiltfileLoader(tiltAnalytics, client, extension, dockerComposeClient, defaults) 420 downDeps := ProvideDownDeps(tiltfileLoader, dockerComposeClient, client) 421 return downDeps, nil 422 } 423 424 // wire.go: 425 426 var K8sWireSet = wire.NewSet(k8s.ProvideEnv, k8s.DetectNodeIP, k8s.ProvideClusterName, k8s.ProvideKubeContext, k8s.ProvideKubeConfig, k8s.ProvideClientConfig, k8s.ProvideClientset, k8s.ProvideRESTConfig, k8s.ProvidePortForwardClient, k8s.ProvideConfigNamespace, k8s.ProvideKubectlRunner, k8s.ProvideContainerRuntime, k8s.ProvideServerVersion, k8s.ProvideK8sClient, k8s.ProvideOwnerFetcher) 427 428 var BaseWireSet = wire.NewSet( 429 K8sWireSet, tiltfile.WireSet, provideKubectlLogLevel, docker.SwitchWireSet, dockercompose.NewDockerComposeClient, clockwork.NewRealClock, engine.DeployerWireSet, runtimelog.NewPodLogManager, engine.NewPortForwardController, engine.NewBuildController, k8swatch.NewPodWatcher, k8swatch.NewServiceWatcher, k8swatch.NewEventWatchManager, configs.NewConfigsController, engine.NewDockerComposeEventWatcher, runtimelog.NewDockerComposeLogManager, engine.NewProfilerManager, engine.NewGithubClientFactory, engine.NewTiltVersionChecker, cloud.WireSet, cloudurl.ProvideAddress, provideClock, hud.NewRenderer, hud.NewDefaultHeadsUpDisplay, provideLogActions, store.NewStore, wire.Bind(new(store.RStore), new(*store.Store)), dockerprune.NewDockerPruner, provideTiltInfo, engine.ProvideSubscribers, engine.NewUpper, analytics2.NewAnalyticsUpdater, analytics2.ProvideAnalyticsReporter, provideUpdateModeFlag, engine.NewWatchManager, engine.ProvideFsWatcherMaker, engine.ProvideTimerMaker, provideWebVersion, 430 provideWebMode, 431 provideWebURL, 432 provideWebPort, 433 provideWebHost, 434 provideNoBrowserFlag, server.ProvideHeadsUpServer, provideAssetServer, server.ProvideHeadsUpServerController, dirs.UseWindmillDir, token.GetOrCreateToken, provideCmdUpDeps, engine.NewKINDPusher, wire.Value(feature.MainDefaults), 435 ) 436 437 type CmdUpDeps struct { 438 hud hud.HeadsUpDisplay 439 upper engine.Upper 440 tiltBuild model.TiltBuild 441 token token.Token 442 cloudAddress cloudurl.Address 443 } 444 445 func provideCmdUpDeps(h hud.HeadsUpDisplay, upper engine.Upper, b model.TiltBuild, token2 token.Token, cloudAddress cloudurl.Address) CmdUpDeps { 446 return CmdUpDeps{h, upper, b, token2, cloudAddress} 447 } 448 449 type DownDeps struct { 450 tfl tiltfile.TiltfileLoader 451 dcClient dockercompose.DockerComposeClient 452 kClient k8s.Client 453 } 454 455 func ProvideDownDeps( 456 tfl tiltfile.TiltfileLoader, 457 dcClient dockercompose.DockerComposeClient, 458 kClient k8s.Client) DownDeps { 459 return DownDeps{ 460 tfl: tfl, 461 dcClient: dcClient, 462 kClient: kClient, 463 } 464 } 465 466 func provideClock() func() time.Time { 467 return time.Now 468 }