Rabu, 05 September 2018

Tutorial CI (Continuous-Integration)

Tutorial CI (Continuous-Integration)


  ASSALAMU'ALAIKUM  Wr.Wb

A.PENDAULUAN
        Bertemu lagi dengan saya.Kali ini saya akan membahas tentang CI ( Continuous Integration ) atau bisa disebut juga integrasi berkelanjutan.

B.LATAR BELAKANG
       Ingin mengetahui tentang CI dan Fungsinya untuk apa.

C.MAKSUD DAN TUJUAN
      Agar kita bisa memahaminya dan mengetahui fungsi dari CI dan Pengertiannya.

D.PEMBAHASAN
     Continuous Integration, untuk selanjutnya kita sebut CI saja, merupakan salah satu kegiatan untuk meningkatkan produktivitas dalam pengembangan aplikasi di mana seluruh hasil kerja (source code) dari masing-masing developer digabungkan (push) ke dalam satu wadah (server repository source code). Bisa sekali sehari, bisa juga beberapa kali dalam sehari. Setiap penggabungan source code akan diverifikasi secara otomatis oleh server CI, yang memungkinkan tim untuk mendeteksi secara dini jika ada masalah/konflik/error pada saat penggabungan source code.
Setelah penggabungan hasil kerja (source code) selesai, server CI otomatis akan melakukan proses build untuk memastikan tidak ada kode yang merusak/membuat proses build gagal. Jadi semakin cepat kegagalan build ini diketahui semakin cepat pula kita meresponnya. Dan jika proses build-nya berhasil akan dilanjutkan dengan proses deploy. Selain itu server CI juga bisa dikonfigurasi untuk melakukan proses lain seperti menjalankan unit testing, integration testing dan testing otomatis lainya
Sebagai .NET developer kita sudah biasa melakukan proses build dengan menekan tombol F5 (Start Debugging) atau Ctrl+F5 (Start Without Debugging) baik pada waktu development atau perbaikan bug. Sedangkan untuk contoh deploy anggap saja seperti kita membuat paket installer yang akan didistribusikan ke komputer/server klien. Nah dengan menggunakan CI semua proses ini bisa dilakukan secara otomatis dan terpusat, sehingga kita mempunyai arsip hasil build dan deploy dari waktu ke waktu. Jadi untuk mencari file setup/paket installer terakhir enggak usah lagi nanya ke developer karena bisa langsung kita download dari server CI-nya.
Proses build ini selain bisa dibuat otomatis setiap kita mem-push source code ke server repository bisa juga kita buatkan jadwalnya, misal pas jam makan siang atau jam pulang kantor. Jadi di kantor dibuat kesepakatan/aturan klo ada yang merusak build pas jam makan siang enggak boleh makan siang sampai proses build-nya berhasil atau yang merusak build pas jam pulang kantor enggak boleh pulang sampai proses build-nya berhasil :-D
Jadi dengan menggunakan CI, alur kerja kita lebih kurang seperti berikut :
  • Menulis kode, build dan tes di komputer masing-masing (seperti biasa).
  • Commit dan push kode ke server repository/source control seperti GIT atau SVN. Di masing-masing repository kita pasang hook script untuk memanggil job/project yang sudah kita buat dan konfigurasi di server CI.
  • Server CI akan meng-clone repository kemudian melakukan build, menjalankan tes tes otomatis (jika ada) dan deploy secara otomatis. Jika buildnya gagal ulangi lagi langkah pertama
E.HASIL YANG DIDAPAT
          Kita jadi mengetahui apa yang dimaksud dengan CI.

F.KESIMPULAN
        Kesimpulannya yaitu CI itu integrasi berkelanjutan yang berfungsi sebagai pencegah masalah integrasi.

G.PENUTUP
   Sekian dari saya semoga bermanfaat untuk kita semua.


Wassalamu'alaikum Wr.Wb

Tidak ada komentar:

Posting Komentar