Skip to content

Instantly share code, notes, and snippets.

@bayareawebpro
Created May 28, 2018 23:49
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bayareawebpro/10c74fc68445e3107f53e01a06d52bc2 to your computer and use it in GitHub Desktop.
Save bayareawebpro/10c74fc68445e3107f53e01a06d52bc2 to your computer and use it in GitHub Desktop.
Laravel Deployer Config
<?php
return [
/*
|--------------------------------------------------------------------------
| Default deployment strategy
|--------------------------------------------------------------------------
|
| This option defines which deployment strategy to use by default on all
| of your hosts. Laravel Deployer provides some strategies out-of-box
| for you to choose from explained in detail in the documentation.
|
| Supported: 'basic', 'firstdeploy', 'local', 'pull'.
|
*/
'default' => 'basic',
/*
|--------------------------------------------------------------------------
| Custom deployment strategies
|--------------------------------------------------------------------------
|
| Here, you can easily set up new custom strategies as a list of tasks.
| Any key of this array are supported in the `default` option above.
| Any key matching Laravel Deployer's strategies overrides them.
|
*/
'strategies' => [
//
],
/*
|--------------------------------------------------------------------------
| Hooks
|--------------------------------------------------------------------------
|
| Hooks let you customize your deployments conveniently by pushing tasks
| into strategic places of your deployment flow. Each of the official
| strategies invoke hooks in different ways to implement their logic.
|
*/
'hooks' => [
// Right before we start deploying.
'start' => [
],
// Code and composer vendors are ready but nothing is built.
'build' => [
//'npm:install',
//'npm:production',
],
// Deployment is done but not live yet (before symlink)
'ready' => [
'artisan:storage:link',
'artisan:view:clear',
'artisan:cache:clear',
'artisan:config:cache',
'artisan:optimize',
'artisan:migrate',
],
// Deployment is done and live
'done' => [
//
],
// Deployment succeeded.
'success' => [
//
],
// Deployment failed.
'fail' => [
//
],
],
/*
|--------------------------------------------------------------------------
| Deployment options
|--------------------------------------------------------------------------
|
| Options follow a simple key/value structure and are used within tasks
| to make them more configurable and reusable. You can use options to
| configure existing tasks or to use whithin your own custom tasks.
|
*/
'options' => [
'application' => env('APP_NAME', 'Laravel'),
'repository' => 'https://user@bitbucket.org/user/repo.git',
'forwardAgent' => true,
'multiplexing' => true,
'shared_dirs' => ["storage"],
'shared_files' => [".env"],
'use_atomic_symlink' => true,
'git_tty' => true,
'writable_dirs' => [
"bootstrap/cache",
"storage",
"storage/app",
"storage/framework",
"storage/logs"
],
'sshOptions' => [
'UserKnownHostsFile' => '/dev/null',
'StrictHostKeyChecking' => 'no',
],
],
/*
|--------------------------------------------------------------------------
| Hosts
|--------------------------------------------------------------------------
|
| Here, you can define any domain or subdomain you want to deploy to.
| You can provide them with roles and stages to filter them during
| deployment. Read more about how to configure them in the docs.
|
*/
'hosts' => [
'mysite.com' => [
'stage' => 'production',
'user' => 'root',
'http_user' => 'root',
'deploy_path' => '/home/root/webapps/deployer_testing',
'identityFile' => '~/.ssh/key',
'bin/git' => '/usr/bin/git',
'bin/php' => '/usr/local/bin/php71',
'bin/composer' => '/usr/local/bin/php71 /home/root/composer.phar', //php binary needed in path
],
],
/*
|--------------------------------------------------------------------------
| Localhost
|--------------------------------------------------------------------------
|
| This localhost option give you the ability to deploy directly on your
| local machine, without needing any SSH connection. You can use the
| same configurations used by hosts to configure your localhost.
|
*/
'localhost' => [
// 'deploy_path' => '/home/root/webapps/deployer_testing_production',
// 'user' => 'root',
],
/*
|--------------------------------------------------------------------------
| Include additional Deployer recipes
|--------------------------------------------------------------------------
|
| Here, you can add any third party recipes to provide additional tasks,
| options and strategies. Therefore, it also allows you to create and
| include your own recipes to define more complex deployment flows.
|
*/
'include' => [
//
],
/*
|--------------------------------------------------------------------------
| Use a custom Deployer file
|--------------------------------------------------------------------------
|
| If you know what you are doing and want to take complete control over
| Deployer's file, you can provide its path here. Note that, without
| this configuration file, the root's deployer file will be used.
|
*/
'custom_deployer_file' => false,
];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment