diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2018-04-09 18:38:21 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2018-04-11 09:48:56 +0200 |
commit | 7bc5e89fbaa5c613b8853ff7b69fae570bd0b56d (patch) | |
tree | 4122fd37d32737051b18847f68c64a3336557bb1 /commands/limit_darwin.go | |
parent | fdf1d94ebc7d1aa4855c62237f2edbd4bdade1a7 (diff) |
commands: Make more commands non-global
See #4598
Diffstat (limited to 'commands/limit_darwin.go')
-rw-r--r-- | commands/limit_darwin.go | 69 |
1 files changed, 42 insertions, 27 deletions
diff --git a/commands/limit_darwin.go b/commands/limit_darwin.go index 9246f4497..e35c24de4 100644 --- a/commands/limit_darwin.go +++ b/commands/limit_darwin.go @@ -33,39 +33,54 @@ import ( jww "github.com/spf13/jwalterweatherman" ) -func init() { - checkCmd.AddCommand(limit) +var _ cmder = (*limitCmd)(nil) + +type limitCmd struct { + cmd *cobra.Command } -var limit = &cobra.Command{ - Use: "ulimit", - Short: "Check system ulimit settings", - Long: `Hugo will inspect the current ulimit settings on the system. +func newLimitCmd() *limitCmd { + ccmd := &cobra.Command{ + Use: "ulimit", + Short: "Check system ulimit settings", + Long: `Hugo will inspect the current ulimit settings on the system. This is primarily to ensure that Hugo can watch enough files on some OSs`, - RunE: func(cmd *cobra.Command, args []string) error { - var rLimit syscall.Rlimit - err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit) - if err != nil { - return newSystemError("Error Getting Rlimit ", err) - } + RunE: func(cmd *cobra.Command, args []string) error { + var rLimit syscall.Rlimit + err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit) + if err != nil { + return newSystemError("Error Getting Rlimit ", err) + } - jww.FEEDBACK.Println("Current rLimit:", rLimit) + jww.FEEDBACK.Println("Current rLimit:", rLimit) - jww.FEEDBACK.Println("Attempting to increase limit") - rLimit.Max = 999999 - rLimit.Cur = 999999 - err = syscall.Setrlimit(syscall.RLIMIT_NOFILE, &rLimit) - if err != nil { - return newSystemError("Error Setting rLimit ", err) - } - err = syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit) - if err != nil { - return newSystemError("Error Getting rLimit ", err) - } - jww.FEEDBACK.Println("rLimit after change:", rLimit) + jww.FEEDBACK.Println("Attempting to increase limit") + rLimit.Max = 999999 + rLimit.Cur = 999999 + err = syscall.Setrlimit(syscall.RLIMIT_NOFILE, &rLimit) + if err != nil { + return newSystemError("Error Setting rLimit ", err) + } + err = syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit) + if err != nil { + return newSystemError("Error Getting rLimit ", err) + } + jww.FEEDBACK.Println("rLimit after change:", rLimit) + + return nil + }, + } + + return &limitCmd{cmd: ccmd} +} + +func (c *limitCmd) getCommand() *cobra.Command { + return c.cmd +} - return nil - }, +func init() { + // TODO(bep) cli refactor + //checkCmdOld.AddCommand(limit) } func tweakLimit() { |