bitcodesa / deployment-script
The package add artisan command that all user to do collected artisan or terminal command at once.
Requires
- php: ^8.1
- illuminate/contracts: ^10.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.8
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.8
- pestphp/pest: ^2.20
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
This package is auto-updated.
Last update: 2024-10-29 02:27:40 UTC
README
Package Description
This package provides a convenient way to run groups of Artisan commands through a pre-defined configuration file. This can be useful for automating tasks such as deployment, database maintenance, and testing.
Features
- Run groups of Artisan commands with a single command
- Override command options in the configuration file
- Pass values to artisan commands like
--force
. - Run command like
git pull
.
Example
For example, to run the following commands:
php artisan migrate:fresh php artisan cache:clear php artisan route:cache
return [ 'commands' => [ [ "type" => "artisan", "command" => "migrate:fresh" ], [ "type" => "artisan", "command" => "cache:clear" ], [ "type" => "artisan", "command" => "route:cache" ], ], ];
Then, you would run the following command:
php artisan deploy
This package is a valuable tool for any Laravel developer who needs to automate tasks or run groups of Artisan commands on a regular basis.
Installation
You can install the package via composer:
composer require bitcodesa/deployment-script
You can publish the config file with:
php artisan vendor:publish --tag="deployment-script-config"
This is the contents of the published config file:
return [ "commands" => [ [ "type" => "console", "command" => "git pull" ], [ "type" => "console", "command" => "composer install --optimize-autoloader", ], [ "type" => "artisan", "command" => "migrate", "values" => [ "--force" => true ] ], [ "type" => "artisan", "command" => "cache:clear", ], ] ];
Allow used in production
To allow used of deploy script in the production env you should allow it in the config
config/deployment-script.php
[ // config/deployment-script.php "allow_in_production" => true; ]
Note: By default the script is not allowed in production.
Production Commands:
you can specify commands to run only in the production env: put the array inside config file
config/deployment-script.php
then specify the key name of this array into var production
for example:
[ // config/deployment-script.php "production_commands" => [ [ "type" => "artisan", "command" => "migrate", "values" => [ "--force" => true ] ], [ "type" => "artisan", "command" => "cache:clear", ], ] "production" => "production_commands"; ];
Note: if not specified the default commands array well be used.
Usage
php artisan deploy
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.