MCPcopy Index your code
hub / github.com/cloudfoundry/cli / Execute

Method Execute

command/v7/add_network_policy_command.go:52–134  ·  view source on GitHub ↗
(args []string)

Source from the content-addressed store, hash-verified

50}
51
52func (cmd AddNetworkPolicyCommand) Execute(args []string) error {
53 switch {
54 case cmd.Protocol.Protocol != "" && cmd.Port.StartPort == 0 && cmd.Port.EndPort == 0:
55 return translatableerror.NetworkPolicyProtocolOrPortNotProvidedError{}
56 case cmd.Protocol.Protocol == "" && (cmd.Port.StartPort != 0 || cmd.Port.EndPort != 0):
57 return translatableerror.NetworkPolicyProtocolOrPortNotProvidedError{}
58 case cmd.DestinationOrg != "" && cmd.DestinationSpace == "":
59 return translatableerror.NetworkPolicyDestinationOrgWithoutSpaceError{}
60 case cmd.Protocol.Protocol == "" && cmd.Port.StartPort == 0 && cmd.Port.EndPort == 0:
61 cmd.Protocol.Protocol = "tcp"
62 cmd.Port.StartPort = 8080
63 cmd.Port.EndPort = 8080
64 }
65
66 err := cmd.SharedActor.CheckTarget(true, true)
67 if err != nil {
68 return err
69 }
70
71 destOrgGUID := cmd.Config.TargetedOrganization().GUID
72
73 displayDestinationOrg := cmd.Config.TargetedOrganization().Name
74 if cmd.DestinationOrg != "" {
75 var destOrg resources.Organization
76 var warnings v7action.Warnings
77 destOrg, warnings, err = cmd.Actor.GetOrganizationByName(cmd.DestinationOrg)
78 cmd.UI.DisplayWarnings(warnings)
79 if err != nil {
80 return err
81 }
82
83 destOrgGUID = destOrg.GUID
84 displayDestinationOrg = cmd.DestinationOrg
85 }
86
87 destSpaceGUID := cmd.Config.TargetedSpace().GUID
88
89 if cmd.DestinationSpace != "" {
90 var destSpace resources.Space
91 var warnings v7action.Warnings
92 destSpace, warnings, err = cmd.Actor.GetSpaceByNameAndOrganization(cmd.DestinationSpace, destOrgGUID)
93 cmd.UI.DisplayWarnings(warnings)
94 if err != nil {
95 return err
96 }
97
98 destSpaceGUID = destSpace.GUID
99 }
100
101 user, err := cmd.Actor.GetCurrentUser()
102 if err != nil {
103 return err
104 }
105
106 if cmd.DestinationSpace != "" {
107 cmd.UI.DisplayTextWithFlavor("Adding network policy from app {{.SrcAppName}} in org {{.Org}} / space {{.Space}} to app {{.DstAppName}} in org {{.DstOrg}} / space {{.DstSpace}} as {{.User}}...", map[string]interface{}{
108 "SrcAppName": cmd.RequiredArgs.SourceApp,
109 "Org": cmd.Config.TargetedOrganization().Name,

Callers

nothing calls this directly

Calls 10

CheckTargetMethod · 0.65
TargetedOrganizationMethod · 0.65
GetOrganizationByNameMethod · 0.65
DisplayWarningsMethod · 0.65
TargetedSpaceMethod · 0.65
GetCurrentUserMethod · 0.65
DisplayTextWithFlavorMethod · 0.65
AddNetworkPolicyMethod · 0.65
DisplayOKMethod · 0.65

Tested by

no test coverage detected