mirror of
https://github.com/deployphp/deployer.git
synced 2025-02-24 17:22:41 +01:00
Reworked the `deploy:check_remote` step, to use the `on(localhost(), ...)`, instead of relying on `runLocally`. This has been changed, to make sure that the all functions that are being executed and are related to "local" part of the logic, are ran on the local host. Previously in `runLocally(sprintf("%s ls-remote $opt $repository $ref", get('bin/git')));` the `get('bin/git')` would've been executed on the remote host, which could have resulted in an unexpected behaviour. By closing all of the instructions, in the closure that is executed by the `on()` function, we are sure that the context is set to the right host.
27 KiB
27 KiB
Changelog
master
Added
- Added a Slack notification task on rollback.
- Recipe for crontab tasks.
- ISPManager recipe and docs.
- Symfony 5 recipe.
- Command for checking if a deploy is unlocked. #2150 #2150
Fixed
- Normalize CRLF to LF new line endings. #2111
- Recipe for Magento now supports locale configuration for
setup:static-content:deploy
. #2040 - When symfony_env is set to dev, require-dev are not installed. #2035
- Fixed exit status of rollback command when there are no releases to rollback to. #2052
- When the second parameter $options passed to run() and runLocally(), use it to overwrite default env config. #2165
- Replaced
runLocally
withon(localhost(), ...)
indeploy:check_remote
to make sure all code is ran on localhost. #2170
v6.8.0
Added
- Documented check_remote task usage.
- Speedup deploy:clear_paths.
- Documented default_timeout config usage.
- Recipe for Joomla!.
Fixed
- Fixed Silverstripe CMS recipe assets path. #1989
- Fixed check_remote task errors. #1990
- Fixed check_remote task revision resolution. #1994
- Fixed backward compatibility of bin/console for symfony4 recipe.
- Keep consistency with executable naming in lock recipe.
- Unexpected exception in config:* tasks when no stage is defined for host. #1909 #1909 #1909
- Fixed parsing of installed.json by Composer version 2.
- Fixed only call bin/php on the composer.phar file.
v6.7.3
Fixed
- Fixed more Symfony 5 compatibility issues. #1971
v6.7.2
Fixed
- Fixed compatibility with Symfony 4.x.
v6.7.1
Fixed
- Fixed incompatibility with Symfony 5. #1969
v6.7.0
Changed
- Added Symfony 5 support.
v6.6.0
Added
- Added doc page with sample "real-world" Deployer script.
Fixed
- Parameters
-f
or--file
now are accepted also without the equal sign. #1479
v6.5.0
Added
- Added
deploy:check_remote
task. #1755
v6.4.7
Added
- A task to cache the event listeners manifest in Laravel. #1893
- Added
check_remote_head
option, by setting this to true, deployer will avoid unnecessary new releases by checking the remote git HEAD without cloning the repo. #1755
Fixed
- Fixed invalid magic-property phpdoc in Deployer\Deployer class. #1899
- Updated
config:hosts
andconfig:current
tasks to output only the selected stage.
v6.4.6
Added
- Re-added the
artisan:view:clear
task.
Changed
- Change the default shared files in the Symfony4 recipe. The .env file is versionned now and not the .env.local. #1881
- Change the
artisan:view:cache
task to only run theview:cache
command.
v6.4.5
Fixed
- Fixed detection of http user. #1876
v6.4.4
Added
- Added
git_clone_dissociate
option, defaults to true; when set to false git-clone doesn't dissociate the eventual reference repository after clone, useful when using git-lfs. #1820 - Added
writable_recursive
option (default: true) used in all writable modes (chmod, chown, chgrp, acl). #1822 - Added
artisan:optimize:clear
task for Laravel 5.7 and above.
Changed
- Added lock and unlock task to flow_framework receipe.
- Updated
artisan:optimize
to run for Laravel 5.7 and above, since it got added back last year. It still doesn't run for 5.5 and below. - View:clear command to a new view:cache command.
Fixed
- Fixed rsync upload honor become option for host. #1796
- Fixed bug to execute ssh command on windows. #1775
- Fixed when recipe/deploy/writable.php resolves as one of http users.
- Fixed deployer detects wrong version. #1842
- Fixed crashes on including autoloader in recipe file. #1602
v6.4.3
Fixed
- Input option handling. #1793
v6.4.2
Fixed
- Improved ParallelExecutor::generateOptions to manage all types of InputOption. #1792
v6.4.1
Fixed
- Fixed http_user detection. #1790
v6.4.0
Added
- Support to define remote shell path via host-config. #1708 #1709 #1709
- Added
horizon:terminate
to the Laravel recipe. - Added
migrations_config
option to the Symfony recipes to specify Doctrine migration configuration to use. - Added recipe for sulu 2.0. #1758
- Added recipe for sulu 1.x and improve sulu 2.0 recipe. #1764
- Added
become
option for rsync upload.
Changed
- Laravel recipe should not run
artisan:cache:clear
indeploy
task. - Pass-through the quiet mode into the git commands for updating code.
deploy:writable
will no longer be able to automatically detect http_user if there are multiple candidates for the role. #1778
Fixed
- Fixed Range expansion when hosts.yml is loaded. #1671
- Fixed usage (only if present) of deploy_path config setting. #1677
- Fixed adding custom headers causes Httpie default header override.
- Fixed Laravel
laravel_version
failure. - Fixed parser errors by adding the trim function to the changelog parser tokens.
- Fixed arguments for rsync to be properly escaped.
- Prevent multiple execution of task()->once() with --parallel and --limit option. #1419
v6.3.0
Added
- Added cache clear/warmup task for symfony4 recipe. #1575
- Added ability to use config params in host variables. #1508
- Make used shell configurable via
shellCommand
. #1536 - Added
cleanup_tty
option fordeploy:cleanup
. - Added Prestashop 1.6 recipe.
- Set dedicated user variable under CI environments, if not provided by git-config.
Changed
- Optimize locateBinaryPath() to create less subprocesses. #1634
- Laravel recipe runs migrations only once.
Fixed
- Fixed that long http user name is not detected correctly. #1580
- Fixed missing
var/sessions
in Symfony 4 shared_dirs. - Fixed warning with host without configuration. #1583
- Removed the
magento:enable
task from the Magento 2 recipe since the module states are defined inapp/etc/config.php
and this task overwrote that. - Allow to set template file path in Drupal 7 recipe. #1603
- Fixed once() tasks that where being run multiple times with ParallelExecutor.
- Fixed high CPU usage when running in parallel.
- Fixed
deploy:writable
no need to specify http_user when using chgrp writable_mode. - Fixed
deploy:shared
missing from some recipes. #1663 - Fixed missing
deploy:writable
entries in recipes. #1661
v6.2.0
Added
- Added cache clear/warmup task for symfony4 recipe. #1575
- Added ability to use config params in host variables. #1508
- Make used shell configurable via
shellCommand
. #1536
Fixed
- Fixed that long http user name is not detected correctly. #1580
- Fixed missing
var/sessions
in Symfony 4 shared_dirs. - Fixed warning with host without configuration. #1583
v6.1.0
Added
- Added debug:task command to display the order of task execution. #1488
- Added a description to the autocomplete command. #1472
- Added logging of unhandled exceptions into logfile. #1481
- Added default -H flag when using become. #1556
- Added Symfony 4 recipe. #1437
Changed
- Throw meaningfull exception on errors in cd(). #1480
- Make sure Context::pop() is called when Callback errors in on(...) function. #1513
- Update silverstripe recipe to support silverstripe 4.
- Show standard output in exceptions when error output is empty. #1554
- Improve readability of command for finding web server user. #1557
- Update symfony package dependencies to ~4.0. #1559
Fixed
- Fixed within() to also restore the working-path when the given callback throws a Exception. #1463
- Fixed
pcntl_fork
check for blacklisted Ubuntu LTS boxes. #1476 - Fixed shared dir/file paths containing variables (
{{variable}}
).
v6.0.5
Fixed
- Fixed
previous_release
param whenrelease_name
was overridden. #1455
v6.0.4
Changed
- Added support for GroupTask in invoke(). #1364
- Magento2 recipe optimizes the autoloader after the DI compilation. #1365
- Host's
roles()
API now can accept arrays too. - Fixed bug where wrong time format is passed to touch when deploying assets. #1390
- Added artisan:migrate:fresh task for laravel recipe.
- Added platform config to composer.json. #1426
- Moved symfony finder to dev-dependency. #1452
Fixed
- Fixed bug when config:hosts shows more than one table of hosts. #1403
- Fixed bug that inventory method does not return Proxy. #1413
v6.0.3
Changed
- Laravel version check defaults to 5.5 if not found. #1352
Fixed
- Updated Laravel recipe to not run
artisan:optimize
on Laravel >= 5.5, as that command is now deprecated (see upgrade notes). #1352
v6.0.2
Fixed
- Fixed bug with curl ssh check in Httpie util.
v6.0.1
Fixed
- Fixed stat url.
v6.0.0
Added
- Added possibility to use callable when setting 'default_stage'.
- Added console init template for TYPO3 CMS. #1300
- Added possibility to run a task only once. #1311
- Added
git_recursive
option. - Added
shallow
task option. - Added
deploy:info
task. - Added
writable_tty
option fordeploy:writable
. - Added
default_timeout
option. #1256 - Added
user
parameter.
Changed
- Changed
branch
parameter and option behavior. - Extended
task
func to support callables. - Renamed
env_vars
toenv
.
Fixed
- Improved the way
ParallelExecutor
handles option parameters. - Fixed no
stage
argument in parallel mode. #1299 - Improved environment variables management.
- Fixed
runLocally
to not cd into remote dir.
Removed
- Removed
terminate_message
option. - Removed
Result
class.
v5.1.3
Fixed
- Fixed bug with wrong version printed after self-update command.
- Fixed bug with excess option "--no-debug" in deploy:cache:clear task. #1290
v5.1.2
Changed
- Improved
config:current
output (print each host's current release). - Fixed cache clearing in the Symfony recipe (now runs both cache:clear and cache:warmup). #1283
Fixed
- Fixed bug where
ParallelExecutor
threw an error when custom options were added. - Fixed bug with parallel deploy in multi user envirouments. #1269
v5.1.1
Fixed
- Fixed bug with
self-update
warnings. #1226
v5.1.0
Added
- Check what
unzip
exists indeploy:vendors
task. - Added
dep run
command. #1263 - Added new
-o
option which allow to override default configuration. - Added
dep autocomplete
command. - Added
dep config:hosts
task to show inventory.
Changed
- Use either one of
command
,which
ortype
commands to locate custom binary path.
Fixed
- Fixed parallel execution with non-standart php bin path. #1265
- Fixed ssh multiplexing initialization. #1268
- Fixed exit code on error. #1236
- Fixed bug with deploying in parallel to same host. #1271
v5.0.3
Fixed
- Fixed a parsing of laravel version in output. #1252
v5.0.2
Added
- Added
laravel_version
param. #1246
Fixed
- Fixed upload / download with optional rsync ssh options. #1227
- Disable maintenance mode when Magento2 deployment fails. #1251
- Fixed storage link error when deploying Laravel < 5.3. #1246
v5.0.1
Added
- Exception when no task will be executed.
- Check for php7 in phar.
Fixed
- Throw the correct exception on git --reference fail.
- Check if multiplexing is working before continuing. #1192
- Fixed upload with non-standard SSH port. #1218
- Ensure that host roles are treated as an array.
v5.0.0
Changed
- Working path default is
release_path
instead of home for simple tasks. #1205
Fixed
- Fixed ssh multiplexing master connection initializing.
- Fixed
dep ssh
command. #1204 - Fixed
dep config:current
task.
v5.0.0-beta.3
Added
- Added
Request
class for get/post json requests. - Added host's
addSshFlag
andaddSshOption
methods.
Changed
- Allow to configure multiplexing. #1165
Fixed
- Fixed command parsing in runLocally func.
- Fixed releases list and cleanup task. #1175
v5.0.0-beta.2
Added
- Added console init template for Yii2 basic and advanced receipe. #1146
- Added
artisan:storage:link
task to the Laravel recipe to symlink the public storage directory. #1152 - Added
previous_release
var.
Changed
- Error message on locked release. #1145
Fixed
- Fixed task order init/shared for yii2-app-advanced.php. #1143
v5.0.0-beta.1
Added
- Added
use_atomic_symlink
anduse_relative_symlink
option 14a8f8. - Added
Ssh\Client
. #1092 - Added host ranges. #1092
- Added --hosts and --roles options. #1092
- Added
on
function. #1092 - Added
host
andlocalhost
. #1092 - Added persistent config. #1092
- Added
--log
option. #1092 - Added
cleanup_use_sudo
. #330
Changed
server
refactored tohost
. #1092Enviroment
refactored toConfiguration
. #1092- Phpunit test refactored. #1092
upload
anddownload
now uses rsync. #1092- Only native ssh client for now. #1092
- Task
current
toconfig:current
. #1092 onFailure
tofail
. #1092
v4.3.0
Added
- Added support for multiple choice questions. #1076
- Added a way to retrieve a defined task. #1008
- Added support for configFile in the NativeSsh implementation. #979
- Added
--no-hooks
option for running commands withoutbefore()
andafter()
. #1061 - Added a usefull error when ask*() is not used wihtin a task(). #1083
Changed
- Parse hyphens in environment setting names. #1073
- Autoload functions via Composer. #1015
- Added task queue:restart for Laravel recipe. #1007
- Changed output of errors for native ssh. #1012
Fixed
- Fixed
Can not share same dirs
for shared folders having similar names. #995 - Fixed scalar override on recursive option merge. #1003
- Fixed incompatible PHP 7.0 syntax. #1020
- Fixed an issue with the output of ls in releases_list. #1004 #1036
- Fixed possibility to use PEM files with Native SSH.
- Fixed old releases not being cleaned up when keep_releases reduced by more than half.
- Fixed creating non-existed
writable_dirs
. #1000 - Fixed uploading files with spaces in a path via Native SSH. #1010
- Fixed merge of string array config options. #1067
- Fixed uploading of files containing spaces. #1077
- Fixed download of files when filename remote contains spaces. #1082
v4.2.1
Fixed
- Fixed
deployer/phar-update
dependency for composer installation.
v4.2.0
Added
- Added pretty print to config:dump command.
Changed
add()
now merges configuration options recursively. #962- Added
writable_chmod_recursive
boolean option to enable non-recursivechmod
. ask()
now supports autocomplete. #978release_path
returnscurrent_path
in non-deploy context. #922
Fixed
- Fixed Flow recipe. #986
- Fixed
deploy:copy_dirs
task. #914 - Fixed default behavior for
working_path
. #381
Removed
- Removed const
Environment::DEPLOY_PATH
.
v4.1.0
Added
- Added
testLocally
function (analogtest
fn). - Added
ConfigurationException
. - Show message on file download.
- Added support for multiplexing for NativeSsh. #918
- Added GracefulShutdownException.
- Added Magento2 recipe. #911
Changed
- Server config
setPty
renamed topty
. #953 - Raised timeout for runLocally to 300 seconds. #955
deploy:unlock
now always successful. #950- Added option
-L
tosetfacl
. #956 - Now throw exception on duplicates in
shared_dirs
.
Fixed
- Fixed native ssh scp option.
- Fixed bug with
$httpGroup
guard clause. #948
v4.0.2
Fixed
- Fixed bug with copy shared files.
- Fixed recursive upload in native ssh.
- Improved Laravel recipe.
- Improved exceptions in runLocally.
v4.0.1
Added
- Added more writable modes.
Changed
- Allowed init command overriding.
- Returned ACL as default writable mode.
Fixed
- Fixed SilverStripe recipe.
- Fixed release sorting.
- Fixed release cleanup.
- Improved Symfony recipe.
- Fixed
DotArray
syntax inCollection
. - Fixed typo3 recipe.
- Fixed remove of shared dir on first deploy.