github.com/loafoe/cli@v7.1.0+incompatible/command/v7/set_org_default_isolation_segment_command.go (about) 1 package v7 2 3 import ( 4 "code.cloudfoundry.org/cli/command/flag" 5 ) 6 7 type SetOrgDefaultIsolationSegmentCommand struct { 8 BaseCommand 9 10 RequiredArgs flag.OrgIsolationArgs `positional-args:"yes"` 11 usage interface{} `usage:"CF_NAME set-org-default-isolation-segment ORG_NAME SEGMENT_NAME"` 12 relatedCommands interface{} `related_commands:"org, set-space-isolation-segment"` 13 } 14 15 func (cmd SetOrgDefaultIsolationSegmentCommand) Execute(args []string) error { 16 err := cmd.SharedActor.CheckTarget(false, false) 17 if err != nil { 18 return err 19 } 20 21 user, err := cmd.Config.CurrentUser() 22 if err != nil { 23 return err 24 } 25 26 cmd.UI.DisplayTextWithFlavor("Setting isolation segment {{.IsolationSegmentName}} to default on org {{.OrgName}} as {{.CurrentUser}}...", map[string]interface{}{ 27 "IsolationSegmentName": cmd.RequiredArgs.IsolationSegmentName, 28 "OrgName": cmd.RequiredArgs.OrganizationName, 29 "CurrentUser": user.Name, 30 }) 31 32 org, warnings, err := cmd.Actor.GetOrganizationByName(cmd.RequiredArgs.OrganizationName) 33 cmd.UI.DisplayWarnings(warnings) 34 if err != nil { 35 return err 36 } 37 38 isoSeg, warnings, err := cmd.Actor.GetIsolationSegmentByName(cmd.RequiredArgs.IsolationSegmentName) 39 cmd.UI.DisplayWarnings(warnings) 40 if err != nil { 41 return err 42 } 43 44 warnings, err = cmd.Actor.SetOrganizationDefaultIsolationSegment(org.GUID, isoSeg.GUID) 45 cmd.UI.DisplayWarnings(warnings) 46 if err != nil { 47 return err 48 } 49 50 cmd.UI.DisplayOK() 51 cmd.UI.DisplayText("TIP: Restart applications in this organization to relocate them to this isolation segment.") 52 53 return nil 54 }