Download the PHP package orphans/git-deploy-laravel without Composer
On this page you can find all versions of the php package orphans/git-deploy-laravel. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download orphans/git-deploy-laravel
More information about orphans/git-deploy-laravel
Files in orphans/git-deploy-laravel
Package git-deploy-laravel
Short Description Helps automate the deployment of projects onto servers by utilising Git web hooks.
License MIT
Informations about the package git-deploy-laravel
Deployment of Laravel projects using Git webhooks
git-deploy-laravel allows for automated deployment using webhook requests from your repository's server, and automatically pulls project code using the local Git binary.
This should work out-of-the-box with Laravel 5.x using with webhooks from GitHub and GitLab servers.
This is an internal tool to help with our common workflow pattern but please feel free to borrow, change and improve.
Installation
Step 1
Add the following to your composer.json
file then update your composer as normal:
{
"require" : {
"orphans/git-deploy-laravel" : "dev-master"
}
}
Or run:
composer require orphans/git-deploy-laravel
Step 2
Add the /git-deploy route to CSRF exceptions so your repo's host can send messages to your project.
In file in app/Http/Middleware/VerifyCsrfToken.php
add:
protected $except = [
'git-deploy',
];
Step 3 Optional
In case you need additional action after a successful commit, you can add you own Event Listener. For example you can write your own update script to run migrations etc.
1) Create a Listener to perform action when a git deployment is done.
Open the App/Listeners
directory (or create it if it doesn't exist). Now create a new file and call it GitDeployedListener.php
. Paste in this code:
As you can see, it's a normal event listener. You might notice that the listener implements ShouldQueue
— it's useful because our app must respond fast. If you want some long-running stuff in your event listener, you need to configure a queue.
2) Now we add this listener to /App/Providers/EventServiceProvider.php
like any other event listener:
Usage
Add a webhook for http://your.website.url/git-deploy to your project in GitHub/GitLab and this package will take care of the rest. The webhook should fire on push-events.
Your website will automatically receive POST messages from the repo manager and perform a Git pull.
Configuration
In most cases the package will find the correct Git repository and Git executable but we advise publishing our config anyway because it will let you enable extra security options and email notifications.
To add custom configuration run:
php artisan vendor:publish --provider="Orphans\GitDeploy\GitDeployServiceProvider"
Then edit /config/gitdeploy.php
to suit your needs.
Future Plans
- Email report on code conflicts that prevent a pull
- Support for performing
composer install
after deployment - Support for restarting laravel queues after deployment with
artisan queue:restart
- Support for running custom artisan commands after successful pulls
All versions of git-deploy-laravel with dependencies
illuminate/config Version ~5|^6.0|^7.0|^8.0
illuminate/support Version ~5|^6.0|^7.0|^8.0