{"id":18648255,"url":"https://github.com/capistrano/laravel","last_synced_at":"2025-04-12T17:40:23.819Z","repository":{"id":12132337,"uuid":"14724107","full_name":"capistrano/laravel","owner":"capistrano","description":"Gem for deploying Laravel projects with capistrano v3.*","archived":false,"fork":false,"pushed_at":"2023-11-28T02:44:26.000Z","size":51,"stargazers_count":220,"open_issues_count":8,"forks_count":67,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-03T18:15:40.916Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/capistrano.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-11-26T17:34:03.000Z","updated_at":"2025-03-15T20:58:53.000Z","dependencies_parsed_at":"2024-06-19T01:26:33.794Z","dependency_job_id":null,"html_url":"https://github.com/capistrano/laravel","commit_stats":{"total_commits":36,"total_committers":7,"mean_commits":5.142857142857143,"dds":0.5833333333333333,"last_synced_commit":"0e7f2aadb2cbc449b0623056d0f6840403017aec"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/capistrano%2Flaravel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/capistrano%2Flaravel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/capistrano%2Flaravel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/capistrano%2Flaravel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/capistrano","download_url":"https://codeload.github.com/capistrano/laravel/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248607295,"owners_count":21132511,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T06:29:51.881Z","updated_at":"2025-04-12T17:40:23.776Z","avatar_url":"https://github.com/capistrano.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Capistrano::Laravel\n\nDeploy Laravel applications with Capistrano v3.*\n\n## Installation\n\nIf managing your Capistrano deploy as a ruby project, add this line to your\napplication's Gemfile:\n\n```ruby\ngem 'capistrano', '~\u003e 3.0.0'\ngem 'capistrano-laravel'\n```\n\nAnd then execute:\n\n```shell\nbundle\n```\n\nOr install it yourself as:\n\n```shell\ngem install capistrano-laravel\n```\n\n## Setting up Capistrano\n\nAfter installing Capistrano, you can use it to initialize a skeleton\nconfiguration. To setup Capistrano, please follow the documentation\nprovided on their website:\n\nhttp://capistranorb.com/documentation/getting-started/preparing-your-application/\n\nThis will generate the following files:\n\n```\n.\n├── Capfile                # Used to manage Capistrano and its dependencies\n├── config\n│   ├── deploy\n│   │   ├── production.rb  # Configuration for production environment\n│   │   └── staging.rb     # Configuration for staging environment\n│   └── deploy.rb          # Common configuration for all environments\n└── lib\n    └── capistrano\n        └── tasks          # Customized Capistrano tasks for your project\n```\n\n## Usage\n\nRequire the module in your `Capfile`:\n\n```ruby\nrequire 'capistrano/laravel'\n```\n\n### Configuration\n\nThe gem makes the following configuration variables available (shown with defaults).\n\n```ruby\n# Which roles to consider as laravel roles\nset :laravel_roles, :all\n\n# The artisan flags to include on artisan commands by default\nset :laravel_artisan_flags, \"--env=#{fetch(:stage)}\"\n\n# Which roles to use for running migrations\nset :laravel_migration_roles, :all\n\n# The artisan flags to include on artisan commands by default when running migrations\nset :laravel_migration_artisan_flags, \"--force --env=#{fetch(:stage)}\"\n\n# The version of laravel being deployed\nset :laravel_version, 5.3\n\n# Whether to upload the dotenv file on deploy\nset :laravel_upload_dotenv_file_on_deploy, true\n\n# Which dotenv file to transfer to the server\nset :laravel_dotenv_file, './.env'\n\n# The user that the server is running under (used for ACLs)\nset :laravel_server_user, 'www-data'\n\n# Ensure the dirs in :linked_dirs exist?\nset :laravel_ensure_linked_dirs_exist, true\n\n# Link the directores in laravel_linked_dirs?\nset :laravel_set_linked_dirs, true\n\n# Linked directories for a standard Laravel 4 application\nset :laravel_4_linked_dirs, [\n  'app/storage'\n]\n\n# Linked directories for a standard Laravel 5 application\nset :laravel_5_linked_dirs, [\n  'storage'\n]\n\n# Ensure the paths in :file_permissions_paths exist?\nset :laravel_ensure_acl_paths_exist, true\n\n# Set ACLs for the paths in laravel_acl_paths?\nset :laravel_set_acl_paths, true\n\n# Paths that should have ACLs set for a standard Laravel 4 application\nset :laravel_4_acl_paths, [\n  'app/storage',\n  'app/storage/public',\n  'app/storage/cache',\n  'app/storage/logs',\n  'app/storage/meta',\n  'app/storage/sessions',\n  'app/storage/views'\n]\n\n# Paths that should have ACLs set for a standard Laravel 5 application\nset :laravel_5_acl_paths, [\n  'bootstrap/cache',\n  'storage',\n  'storage/app',\n  'storage/app/public',\n  'storage/framework',\n  'storage/framework/cache',\n  'storage/framework/sessions',\n  'storage/framework/views',\n  'storage/logs'\n]\n```\n\n### Tasks\n\nThe following tasks are added to your deploy automagically when adding\ncapistrano/laravel to your deploy.\n\n```ruby\nbefore 'deploy:starting', 'laravel:resolve_linked_dirs'\nbefore 'deploy:starting', 'laravel:resolve_acl_paths'\nafter  'deploy:starting', 'laravel:ensure_linked_dirs_exist'\nbefore 'deploy:updating', 'laravel:ensure_acl_paths_exist'\nbefore 'deploy:updated',  'deploy:set_permissions:acl'\nbefore 'deploy:updated',  'laravel:upload_dotenv_file'\nafter  'composer:run',    'laravel:storage_link'\nafter  'composer:run',    'laravel:optimize'\n```\n\n#### Task Descriptions\n\n```ruby\n# Determine which folders, if any, to use for linked directories.\ninvoke 'laravel:resolve_linked_dirs'\n\n# Determine which paths, if any, to have ACL permissions set.\ninvoke 'laravel:resolve_acl_paths'\n\n# Ensure that linked dirs exist.\ninvoke 'laravel:ensure_linked_dirs_exist'\n\n# Ensure that ACL paths exist.\ninvoke 'laravel:ensure_acl_paths_exist'\n\n# Upload dotenv file for release.\ninvoke 'laravel:upload_dotenv_file'\n\n# Execute a provided artisan command.\n# Replace :command_name with the command to execute\ninvoke 'laravel:artisan[:command_name]'\n\n# Create a cache file for faster configuration loading\ninvoke 'laravel:config_cache'\n\n# Create a route cache file for faster route registration\ninvoke 'laravel:route_cache'\n\n# Optimize the framework for better performance.\ninvoke 'laravel:optimize'\n\n# Create a symbolic link from \"public/storage\" to \"storage/app/public\"\ninvoke 'laravel:storage_link'\n\n# Run the database migrations.\ninvoke 'laravel:migrate'\n\n# Rollback the last database migration.\ninvoke 'laravel:migrate_rollback'\n```\n\n## Development\n\nAfter checking out the repo, run `bin/setup` to install dependencies. Then, run\n`rake spec` to run the tests. You can also run `bin/console` for an interactive\nprompt that will allow you to experiment.\n\nTo install this gem onto your local machine, run `bundle exec rake install`. To\nrelease a new version, update the version number in `version.rb`, and then run\n`bundle exec rake release`, which will create a git tag for the version, push\ngit commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/capistrano/laravel.\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcapistrano%2Flaravel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcapistrano%2Flaravel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcapistrano%2Flaravel/lists"}