github.com/sleungcy/cli@v7.1.0+incompatible/command/v7/set_org_quota_command.go (about)

     1  package v7
     2  
     3  import (
     4  	"code.cloudfoundry.org/cli/command/flag"
     5  )
     6  
     7  type SetOrgQuotaCommand struct {
     8  	BaseCommand
     9  
    10  	RequiredArgs    flag.SetOrgQuotaArgs `positional-args:"yes"`
    11  	usage           interface{}          `usage:"CF_NAME set-org-quota ORG QUOTA"`
    12  	relatedCommands interface{}          `related_commands:"org-quotas, orgs"`
    13  }
    14  
    15  func (cmd *SetOrgQuotaCommand) Execute(args []string) error {
    16  	err := cmd.SharedActor.CheckTarget(false, false)
    17  	if err != nil {
    18  		return err
    19  	}
    20  
    21  	currentUser, err := cmd.Config.CurrentUserName()
    22  	if err != nil {
    23  		return err
    24  	}
    25  
    26  	cmd.UI.DisplayTextWithFlavor("Setting quota {{.QuotaName}} to org {{.OrgName}} as {{.UserName}}...", map[string]interface{}{
    27  		"QuotaName": cmd.RequiredArgs.OrganizationQuota,
    28  		"OrgName":   cmd.RequiredArgs.Organization,
    29  		"UserName":  currentUser,
    30  	})
    31  
    32  	org, warnings, err := cmd.Actor.GetOrganizationByName(cmd.RequiredArgs.Organization)
    33  	cmd.UI.DisplayWarnings(warnings)
    34  	if err != nil {
    35  		return err
    36  	}
    37  
    38  	warnings, err = cmd.Actor.ApplyOrganizationQuotaByName(cmd.RequiredArgs.OrganizationQuota, org.GUID)
    39  	cmd.UI.DisplayWarnings(warnings)
    40  	if err != nil {
    41  		return err
    42  	}
    43  
    44  	cmd.UI.DisplayOK()
    45  
    46  	return nil
    47  }