Please note the project has now been abandoned and is not actively maintained anymore
GitPack aims at making git-based deployments to AWS Lambda for Laravel applications. You get given a git remote, so you are a simple git push
away from having your Laravel application on Lambda.
The idea is you register to GitPack, add your app, set your AWS user key and secret, set any env variable that the app may need. Finally you get a git remote and you can git push to it and your app will be deployed.
The idea was that by using Spatie's SSH package, together with the Laravel pipelines architecture, a set of scripts get executed on a remote git server, before having the deployment completed.
GitPack also uses Bref and Serverless under the hood to complete the deployment.
Finally, the git server runs Gitolite to manage the different git remotes and user permissions
- PHP 8.0: on macOS you can install it via Homebrew with
brew install php@8.0
- Composer v2: check the Composer website for instructions
- Postgres v13: on macOS you can install it via Homebrew with
brew install postgres@13
- Node v14: you can install it using nvm via
nvm install 14.17.1
- Yarn: you can install it via
npm i -g yarn
composer install
yarn
php artisan migrate --seed
php artisan serve
Some handy composer scripts are available to help with code quality:
composer run-script check-style
: lint PHP files using PHP CS Fixer, and blade files using TLintcomposer run-script stan
: runs static analysis on PHP files using Psalm and its Laravel plugincomposer run-script test
: runs unit and feature tests using PHPUnit and Laravel parallel testing feature via Paratestcomposer run-script fix-style
: fix PHP files style via PHP CS Fixercomposer run-script ci
: runs thecheck-style
,stan
, andtest
scripts sequentially
Additionally CI is run using GitHub Actions