Update Envoy.blade.php

remotes/origin/autodeploy
Marat 8 years ago
parent 3265e8199a
commit 698aafee5a
  1. 105
      Envoy.blade.php

@ -1,4 +1,5 @@
@servers(['localhost' => 'deployer@192.168.0.13']) @servers(['localhost' => 'deployer@192.168.0.13'])
@servers(['dev' => 'deployer@192.168.0.5'])
@setup @setup
$repository = 'ssh://git@g.skillbox.ru:22004/kor_a_m/skill-back.git'; $repository = 'ssh://git@g.skillbox.ru:22004/kor_a_m/skill-back.git';
@ -18,68 +19,78 @@
deployment_option_cleanup deployment_option_cleanup
@endstory @endstory
@task('clone_repository', ['on' => 'localhost']) @story('deploydev', ['on' => 'dev'])
echo '>> Клонируем репозиторий' clone_repository
create_symlinks
install_req
run_tests
run_migrate
update_symlinks
deployment_option_cleanup
@endstory
@task('clone_repository')
echo '>> Клонируем репозиторий'
echo '{{ $new_release_dir }}' echo '{{ $new_release_dir }}'
[ -d {{ $releases_dir }} ] || mkdir {{ $releases_dir }} [ -d {{ $releases_dir }} ] || mkdir {{ $releases_dir }}
@if ($branch) @if ($branch)
git clone -b {{ $branch }} {{ $repository }} {{ $new_release_dir }} git clone -b {{ $branch }} {{ $repository }} {{ $new_release_dir }}
@endif @endif
@endtask @endtask
@task('create_symlinks', ['on' => 'localhost']) @task('create_symlinks')
echo '>> Создание симлинков' echo '>> Создание симлинков'
ln -s {{ $app_dir }}/configs/master/ssl {{ $new_release_dir }}/ssl ln -s {{ $app_dir }}/configs/master/ssl {{ $new_release_dir }}/ssl
@if ($branch == 'master') @if ($branch == 'master')
ln -nfs {{ $app_dir }}/configs/master/prod.env {{ $new_release_dir }}/config_app/settings/local.env ln -nfs {{ $app_dir }}/configs/master/prod.env {{ $new_release_dir }}/config_app/settings/local.env
ln -nfs {{ $app_dir }}/media/master {{ $new_release_dir }}/media ln -nfs {{ $app_dir }}/media/master {{ $new_release_dir }}/media
@endif @endif
@if ($branch == 'dev') @if ($branch == 'dev')
ln -nfs {{ $app_dir }}/configs/dev/dev.env {{ $new_release_dir }}/config_app/settings/local.env ln -nfs {{ $app_dir }}/configs/dev/dev.env {{ $new_release_dir }}/config_app/settings/local.env
ln -nfs {{ $app_dir }}/media/master {{ $new_release_dir }}/media ln -nfs {{ $app_dir }}/media/master {{ $new_release_dir }}/media
@endif @endif
ln -nfs {{ $app_dir }}/logs/{{ $branch }} {{ $new_release_dir }}/logs ln -nfs {{ $app_dir }}/logs/{{ $branch }} {{ $new_release_dir }}/logs
@endtask @endtask
@task('install_req', ['on' => 'localhost']) @task('install_req')
echo '>> Подтягиваем зависимости' echo '>> Подтягиваем зависимости'
@if ($branch) @if ($branch)
cd {{ $new_release_dir }} cd {{ $new_release_dir }}
source /env/bin/activate && pip install -r requirements.txt source /env/bin/activate && pip install -r requirements.txt
@endif @endif
@endtask @endtask
@task('run_tests', ['on' => 'localhost']) @task('run_tests')
echo '>> Запускаем тесты' echo '>> Запускаем тесты'
@if ($branch) @if ($branch)
cd {{ $new_release_dir }} cd {{ $new_release_dir }}
source /env/bin/activate && python manage.py test source /env/bin/activate && python manage.py test
@endif @endif
@endtask @endtask
@task('run_migrate', ['on' => 'localhost']) @task('run_migrate')
echo '>> Запускаем миграции' echo '>> Запускаем миграции'
@if ($branch) @if ($branch)
cd {{ $new_release_dir }} cd {{ $new_release_dir }}
source /env/bin/activate && python manage.py migrate source /env/bin/activate && python manage.py migrate
@endif @endif
@endtask @endtask
@task('update_symlinks', ['on' => 'localhost']) @task('update_symlinks')
@if ($branch) @if ($branch)
ln -nfs {{ $app_dir }}/configs/{{ $branch }}/wsgi.py {{ $new_release_dir }}/lms/wsgi.py ln -nfs {{ $app_dir }}/configs/{{ $branch }}/wsgi.py {{ $new_release_dir }}/lms/wsgi.py
echo '>> Создаем симлинк на папку текущего релиза' echo '>> Создаем симлинк на папку текущего релиза'
ln -nfs {{ $new_release_dir }} {{ $app_dir }}/current_{{ $branch }} ln -nfs {{ $new_release_dir }} {{ $app_dir }}/current_{{ $branch }}
echo '>> restart Supervisor' echo '>> restart Supervisor'
supervisorctl restart {{ $branch }}: supervisorctl restart {{ $branch }}:
@endif @endif
@endtask @endtask
@task('deployment_option_cleanup') @task('deployment_option_cleanup')
cd {{ $releases_dir }} cd {{ $releases_dir }}
@if ( isset($cleanup) && $cleanup ) @if ( isset($cleanup) && $cleanup )
find . -maxdepth 1 -name "20*{{ $branch }}" -mmin +30 | head -n 3 | xargs rm -Rf find . -maxdepth 1 -name "20*{{ $branch }}" -mmin +30 | head -n 3 | xargs rm -Rf
echo "Cleaned up old deployments" echo "Cleaned up old deployments"
@endif @endif
@endtask @endtask

Loading…
Cancel
Save