Command-Line Tool ================= Fapistrano offers a default command-line tool: `fap`:: $ fap --help Usage: fap [OPTIONS] COMMAND [ARGS]... Options: -d, --deployfile TEXT --help Show this message and exit. Commands: release restart rollback `fap release` ------------- This command is designed to ship new deployments to you server. It do pretter little things: * Start * Create a new release directory under `releases_path`; * Create link files/directories in release directory, symlinking them to files/directories to `shared_path`; * Update * Default behaviour is blank; * Publish * Switch current release defined by `current_path` to newly created release directory; * Finish * Remove stale releases, according the number defined by `keep_releases`. Example:: [server01] Executing task 'deploy.release' ===> Starting [server01] run: mkdir -p /home/deploy/www/example/{releases,shared/log} [server01] run: chmod -R g+w /home/deploy/www/example/shared [server01] run: mkdir -p /home/deploy/www/example/releases/160314-085322 ===> Started ===> Updating ===> Updated ===> Publishing [server01] run: ln -nfs /home/deploy/www/example/releases/160314-085322 current ===> Published ===> Finishing ===> Cleanning up old release(s) [server01] run: ls -x /home/deploy/www/example/releases [server01] run: rm -rf 160313-230707 ===> Finished Done. Disconnecting from server:2333... done. `fap rollback` -------------- This command is designed to rollback to previously deployed release. * Start * Check if there is a rollback release, which is deployed before current release; * Define: * `rollback_from`: current_release; * `rollback_to`: release that is deployed previous than current release; * Update * Default behaviour is blank; * Publish * Switch current release defined by `current_path` to `rollback_to`; * Finish * Remove `rollback_from` release. Example:: [server01] Executing task 'deploy.release' ===> Starting [server01] run: mkdir -p /home/deploy/www/example/{releases,shared/log} [server01] run: chmod -R g+w /home/deploy/www/example/shared ===> Started ===> Updating ===> Updated ===> Publishing [server01] run: ln -nfs /home/deploy/www/example/releases/160314-083000 current ===> Published ===> Finishing ===> Cleanning up old release(s) [server01] run: rm -rf 160314-085322 ===> Finished Done. Disconnecting from server:2333... done. `fap restart` ------------- This command is designed to restart you application. * Restart * Default behavious is blank. Example:: [server01] Executing task 'deploy.release' ===> Restarting ===> Restarted Done. Disconnecting from server:2333... done.