Files
dokku/plugins/resource/subcommands.go
Jose Diaz-Gonzalez ffa303092f feat: add app name verification to all golang plugins
Moving verification of input to the earliest place is the best way to decrease the need to validate this further downstream.

Additionally, some of the existing checks were.... lacking :)
2020-12-27 15:14:11 -05:00

62 lines
1.5 KiB
Go

package resource
import (
"github.com/dokku/dokku/plugins/common"
)
// CommandLimit implements resource:limit
func CommandLimit(appName string, processType string, r Resource) error {
if err := common.VerifyAppName(appName); err != nil {
return err
}
return setResourceType(appName, processType, r, "limit")
}
// CommandLimitClear implements resource:limit-clear
func CommandLimitClear(appName string, processType string) error {
if err := common.VerifyAppName(appName); err != nil {
return err
}
clearByResourceType(appName, processType, "limit")
return nil
}
// CommandReport displays a resource report for one or more apps
func CommandReport(appName string, infoFlag string) error {
if len(appName) == 0 {
apps, err := common.DokkuApps()
if err != nil {
return err
}
for _, appName := range apps {
if err := ReportSingleApp(appName, infoFlag); err != nil {
return err
}
}
return nil
}
return ReportSingleApp(appName, infoFlag)
}
// CommandReserve implements resource:reserve
func CommandReserve(appName string, processType string, r Resource) error {
if err := common.VerifyAppName(appName); err != nil {
return err
}
return setResourceType(appName, processType, r, "reserve")
}
// CommandReserveClear implements resource:reserve-clear
func CommandReserveClear(appName string, processType string) error {
if err := common.VerifyAppName(appName); err != nil {
return err
}
clearByResourceType(appName, processType, "reserve")
return nil
}