github.com/loafoe/cli@v7.1.0+incompatible/command/v7/create_shared_domain_command.go (about) 1 package v7 2 3 import ( 4 "code.cloudfoundry.org/cli/command/flag" 5 ) 6 7 type CreateSharedDomainCommand struct { 8 BaseCommand 9 10 RequiredArgs flag.Domain `positional-args:"yes"` 11 RouterGroup string `long:"router-group" description:"Routes for this domain will use routers in the specified router group"` 12 Internal bool `long:"internal" description:"Applications that use internal routes communicate directly on the container network"` 13 usage interface{} `usage:"CF_NAME create-shared-domain DOMAIN [--router-group ROUTER_GROUP_NAME | --internal]"` 14 relatedCommands interface{} `related_commands:"create-private-domain, domains"` 15 } 16 17 func (cmd CreateSharedDomainCommand) Execute(args []string) error { 18 err := cmd.SharedActor.CheckTarget(false, false) 19 if err != nil { 20 return err 21 } 22 23 user, err := cmd.Config.CurrentUser() 24 if err != nil { 25 return err 26 } 27 28 domain := cmd.RequiredArgs.Domain 29 30 cmd.UI.DisplayTextWithFlavor("Creating shared domain {{.Domain}} as {{.User}}...", 31 map[string]interface{}{ 32 "Domain": domain, 33 "User": user.Name, 34 }) 35 36 warnings, err := cmd.Actor.CreateSharedDomain(domain, cmd.Internal, cmd.RouterGroup) 37 cmd.UI.DisplayWarnings(warnings) 38 if err != nil { 39 return err 40 } 41 42 cmd.UI.DisplayOK() 43 cmd.UI.DisplayText("TIP: Domain '{{.Domain}}' is shared with all orgs. Run 'cf domains' to view available domains.", 44 map[string]interface{}{ 45 "Domain": domain, 46 }) 47 return nil 48 }