Using gulp and gulp-nodemon to Automate Node.js Task

Nodejs , Posted at : Oct/15/2016  
1118 Views   0 Comments

Gulp merupakan package yang digunakan untuk melakukan automatisasi task-task seperti task untuk kompilasi file, copy file, dan lain-lain. Task tersebut dapat di implementasikan di Node.js. Package gulp lainnya yang dapat digunakan untuk automatisasi task yaitu gulp-nodemon yang berfungsi untuk memonitoring perubahan-perubahan pada source file seperti file javascript, file html, file jade hbs atau ejs, sehingga server node.js dapat melakukan restart secara otomatis tanpa harus dijalankan secara manual melalui node dengan cara stop dan start secara berulang setiap kali terdapat perubahan source file.

Ikuti langkah-langkah berikut ini untuk menggunakan gulp dan gulp-nodemon.

1. Install package gulp secara global : npm install –g gulp

2. Install package gulp kedalam project node.js : npm install –save-dev gulp

3. Install package gulp-nodemon kedalam project : npm install –save-dev gulp-nodemon

4. Tambahkan file gulpfile.js kedalam project dan ketikkan kode berikut ini :

Untuk membuat task dalam gulp cukup akses prosedur task dengan memberikan nama task dan menambahkan callback functionnya. Task dalam gulp dapat dijalankan secara berurutan atau satu task memiliki dependensi terhadap satu task lainnya. Pada file gulp diatas terdapat tiga task dimana task terakhir yang akan mengeksekusi task pertama dan task kedua. Tentunya kita dapat menjalankan salah satu task saja.

5. Untuk menjalankan task didalam gulp dilakukan dengan memanggil gulp nama task nya melalui command prompt. Berikut ini hasil dari pemanggilan gulp task diatas :

Tentunya task yang dibuat diatas tidak melakukan sesuatu yang berguna, hanya menunjukkan dasar penggunaan task di gulp. Contoh task yang akan dibuat selanjutnya akan memonitoring perubahan terhadap file yang memiliki ekstensi hbs, ejs, jade, css, html, dan js. Apabila terdapat perubahan pada file-file tersebut maka server node.js akan melakukan restart secara otomatis. Berikut ini adalah langkah-langkahnya :

1. Ubah kode yang terdapat dalam file gulpfile.js menjadi seperti berikut ini:

Variabel options digunakan untuk menentukan file utama node.js melalui properti script, kemudian extension file yang akan di monitoring melalui properti ext, dan delay waktu untuk melakukan restart server node.js setiap kali ada perubahan file yang ditentukan melalui properti delayTime dalam satuan detik. Task yang dibuat diberikan nama ‘start’ dan memiliki sebuah function yang akan dieksekusi setiap kali task tersebut dijalankan. Function yang mengembalikan nodemon memiliki event-event seperti ‘restart’ dan ‘crash’, sehingga kita dapat membuat sebuah notifikasi yang ditampilkan di console setiap kali event tersebut terjadi. Callback function setiap event memiliki sebuah argumen yang dapat digunakan untuk mengetahui file yang berubah.

2. Jalankan task tersebut dengan memanggil “gulp runTask”. Lakukan perubahan-perubahan terhadap file-file yang sudah ditentukan extensi filenya agar dapat dimonitoring. Hasilnya dapat dilihat pada gambar berikut ini:

Selamat mencoba :)


[Comments]

[Write your comment]
Name (required)
Email (required-will not published)
 
Comment

FCVD
Input code above below (Case Sensitive) :
About Me 
Rully Yulian MF
Rully Yulian Muhammad Firmansyah | Microsoft Certified Trainer | IT Trainer at Native Enterprise | IT Consultant | Software Developer | MCAD | MCPD | MOS | Bandung, West Java, Indonesia.
[Read More...]
Top Download 
Mapping Hak Akses User Pada MenuStrip Sampai Control Button : Downloaded 6083 times  
Bagaimana caranya menginstal database ketika deploying sebuah aplikasi? : Downloaded 4689 times  
Simple Voice Engine Application With Sound Player Class... : Downloaded 3554 times  
Change Group,Sort Order, Filtering By Date in Crystal Reports : Downloaded 3324 times  
WinForms DataGrid Paging With SqlDataAdapter : Downloaded 2706 times  
Links 
Certifications 
MOS 2007
MCT
MCPD
MCTS
MCAD.NET
ASP.NET Brainbench
Native Enterprise 
Follow Me 
Facebook   LinkedIn   Twitter
Syndication 
Hosted By 
Native Enterprise News 
© Copyright 2006-2016   Rully Yulian MF   All rights reserved.