feat: create proxy:build-config command

Closes #4024
This commit is contained in:
Jose Diaz-Gonzalez
2020-06-29 20:17:23 -04:00
parent 90b3528f6b
commit eaf0d9af55
10 changed files with 36 additions and 12 deletions

View File

@@ -28,7 +28,6 @@ fn-help-content() {
declare desc="return help content"
cat <<help_content
nginx:access-logs <app> [-t], Show the nginx access logs for an application (-t follows)
nginx:build-config <app>, (Re)builds nginx config for given app
nginx:error-logs <app> [-t], Show the nginx error logs for an application (-t follows)
nginx:report [<app>] [<flag>], Displays an nginx report for one or more apps
nginx:set <app> <property> (<value>), Set or clear an nginx property for an app

View File

@@ -8,6 +8,7 @@ cmd-nginx-build-config() {
declare cmd="nginx:build-config"
[[ "$1" == "$cmd" ]] && shift 1
declare APP="$1"
dokku_log_warn "Deprecated: Please use proxy:build-config"
[[ -z "$APP" ]] && dokku_log_fail "Please specify an app to run the command on"
local PROXY_APP_TYPE

View File

@@ -1,4 +1,4 @@
SUBCOMMANDS = subcommands/disable subcommands/enable subcommands/ports subcommands/ports-add subcommands/ports-clear subcommands/ports-remove subcommands/ports-set subcommands/report subcommands/set
SUBCOMMANDS = subcommands/build-config subcommands/disable subcommands/enable subcommands/ports subcommands/ports-add subcommands/ports-clear subcommands/ports-remove subcommands/ports-set subcommands/report subcommands/set
TRIGGERS = triggers/proxy-is-enabled triggers/proxy-type triggers/post-certs-remove triggers/post-certs-update triggers/report
BUILD = commands subcommands triggers
PLUGIN_NAME = proxy

View File

@@ -18,6 +18,7 @@ Manage the proxy integration for an app
Additional commands:`
helpContent = `
proxy:build-config <app>, (Re)builds config for a given app
proxy:disable <app>, Disable proxy for app
proxy:enable <app>, Enable proxy for app
proxy:ports <app>, List proxy port mappings for app

View File

@@ -17,6 +17,11 @@ func main() {
var err error
switch subcommand {
case "build-config":
args := flag.NewFlagSet("proxy:build-config", flag.ExitOnError)
args.Parse(os.Args[2:])
appName := args.Arg(0)
err = proxy.CommandBuildConfig(appName)
case "disable":
args := flag.NewFlagSet("proxy:disable", flag.ExitOnError)
skipRestart := args.Bool("no-restart", false, "--no-restart: skip restart of the app")

View File

@@ -8,6 +8,19 @@ import (
"github.com/dokku/dokku/plugins/config"
)
// CommandBuildConfig rebuilds config for a given app
func CommandBuildConfig(appName string) error {
if appName == "" {
return errors.New("Please specify an app to run the command on")
}
if err := common.VerifyAppName(appName); err != nil {
return err
}
return common.PlugnTrigger("proxy-build-config", []string{appName}...)
}
// CommandDisable disables the proxy for app via command line
func CommandDisable(appName string, skipRestart bool) error {
if appName == "" {