diff --git a/docs/deployment/methods/images.md b/docs/deployment/methods/images.md index c76472b86..f688f5544 100644 --- a/docs/deployment/methods/images.md +++ b/docs/deployment/methods/images.md @@ -11,6 +11,13 @@ tags:destroy # Remove app image tag The Dokku tags plugin allows you to add docker image tags to the currently deployed app image for versioning and subsequent deployment. +> When triggering `dokku ps:rebuild APP` on an application deployed via the `tags` plugin, the following may occur: +> +> - Applications previously deployed via another method (`git`/`tar`): The application may revert to a state before the latest custom image tag was deployed. +> - Applications that were only ever deployed via the `tags` plugin: No action will be taken against your application. +> +> Please use the `tags:deploy` command when redeploying an application deployed via docker image. + ## Usage ### Listing tags for an application diff --git a/docs/deployment/methods/tar.md b/docs/deployment/methods/tar.md index 60a2809a0..28e2f13e8 100644 --- a/docs/deployment/methods/tar.md +++ b/docs/deployment/methods/tar.md @@ -1,4 +1,4 @@ -# Tarfile Deployment +# Tarball Deployment > New as of 0.4.0 @@ -7,6 +7,13 @@ tar:from # Loads an app tarball from url tar:in # Reads an tarball containing the app from stdin ``` +> When triggering `dokku ps:rebuild APP` on an application deployed via the `tar` plugin, the following may occur: +> +> - Applications previously deployed via another method (`git`): The application may revert to a state before the latest custom image tag was deployed. +> - Applications that were only ever deployed via the `tar` plugin: The application will be properly rebuilt. +> +> Please use the appropriate`tar` command when redeploying an application deployed via tarball. + ## Usage ### Deploying from a tarball diff --git a/docs/deployment/process-management.md b/docs/deployment/process-management.md index 411185dae..dbd956fec 100644 --- a/docs/deployment/process-management.md +++ b/docs/deployment/process-management.md @@ -4,8 +4,8 @@ ``` ps # List processes running in app container(s) -ps:rebuildall # Rebuild all apps -ps:rebuild # Rebuild an app +ps:rebuildall # Rebuild all apps from source +ps:rebuild # Rebuild an app from source ps:restartall # Restart all deployed app containers ps:restart # Restart app container(s) ps:scale = [=] # Set how many processes of a given process to run @@ -43,6 +43,11 @@ You may also rebuild all applications at once, which is useful when enabling/dis dokku ps:rebuildall ``` +> The `ps:rebuild` and `ps:rebuildall` commands only work for applications for which there is a source, and thus +> will only always work deterministically for git-deployed application. Please see +> the [images documentation](/dokku/deployment/methods/images/) and [tar documentation](/dokku/deployment/methods/tar/) +> in for more information concerning rebuilding those applications. + ### Restarting applications Applications can be restarted, which is functionally identical to calling the `release_and_deploy` function on an application. Please not that any linked containers *must* be started before the application in order to have a successful boot. diff --git a/docs/getting-started/upgrading.md b/docs/getting-started/upgrading.md index f11a33d6d..42cfa36a6 100644 --- a/docs/getting-started/upgrading.md +++ b/docs/getting-started/upgrading.md @@ -27,9 +27,19 @@ sudo apt-get update dokku apps dokku ps:stop # repeat to shut down each running app sudo apt-get install -qq -y dokku herokuish -dokku ps:rebuildall # restart all applications +dokku ps:rebuildall # rebuilds all applications ``` +> If you have any applications deployed via the `tags` or `tar` commands, do not run the `ps:rebuildall` command, +> and instead trigger `ps:rebuild` manually for each `git`-deployed application: +> +> ``` +> dokku ps:rebuild APP +> ``` +> +> Please see the [images documentation](/dokku/deployment/methods/images/) and [tar documentation](/dokku/deployment/methods/tar/) +> for instructions on rebuilding applications deployed by those plugins. + ### Upgrade From Source If you installed Dokku from source (less common), upgrade with: @@ -45,7 +55,7 @@ sudo DOKKU_BRANCH=master make install # upgrade to debian package-based installation sudo make install -dokku ps:rebuildall # restart all applications +dokku ps:rebuildall # rebuilds all applications ``` To upgrade herokuish from source, upgrade with: diff --git a/plugins/ps/commands b/plugins/ps/commands index 70227360f..6f705f448 100755 --- a/plugins/ps/commands +++ b/plugins/ps/commands @@ -11,8 +11,8 @@ case "$1" in ps:scale = [=...], Get/Set how many instances of a given process to run ps:start , Start app container(s) ps:stop , Stop app container(s) - ps:rebuild , Rebuild an app - ps:rebuildall, Rebuild all apps + ps:rebuild , Rebuild an app from source + ps:rebuildall, Rebuild all apps from source ps:restart , Restart app container(s) ps:restartall, Restart all deployed app containers ps:restore, Start previously running apps e.g. after reboot diff --git a/plugins/ps/subcommands/rebuild b/plugins/ps/subcommands/rebuild index e564be45a..15128386a 100755 --- a/plugins/ps/subcommands/rebuild +++ b/plugins/ps/subcommands/rebuild @@ -4,7 +4,7 @@ source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions" source "$PLUGIN_AVAILABLE_PATH/ps/functions" ps_rebuild_cmd() { - declare desc="rebuilds app via command line" + declare desc="rebuilds an app from source" local cmd="ps:rebuild" [[ -z $2 ]] && dokku_log_fail "Please specify an app to run the command on" ps_rebuild "$2" diff --git a/plugins/ps/subcommands/rebuildall b/plugins/ps/subcommands/rebuildall index 06eff9311..31809971c 100755 --- a/plugins/ps/subcommands/rebuildall +++ b/plugins/ps/subcommands/rebuildall @@ -4,7 +4,7 @@ source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions" source "$PLUGIN_AVAILABLE_PATH/ps/functions" ps_rebuildall_cmd() { - declare desc="rebuilds all deployed apps via command line" + declare desc="rebuilds all apps from source" local cmd="ps:rebuildall" for app in $(dokku_apps); do (is_deployed "$app") && ps_rebuild "$app"