giovanniciriello/laravel-remote

Execute Artisan commands on remote servers

Fund package maintenance!
spatie

1.0.0 2021-03-10 09:43 UTC

This package is not auto-updated.

Last update: 2024-04-06 22:39:25 UTC


README

Fork for php version below 8.0

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

This package provides a command to execute Artisan command on a remote server.

Here's an example that will clear the cache on the remote server.

php artisan remote cache:clear

Installation

You can install the package via composer:

composer require giovanniciriello/laravel-remote --ignore-platform-reqs

You can publish the config file with:

php artisan vendor:publish --provider="Spatie\Remote\RemoteServiceProvider" --tag="remote-config"

This is the contents of the published config file:

return [
    /*
     * This host will be used if none is specified
     * when executing the `remote` command.
     */
    'default_host' => 'default',

    /*
     * Here you can define the hosts where the commands should be executed.
     */
    'hosts' => [
        'default' => [
            'host' => env('REMOTE_HOST'),

            'port' => env('REMOTE_PORT', 22),

            'user' => env('REMOTE_USER'),

            /*
             * The package will cd to the given path before executing the given command.
             */
            'path' => env('REMOTE_PATH'),
        ]
    ],
];

Usage

To execute a command on the remote server use the remote Artisan command. You can pass any artisan command that you would like to execute on the server.

Here's an example where we clear the cache.

php artisan remote cache:clear

Executing raw commands

If you want to execute a bash command, use the --raw option.

Here we will get a list of files on the server.

php artisan remote ls --raw

Using another host

You can define hosts in the config file. By default, the default host is used. To execute a command on another host use the --host option.

php artisan remote cache:clear --host=my-other-host

Using options in remote commands

If you need to use flags or options in the command you're trying to execue, you can wrap the entire command in quotes:

php artisan remote --raw "ls -a"

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.