MCPcopy
hub / github.com/cloudfoundry/cli / Execute

Method Execute

command/v7/restage_command.go:51–120  ·  view source on GitHub ↗
(args []string)

Source from the content-addressed store, hash-verified

49}
50
51func (cmd RestageCommand) Execute(args []string) error {
52 err := cmd.SharedActor.CheckTarget(true, true)
53 if err != nil {
54 return err
55 }
56
57 user, err := cmd.Actor.GetCurrentUser()
58 if err != nil {
59 return err
60 }
61
62 err = cmd.ValidateFlags()
63 if err != nil {
64 return err
65 }
66
67 if len(cmd.Strategy.Name) <= 0 {
68 cmd.UI.DisplayWarning("This action will cause app downtime.")
69 }
70
71 cmd.UI.DisplayNewline()
72 cmd.UI.DisplayTextWithFlavor("Restaging app {{.AppName}} in org {{.OrgName}} / space {{.SpaceName}} as {{.Username}}...", map[string]interface{}{
73 "AppName": cmd.RequiredArgs.AppName,
74 "OrgName": cmd.Config.TargetedOrganization().Name,
75 "SpaceName": cmd.Config.TargetedSpace().Name,
76 "Username": user.Name,
77 })
78 cmd.UI.DisplayNewline()
79
80 app, warnings, err := cmd.Actor.GetApplicationByNameAndSpace(cmd.RequiredArgs.AppName, cmd.Config.TargetedSpace().GUID)
81 cmd.UI.DisplayWarnings(warnings)
82 if err != nil {
83 return err
84 }
85
86 pkg, warnings, err := cmd.Actor.GetNewestReadyPackageForApplication(app)
87 cmd.UI.DisplayWarnings(warnings)
88 if err != nil {
89 return mapErr(cmd.Config, cmd.RequiredArgs.AppName, err)
90 }
91
92 opts := shared.AppStartOpts{
93 AppAction: constant.ApplicationRestarting,
94 NoWait: cmd.NoWait,
95 Strategy: cmd.Strategy.Name,
96 }
97
98 if cmd.MaxInFlight != nil {
99 opts.MaxInFlight = *cmd.MaxInFlight
100 }
101
102 if cmd.InstanceSteps != "" {
103 if len(cmd.InstanceSteps) > 0 {
104 for _, v := range strings.Split(cmd.InstanceSteps, ",") {
105 parsedInt, err := strconv.ParseInt(v, 0, 64)
106 if err != nil {
107 return err
108 }

Callers

nothing calls this directly

Calls 13

ValidateFlagsMethod · 0.95
mapErrFunction · 0.85
CheckTargetMethod · 0.65
GetCurrentUserMethod · 0.65
DisplayWarningMethod · 0.65
DisplayNewlineMethod · 0.65
DisplayTextWithFlavorMethod · 0.65
TargetedOrganizationMethod · 0.65
TargetedSpaceMethod · 0.65
DisplayWarningsMethod · 0.65

Tested by

no test coverage detected