feat: add nginx:reload command
Reloads the nginx server config after validating it with `nginx -t`. Useful for picking up changes to globally managed nginx configs without restarting the running process.
This commit is contained in:
@@ -235,6 +235,29 @@ cmd-nginx-stop() {
|
||||
fn-nginx-vhosts-nginx-init-cmd "disable"
|
||||
}
|
||||
|
||||
cmd-nginx-reload() {
|
||||
declare desc="reloads the nginx server config"
|
||||
declare cmd="nginx:reload"
|
||||
[[ "$1" == "$cmd" ]] && shift 1
|
||||
|
||||
local NGINX_LOCATION EXIT_CODE
|
||||
NGINX_LOCATION=$(get_nginx_location)
|
||||
if [[ -z "$NGINX_LOCATION" ]]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set +e
|
||||
sudo "$NGINX_LOCATION" -t &>/dev/null
|
||||
EXIT_CODE=$?
|
||||
set -e
|
||||
if [[ "$EXIT_CODE" -ne "0" ]]; then
|
||||
sudo "$NGINX_LOCATION" -t
|
||||
exit "$EXIT_CODE"
|
||||
fi
|
||||
|
||||
fn-nginx-vhosts-nginx-init-cmd "reload"
|
||||
}
|
||||
|
||||
cmd-nginx-validate-config() {
|
||||
declare desc="validates and optionally cleans up invalid nginx configurations"
|
||||
declare cmd="nginx:validate-config"
|
||||
|
||||
@@ -32,6 +32,7 @@ fn-help-content() {
|
||||
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
|
||||
nginx:show-config <app>, Display app nginx config
|
||||
nginx:reload, Reloads the nginx server config
|
||||
nginx:start, Starts the nginx server
|
||||
nginx:stop, Stops the nginx server
|
||||
nginx:validate-config [<app>] [--clean], Validates and optionally cleans up invalid nginx configurations
|
||||
|
||||
6
plugins/nginx-vhosts/subcommands/reload
Executable file
6
plugins/nginx-vhosts/subcommands/reload
Executable file
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
source "$PLUGIN_AVAILABLE_PATH/nginx-vhosts/command-functions"
|
||||
set -eo pipefail
|
||||
[[ $DOKKU_TRACE ]] && set -x
|
||||
|
||||
cmd-nginx-reload "$@"
|
||||
Reference in New Issue
Block a user