First Commit
This commit is contained in:
+119
@@ -0,0 +1,119 @@
|
||||
@setup
|
||||
if (file_exists(__DIR__.'/.env.envoy')) {
|
||||
foreach (parse_ini_file(__DIR__.'/.env.envoy') as $key => $value) {
|
||||
putenv("$key=$value");
|
||||
}
|
||||
}
|
||||
|
||||
$path = getenv('DEPLOY_PATH') ?: '/home/CHANGE_ME/CHANGE_ME_DOMAIN';
|
||||
$branch = getenv('DEPLOY_BRANCH') ?: 'master';
|
||||
$compose = "docker compose";
|
||||
@endsetup
|
||||
|
||||
@servers(['web' => getenv('DEPLOY_SSH_HOST') ?: 'CHANGE_ME_SSH_HOST', 'local' => '127.0.0.1'])
|
||||
|
||||
|
||||
{{-- DEPLOY --}}
|
||||
|
||||
@macro('deploy')
|
||||
pull
|
||||
docker_build
|
||||
docker_up
|
||||
migrate
|
||||
artisan_optimize
|
||||
restart_workers
|
||||
stoic_generate_thumbs
|
||||
done
|
||||
@endmacro
|
||||
|
||||
@task('pull', ['on' => 'web'])
|
||||
echo ">>> Pulling latest code..."
|
||||
cd {{ $path }}
|
||||
git reset --hard
|
||||
git pull origin {{ $branch }}
|
||||
@endtask
|
||||
|
||||
@task('docker_build', ['on' => 'web'])
|
||||
echo ">>> Building images..."
|
||||
cd {{ $path }}
|
||||
{{ $compose }} build
|
||||
@endtask
|
||||
|
||||
@task('docker_up', ['on' => 'web'])
|
||||
echo ">>> Recreating containers..."
|
||||
cd {{ $path }}
|
||||
{{ $compose }} up -d --remove-orphans
|
||||
@endtask
|
||||
|
||||
@task('migrate', ['on' => 'web'])
|
||||
echo ">>> Running migrations..."
|
||||
cd {{ $path }}
|
||||
{{ $compose }} exec -T app php artisan migrate --force < /dev/null
|
||||
@endtask
|
||||
|
||||
@task('artisan_optimize', ['on' => 'web'])
|
||||
echo ">>> Optimizing..."
|
||||
cd {{ $path }}
|
||||
{{ $compose }} exec -T app php artisan config:cache < /dev/null
|
||||
{{ $compose }} exec -T app php artisan route:cache < /dev/null
|
||||
{{-- {{ $compose }} exec -T app php artisan view:cache --}}
|
||||
{{ $compose }} exec -T app php artisan event:cache < /dev/null
|
||||
@endtask
|
||||
|
||||
@task('restart_workers', ['on' => 'web'])
|
||||
echo ">>> Restarting queue workers..."
|
||||
cd {{ $path }}
|
||||
{{ $compose }} restart queue
|
||||
@endtask
|
||||
|
||||
@task('password_protect', ['on' => 'web'])
|
||||
echo ">>> Maintenance mode on..."
|
||||
cd {{ $path }}
|
||||
{{ $compose }} exec -T app php artisan down --secret="bobobo" < /dev/null
|
||||
@endtask
|
||||
|
||||
@task('done', ['on' => 'web'])
|
||||
echo ""
|
||||
echo "✅ Deployment complete!"
|
||||
echo ""
|
||||
@endtask
|
||||
|
||||
|
||||
{{-- DOWNLOAD EXPORT --}}
|
||||
|
||||
@macro('download')
|
||||
export
|
||||
download_export
|
||||
@endmacro
|
||||
|
||||
@task('export', ['on' => 'web'])
|
||||
echo ">>> Dumping database and files..."
|
||||
cd {{ $path }}
|
||||
rm ./storage/app/private/exports/export*
|
||||
{{ $compose }} exec -T app php artisan boboko:export:cleanup < /dev/null
|
||||
{{ $compose }} exec -T app php artisan boboko:export < /dev/null
|
||||
echo ">>> Copying exports to host..."
|
||||
mkdir -p {{ $path }}/storage/app/private/exports/
|
||||
|
||||
{{ $compose }} cp app:/var/www/html/storage/app/private/exports/. {{ $path }}/storage/app/private/exports/
|
||||
@endtask
|
||||
|
||||
@task('download_export', ['on' => 'local'])
|
||||
echo ">>> Downloading exports..."
|
||||
mkdir -p ./storage/app/private/exports
|
||||
|
||||
scp -r chico:{{ $path }}/storage/app/private/exports/* ./storage/app/private/exports/
|
||||
@endtask
|
||||
|
||||
|
||||
{{-- STOIC THUMBS --}}
|
||||
|
||||
@macro('stoic_thumbs')
|
||||
stoic_generate_thumbs
|
||||
@endmacro
|
||||
|
||||
@task('stoic_generate_thumbs', ['on' => 'web'])
|
||||
echo ">>> Generating Stoic thumbnails..."
|
||||
cd {{ $path }}
|
||||
{{ $compose }} exec -T stoic /app/entrypoint.sh run generate_thumbs
|
||||
@endtask
|
||||
Reference in New Issue
Block a user