SSH Task Runner laravel Envoy

Laravel Envoy adalah SSH Task Runner berbasis bahasa PHP yang memiliki banyak fungsi untuk menjalankan Task menggunakan SSH di server. Laravel Envoy menggunakan sintaks blade sehingga lebih mudah di tulis dan di baca dalam membuat task.

sebelum kita menggunakan Laravel Envoy sebaiknya kita harus tahu apa itu yang di maksud dengan SSH Task Runner. dengan SSH Task Runner kita bisa meremote server dan menjalankan perintah - perintah sesuai keinginan kita tanpa kita harus masuk ke server secara manual seperti biasa. kita hanya perlu menuliskan script dan membuat task sesuai dengan keperluan kita.

Misal saat kita ingin menginstall aplikasi di sebuah server, normalnya kita akan masuk ke server dengan menggunakan ssh lalu menginstall satu persatu aplikasi di server tersebut. dengan menggunakan SSH Task runner kita bisa menginstall aplikasi di banyak server sekaligus tanpa kita masuk ke server secara manual.

Laravel Envoy juga bisa digunakan untuk proses Deployment sebuah website ke server dengan membuat task, misal di kombinasikan dengan GIT.

pada gambar di atas adalah perbedaan menggunakan SSH Task Runner dan tidak.

Untuk menginstall Laravel Envoy yang kita butuhkan adalah PHP dan Composer pastikan kita sudah menginstall PHP dan Composer di komputer yang akan kita gunakan. Laravel Envoy bisa di install tanpa menggunakan Laravel artinya Laravel Envoy ini berdiri sendiri tanpa harus berjalan di Laravel.

Sebelum menggunkan Laravel Envoy pastikan sudah membuat SSH Token dan mengupload public token ke server yang ingin di remote supaya kita bisa menjalankan task tanpa masuk menggunakan password. kita bisa menggunakan ssh-keygen untuk menggenerate token dan ssh-copy-id untuk mengupload token ke server.

Pertama siapkan lokasi dimana kita ingin menginstall Laravel Envoy. kemudian jalankan perintah

composer require laravel/envoy --dev

kemudian jalankan perintah “php vendor/bin/envoy init host_server”

Contoh:

php vendor/bin/envoy init 192.168.1.1

makan akan terbentuk file Blade baru dengan nama “Envoy.blade.php”

untuk menjalankan task ketik perintah “php vendor/bin/envoy run nama_task”

Contoh

php vendor/bin/envoy run deploy

Dibawah ini gambar contoh yang saya gunkan untuk proses Deployment aplikasi website

Untuk menjalankan banyak task kita bisa menggunakan @story