Skip to content

Instantly share code, notes, and snippets.

@mabasic
Last active June 5, 2023 05:01
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save mabasic/a43b7ac80ee08c04f594 to your computer and use it in GitHub Desktop.
Save mabasic/a43b7ac80ee08c04f594 to your computer and use it in GitHub Desktop.
Envoy common features with Slack notifications. See http://laravel.com/docs/5.0/envoy for more info.
@servers(['web' => 'username@domain.com -p 1234'])
@setup
$project_name = 'Project Name';
$project_url = 'http://project-domain.com/';
$project_root = '/www/project/web';
$slack_hook = 'your-slack-hook-url';
$slack_channel = '#channel';
@endsetup
@task('put_app_up', ['on' => 'web'])
cd {{ $project_root }}
php artisan up
@endtask
@task('put_app_down', ['on' => 'web'])
cd {{ $project_root }}
php artisan down
@endtask
@task('pull_latest_changes', ['on' => 'web'])
cd {{ $project_root }}
git pull origin
@endtask
@task('install_dependencies', ['on' => 'web'])
cd {{ $project_root }}
composer install --prefer-source --no-interaction --no-dev
@endtask
@task('clear_cache', ['on' => 'web'])
cd {{ $project_root }}
php artisan cache:clear
@endtask
@macro('update')
put_app_down
pull_latest_changes
install_dependencies
put_app_up
@endmacro
@after
@slack($slack_hook, $slack_channel, "Envoy task $task ran on <$project_url|[$project_name]>")
@endafter
@mabasic
Copy link
Author

mabasic commented Jan 29, 2017

@bigoper Maybe change "Envoy task $task ran on <$project_url|[$project_name]>" to "Envoy task {$task} ran on <{$project_url}|[{$project_name}]>".

Hope it helps!

@Ryouzanki
Copy link

Hello, I have tried with {$task} and it does not work either. I really cant find what's wrong...

@jminkler
Copy link

@finished worked for us

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment