feat: 多项更新

压缩后上传
composer 静默安装
删除队列重启命令
This commit is contained in:
vagrant 2020-02-05 02:59:39 +00:00
parent a54af32a33
commit 91b3c709e3

View File

@ -24,7 +24,8 @@
$remote_storage_dir = $remote_dir . '/storage'; $remote_storage_dir = $remote_dir . '/storage';
$remote_public_vendor_dir = $remote_dir . '/vendor'; $remote_public_vendor_dir = $remote_dir . '/vendor';
$remote_new_release_dir = $remote_releases_dir .'/'. $release_no; $remote_new_release_dir = $remote_releases_dir .'/'. $release_no;
$remote_tmp = '/tmp/' . $release_no; $remote_tmp_work = '/tmp';
$remote_tmp = "{$remote_tmp_work}/{$release_no}";
$work_dir = $remote_tmp; $work_dir = $remote_tmp;
} else { } else {
@ -54,7 +55,9 @@
clone_repository clone_repository
@if($remote) @if($remote)
ssh_create_release_dir ssh_create_release_dir
compress_code
ssh_copy_to_remote ssh_copy_to_remote
uncompress_code
run_composer_on_remote run_composer_on_remote
update_symlinks_on_remote update_symlinks_on_remote
change_owner_on_remote change_owner_on_remote
@ -156,15 +159,27 @@
[ -d {{ $remote_releases_dir }} ] || mkdir {{ $remote_releases_dir }} && chown {{ $remote_app_user }} {{ $remote_releases_dir }} [ -d {{ $remote_releases_dir }} ] || mkdir {{ $remote_releases_dir }} && chown {{ $remote_app_user }} {{ $remote_releases_dir }}
@endtask @endtask
@task('compress_code', ['on' => 'localhost'])
echo 'Compress code floder'
tar zcf {{ $remote_tmp }}.tgz -C {{ $remote_tmp_work }} {{ $release_no }}
@endtask
@task('ssh_copy_to_remote', ['on' => 'localhost']) @task('ssh_copy_to_remote', ['on' => 'localhost'])
echo 'Copy code file to remote via ssh' echo 'Copy code file to remote via ssh'
scp -BCr {{ $remote_tmp }} {{ $remote }}:{{ $remote_releases_dir }} scp -C {{ $remote_tmp }}.tgz {{ $remote }}:{{ $remote_releases_dir }}
@endtask
@task('uncompress_code', ['on' => 'remote'])
echo 'Uncompress code floder'
cd {{ $remote_releases_dir }}
tar xf {{ $release_no }}.tgz
rm {{ $release_no }}.tgz
@endtask @endtask
@task('run_composer_on_remote', ['on' => 'remote']) @task('run_composer_on_remote', ['on' => 'remote'])
echo "Starting deployment ({{ $release_no }}) on remote" echo "Starting deployment ({{ $release_no }}) on remote"
cd {{ $remote_new_release_dir }} cd {{ $remote_new_release_dir }}
composer install --prefer-dist --no-scripts -vvv -o composer install --prefer-dist --no-scripts -q -o
@endtask @endtask
@task('update_symlinks_on_remote', ['on' => 'remote']) @task('update_symlinks_on_remote', ['on' => 'remote'])
@ -196,12 +211,13 @@
else else
ln -nfs {{ $remote_dir }}/.env {{ $remote_new_release_dir }}/.env ln -nfs {{ $remote_dir }}/.env {{ $remote_new_release_dir }}/.env
cd {{ $remote_dir }}/current && php artisan migrate cd {{ $remote_dir }}/current && php artisan migrate
cd {{ $remote_dir }}/current && php artisan queue:restart {{-- cd {{ $remote_dir }}/current && php artisan queue:restart --}}
cd {{ $remote_dir }}/current && php artisan storage:link cd {{ $remote_dir }}/current && php artisan storage:link
fi fi
@endtask @endtask
@task('change_owner_on_remote', ['on' => 'remote']) @task('change_owner_on_remote', ['on' => 'remote'])
echo 'Change permission.'
{{-- chown -R {{ $remote_app_user }} {{ $remote_dir }} --}} {{-- chown -R {{ $remote_app_user }} {{ $remote_dir }} --}}
{{-- chown -R {{ $remote_app_user }} {{ $remote_releases_dir }} --}} {{-- chown -R {{ $remote_app_user }} {{ $remote_releases_dir }} --}}
chown -R {{ $remote_app_user }} {{ $remote_storage_dir }} chown -R {{ $remote_app_user }} {{ $remote_storage_dir }}
@ -209,5 +225,6 @@
@endtask @endtask
@task('clear_temp_file') @task('clear_temp_file')
rm -rf {{ $remote_tmp }} echo 'Clear Temporary Files.'
rm -rf {{ $remote_tmp }} {{ $remote_tmp }}.tgz
@endtask @endtask