Merge branch 'dokku:master' into master
This commit is contained in:
@@ -74,6 +74,21 @@ set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x
|
|||||||
# TODO
|
# TODO
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### `app-list`
|
||||||
|
|
||||||
|
- Description: Lists all apps in available to the currently logged in user. Optionally disables filtering by user if the first argument is `false`.
|
||||||
|
- Invoked by:
|
||||||
|
- Arguments: `$FILTER`
|
||||||
|
- Example:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x
|
||||||
|
|
||||||
|
# TODO
|
||||||
|
```
|
||||||
|
|
||||||
### `app-json-process-deploy-parallelism`
|
### `app-json-process-deploy-parallelism`
|
||||||
|
|
||||||
- Description: Decides the parallelism to use when deploying a given process type. The default is 1 process entry at a type.
|
- Description: Decides the parallelism to use when deploying a given process type. The default is 1 process entry at a type.
|
||||||
|
|||||||
6
plugins/20_events/app-list
Executable file
6
plugins/20_events/app-list
Executable file
@@ -0,0 +1,6 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -eo pipefail
|
||||||
|
[[ $DOKKU_TRACE ]] && set -x
|
||||||
|
source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions"
|
||||||
|
|
||||||
|
[[ ! "$DOKKU_EVENTS" ]] || dokku_log_plugn_trigger_call "$(basename "$0")" "$@"
|
||||||
@@ -9,7 +9,7 @@ migrate_checks_vars_0_5_0() {
|
|||||||
local GLOBAL_SKIP_ALL_CHECKS=$(config_get --global DOKKU_SKIP_ALL_CHECKS || true)
|
local GLOBAL_SKIP_ALL_CHECKS=$(config_get --global DOKKU_SKIP_ALL_CHECKS || true)
|
||||||
local GLOBAL_SKIP_DEFAULT_CHECKS=$(config_get --global DOKKU_SKIP_DEFAULT_CHECKS || true)
|
local GLOBAL_SKIP_DEFAULT_CHECKS=$(config_get --global DOKKU_SKIP_DEFAULT_CHECKS || true)
|
||||||
|
|
||||||
for app in $(dokku_apps); do
|
for app in $(dokku_apps "false"); do
|
||||||
local APP_SKIP_ALL_CHECKS=$(config_get "$app" DOKKU_SKIP_ALL_CHECKS || true)
|
local APP_SKIP_ALL_CHECKS=$(config_get "$app" DOKKU_SKIP_ALL_CHECKS || true)
|
||||||
local APP_SKIP_DEFAULT_CHECKS=$(config_get "$app" DOKKU_SKIP_DEFAULT_CHECKS || true)
|
local APP_SKIP_DEFAULT_CHECKS=$(config_get "$app" DOKKU_SKIP_DEFAULT_CHECKS || true)
|
||||||
|
|
||||||
@@ -35,7 +35,7 @@ migrate_checks_vars_0_5_0() {
|
|||||||
migrate_checks_vars_0_6_0() {
|
migrate_checks_vars_0_6_0() {
|
||||||
declare desc="migrates CHECKS config variables from 0.5.x to support fully-disabled zero-downtime checks"
|
declare desc="migrates CHECKS config variables from 0.5.x to support fully-disabled zero-downtime checks"
|
||||||
|
|
||||||
for app in $(dokku_apps); do
|
for app in $(dokku_apps "false"); do
|
||||||
local APP_DOKKU_CHECKS_ENABLED=$(config_get "$app" DOKKU_CHECKS_ENABLED || true)
|
local APP_DOKKU_CHECKS_ENABLED=$(config_get "$app" DOKKU_CHECKS_ENABLED || true)
|
||||||
if [[ $APP_DOKKU_CHECKS_ENABLED ]]; then
|
if [[ $APP_DOKKU_CHECKS_ENABLED ]]; then
|
||||||
dokku_log_info1 "Migrating zero downtime env variables to 0.6.x. The following variables will be migrated"
|
dokku_log_info1 "Migrating zero downtime env variables to 0.6.x. The following variables will be migrated"
|
||||||
|
|||||||
@@ -245,6 +245,16 @@ func GetRunningImageTag(appName string, imageTag string) (string, error) {
|
|||||||
|
|
||||||
// DokkuApps returns a list of all local apps
|
// DokkuApps returns a list of all local apps
|
||||||
func DokkuApps() ([]string, error) {
|
func DokkuApps() ([]string, error) {
|
||||||
|
apps, err := UnfilteredDokkuApps()
|
||||||
|
if err != nil {
|
||||||
|
return apps, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return filterApps(apps)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UnfilteredDokkuApps returns an unfiltered list of all local apps
|
||||||
|
func UnfilteredDokkuApps() ([]string, error) {
|
||||||
apps := []string{}
|
apps := []string{}
|
||||||
dokkuRoot := MustGetEnv("DOKKU_ROOT")
|
dokkuRoot := MustGetEnv("DOKKU_ROOT")
|
||||||
files, err := ioutil.ReadDir(dokkuRoot)
|
files, err := ioutil.ReadDir(dokkuRoot)
|
||||||
@@ -267,7 +277,7 @@ func DokkuApps() ([]string, error) {
|
|||||||
return apps, fmt.Errorf("You haven't deployed any applications yet")
|
return apps, fmt.Errorf("You haven't deployed any applications yet")
|
||||||
}
|
}
|
||||||
|
|
||||||
return filterApps(apps)
|
return apps, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetAppImageName returns image identifier for a given app, tag tuple. validate if tag is presented
|
// GetAppImageName returns image identifier for a given app, tag tuple. validate if tag is presented
|
||||||
|
|||||||
@@ -17,7 +17,8 @@ has_tty() {
|
|||||||
|
|
||||||
dokku_apps() {
|
dokku_apps() {
|
||||||
declare desc="prints list of all local apps"
|
declare desc="prints list of all local apps"
|
||||||
local INSTALLED_APPS="$(plugn trigger app-list)"
|
declare FILTER="$1"
|
||||||
|
local INSTALLED_APPS="$(plugn trigger app-list "$FILTER")"
|
||||||
if [[ -z "$INSTALLED_APPS" ]]; then
|
if [[ -z "$INSTALLED_APPS" ]]; then
|
||||||
dokku_log_fail "You haven't deployed any applications yet"
|
dokku_log_fail "You haven't deployed any applications yet"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -18,7 +18,12 @@ func main() {
|
|||||||
var err error
|
var err error
|
||||||
switch trigger {
|
switch trigger {
|
||||||
case "app-list":
|
case "app-list":
|
||||||
err = common.TriggerAppList()
|
filtered := flag.Arg(0)
|
||||||
|
if filtered == "" {
|
||||||
|
filtered = "true"
|
||||||
|
}
|
||||||
|
filter := common.ToBool(filtered)
|
||||||
|
err = common.TriggerAppList(filter)
|
||||||
case "core-post-deploy":
|
case "core-post-deploy":
|
||||||
appName := flag.Arg(0)
|
appName := flag.Arg(0)
|
||||||
err = common.TriggerCorePostDeploy(appName)
|
err = common.TriggerCorePostDeploy(appName)
|
||||||
|
|||||||
@@ -6,8 +6,14 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
// TriggerAppList outputs each app name to stdout on a newline
|
// TriggerAppList outputs each app name to stdout on a newline
|
||||||
func TriggerAppList() error {
|
func TriggerAppList(filtered bool) error {
|
||||||
apps, _ := DokkuApps()
|
var apps []string
|
||||||
|
if filtered {
|
||||||
|
apps, _ = DokkuApps()
|
||||||
|
} else {
|
||||||
|
apps, _ = UnfilteredDokkuApps()
|
||||||
|
}
|
||||||
|
|
||||||
for _, app := range apps {
|
for _, app := range apps {
|
||||||
Log(app)
|
Log(app)
|
||||||
}
|
}
|
||||||
@@ -30,7 +36,7 @@ func TriggerInstall() error {
|
|||||||
return fmt.Errorf("Unable to install the common plugin: %s", err.Error())
|
return fmt.Errorf("Unable to install the common plugin: %s", err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
apps, err := DokkuApps()
|
apps, err := UnfilteredDokkuApps()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ func deleteCrontab() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func writeCronEntries() error {
|
func writeCronEntries() error {
|
||||||
apps, _ := common.DokkuApps()
|
apps, _ := common.UnfilteredDokkuApps()
|
||||||
commands := []templateCommand{}
|
commands := []templateCommand{}
|
||||||
for _, appName := range apps {
|
for _, appName := range apps {
|
||||||
scheduler := common.GetAppScheduler(appName)
|
scheduler := common.GetAppScheduler(appName)
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ trigger-domains-install() {
|
|||||||
declare trigger="install"
|
declare trigger="install"
|
||||||
|
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
for app in $(dokku_apps); do
|
for app in $(dokku_apps "false"); do
|
||||||
domains_setup "$app"
|
domains_setup "$app"
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ migrate_git_vars_0_12_0() {
|
|||||||
DOKKU_QUIET_OUTPUT=1 config_unset --global DOKKU_DEPLOY_BRANCH || true
|
DOKKU_QUIET_OUTPUT=1 config_unset --global DOKKU_DEPLOY_BRANCH || true
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for app in $(dokku_apps); do
|
for app in $(dokku_apps "false"); do
|
||||||
DOKKU_DEPLOY_BRANCH=$(config_get "$app" DOKKU_DEPLOY_BRANCH || true)
|
DOKKU_DEPLOY_BRANCH=$(config_get "$app" DOKKU_DEPLOY_BRANCH || true)
|
||||||
if [[ -n "$DOKKU_DEPLOY_BRANCH" ]]; then
|
if [[ -n "$DOKKU_DEPLOY_BRANCH" ]]; then
|
||||||
fn-plugin-property-write "git" "$app" "deploy-branch" "$DOKKU_DEPLOY_BRANCH"
|
fn-plugin-property-write "git" "$app" "deploy-branch" "$DOKKU_DEPLOY_BRANCH"
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ func sinkValueToConfig(appName string, sinkValue string) (vectorSink, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func writeVectorConfig() error {
|
func writeVectorConfig() error {
|
||||||
apps, _ := common.DokkuApps()
|
apps, _ := common.UnfilteredDokkuApps()
|
||||||
data := vectorConfig{
|
data := vectorConfig{
|
||||||
Sources: map[string]vectorSource{},
|
Sources: map[string]vectorSource{},
|
||||||
Sinks: map[string]vectorSink{},
|
Sinks: map[string]vectorSink{},
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ func TriggerInstall() error {
|
|||||||
return fmt.Errorf("Unable to install the network plugin: %s", err.Error())
|
return fmt.Errorf("Unable to install the network plugin: %s", err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
apps, err := common.DokkuApps()
|
apps, err := common.UnfilteredDokkuApps()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ validate_nginx() {
|
|||||||
verify_app_name "$APP"
|
verify_app_name "$APP"
|
||||||
nginx_vhosts_validate_single_func "$APP" "$FLAG"
|
nginx_vhosts_validate_single_func "$APP" "$FLAG"
|
||||||
else
|
else
|
||||||
for app in $(dokku_apps); do
|
for app in $(dokku_apps "false"); do
|
||||||
nginx_vhosts_validate_single_func "$app" "$FLAG"
|
nginx_vhosts_validate_single_func "$app" "$FLAG"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -95,7 +95,7 @@ trigger-nginx-vhosts-install() {
|
|||||||
[[ -f /etc/logrotate.d/nginx ]] && sed -i -e 's/invoke-rc.d/service/g' /etc/logrotate.d/nginx
|
[[ -f /etc/logrotate.d/nginx ]] && sed -i -e 's/invoke-rc.d/service/g' /etc/logrotate.d/nginx
|
||||||
|
|
||||||
# @TODO: Remove this after a few versions
|
# @TODO: Remove this after a few versions
|
||||||
for app in $(dokku_apps); do
|
for app in $(dokku_apps "false"); do
|
||||||
nginx_port="$(config_get "$app" DOKKU_NGINX_PORT || true)"
|
nginx_port="$(config_get "$app" DOKKU_NGINX_PORT || true)"
|
||||||
nginx_ssl_port="$(config_get "$app" DOKKU_NGINX_SSL_PORT || true)"
|
nginx_ssl_port="$(config_get "$app" DOKKU_NGINX_SSL_PORT || true)"
|
||||||
if [[ -n "$nginx_port" ]] || [[ -n "$nginx_ssl_port" ]]; then
|
if [[ -n "$nginx_port" ]] || [[ -n "$nginx_ssl_port" ]]; then
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ func TriggerInstall() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
apps, err := common.DokkuApps()
|
apps, err := common.UnfilteredDokkuApps()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ func TriggerInstall() error {
|
|||||||
return fmt.Errorf("Unable to install the scheduler plugin: %s", err.Error())
|
return fmt.Errorf("Unable to install the scheduler plugin: %s", err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
apps, err := common.DokkuApps()
|
apps, err := common.UnfilteredDokkuApps()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user