MCPcopy Create free account
hub / github.com/cloudfoundry/cli / updateRoutes

Method updateRoutes

cf/commands/application/push.go:335–381  ·  view source on GitHub ↗
(app models.Application, appParams models.AppParams, appParamsFromContext models.AppParams)

Source from the content-addressed store, hash-verified

333}
334
335func (cmd *Push) updateRoutes(app models.Application, appParams models.AppParams, appParamsFromContext models.AppParams) error {
336 defaultRouteAcceptable := len(app.Routes) == 0
337 routeDefined := appParams.Domains != nil || !appParams.IsHostEmpty() || appParams.IsNoHostnameTrue()
338
339 switch {
340 case appParams.NoRoute:
341 if len(app.Routes) == 0 {
342 cmd.ui.Say(T("App {{.AppName}} is a worker, skipping route creation",
343 map[string]interface{}{"AppName": terminal.EntityNameColor(app.Name)}))
344 } else {
345 err := cmd.routeActor.UnbindAll(app)
346 if err != nil {
347 return err
348 }
349 }
350 case len(appParams.Routes) > 0:
351 for _, manifestRoute := range appParams.Routes {
352 err := cmd.actor.MapManifestRoute(manifestRoute.Route, app, appParamsFromContext)
353 if err != nil {
354 return err
355 }
356 }
357 case (routeDefined || defaultRouteAcceptable) && appParams.Domains == nil:
358 domain, err := cmd.findDomain(nil)
359 if err != nil {
360 return err
361 }
362 appParams.UseRandomPort = isTCP(domain)
363 err = cmd.processDomainsAndBindRoutes(appParams, app, domain)
364 if err != nil {
365 return err
366 }
367 case routeDefined || defaultRouteAcceptable:
368 for _, d := range appParams.Domains {
369 domain, err := cmd.findDomain(&d)
370 if err != nil {
371 return err
372 }
373 appParams.UseRandomPort = isTCP(domain)
374 err = cmd.processDomainsAndBindRoutes(appParams, app, domain)
375 if err != nil {
376 return err
377 }
378 }
379 }
380 return nil
381}
382
383const TCP = "tcp"
384

Callers 1

ExecuteMethod · 0.95

Calls 9

findDomainMethod · 0.95
EntityNameColorFunction · 0.92
isTCPFunction · 0.85
IsHostEmptyMethod · 0.80
IsNoHostnameTrueMethod · 0.80
SayMethod · 0.65
UnbindAllMethod · 0.65
MapManifestRouteMethod · 0.65

Tested by

no test coverage detected