queue -> command # adds command to queuequeue! -> command # it will output the command if verbose is trueto -> on # changes queue namein_directory -> in_path # wraps commands to be run in specified pathinvoke :'task[param]' -> invoke :task, param # passes params to the taskrun # runs commands on a specified backend, this has replaced old before and after hookscomment # adds a ‘echo —–> #{command}’ to queueOther commands have been removed!
Remove :environment dependency on all your tasks!
task deploy: :environment do
...
--->
task :deploy do
...
set # remained for setting variablesfetch # ALL variables now need to be fetched with fetch. Removed method_missingset?ensure!shared_paths -> separated into shared_dirs & shared_filesFor example:
set :shared_dirs, fetch(:shared_dirs, []).push('somedir')
set :shared_files, fetch(:shared_files, []).push('config/database.yml', 'config/secrets.yml')
All *_path variables (:current_path, :shared_path, …) now include :deploy_to
#{fetch(:deploy_to)}/#{fetch(:current_path)} -> fetch(:current_path)mina setupcurrent/vendor/bundle to /shared/vendor/bundlecurrent/public/assets to shared/public/assetsforce_asset_precompile=true