refactor(enterprise/cli): remove provisionerd from slim binary (#9488)

This change saves 8 MB in the slim binary.

Ref: #9380
This commit is contained in:
Mathias Fredriksson
2023-09-01 18:26:44 +00:00
committed by GitHub
parent 19d7da3d24
commit 27ab0d9a84
4 changed files with 42 additions and 14 deletions
+2
View File
@@ -1,3 +1,5 @@
//go:build !slim
package cli
import (
+23
View File
@@ -0,0 +1,23 @@
//go:build slim
package cli
import (
"github.com/coder/coder/v2/cli/clibase"
)
func (r *RootCmd) provisionerDaemons() *clibase.Cmd {
cmd := &clibase.Cmd{
Use: "provisionerd",
Short: "Manage provisioner daemons",
// We accept RawArgs so all commands and flags are accepted.
RawArgs: true,
Hidden: true,
Handler: func(inv *clibase.Invocation) error {
slimUnsupported(inv.Stderr, "coder provisionerd")
return nil
},
}
return cmd
}
+1 -14
View File
@@ -3,12 +3,7 @@
package cli
import (
"fmt"
"io"
"os"
"github.com/coder/coder/v2/cli/clibase"
"github.com/coder/coder/v2/cli/cliui"
)
func (r *RootCmd) proxyServer() *clibase.Cmd {
@@ -20,18 +15,10 @@ func (r *RootCmd) proxyServer() *clibase.Cmd {
RawArgs: true,
Hidden: true,
Handler: func(inv *clibase.Invocation) error {
serverUnsupported(inv.Stderr)
slimUnsupported(inv.Stderr, "workspace-proxy server")
return nil
},
}
return root
}
func serverUnsupported(w io.Writer) {
_, _ = fmt.Fprintf(w, "You are using a 'slim' build of Coder, which does not support the %s subcommand.\n", cliui.DefaultStyles.Code.Render("server"))
_, _ = fmt.Fprintln(w, "")
_, _ = fmt.Fprintln(w, "Please use a build of Coder from GitHub releases:")
_, _ = fmt.Fprintln(w, " https://github.com/coder/coder/releases")
os.Exit(1)
}
+16
View File
@@ -1,8 +1,13 @@
package cli
import (
"fmt"
"io"
"os"
"github.com/coder/coder/v2/cli"
"github.com/coder/coder/v2/cli/clibase"
"github.com/coder/coder/v2/cli/cliui"
)
type RootCmd struct {
@@ -24,3 +29,14 @@ func (r *RootCmd) EnterpriseSubcommands() []*clibase.Cmd {
all := append(r.Core(), r.enterpriseOnly()...)
return all
}
//nolint:unused
func slimUnsupported(w io.Writer, cmd string) {
_, _ = fmt.Fprintf(w, "You are using a 'slim' build of Coder, which does not support the %s subcommand.\n", cliui.DefaultStyles.Code.Render(cmd))
_, _ = fmt.Fprintln(w, "")
_, _ = fmt.Fprintln(w, "Please use a build of Coder from GitHub releases:")
_, _ = fmt.Fprintln(w, " https://github.com/coder/coder/releases")
//nolint:revive
os.Exit(1)
}