Coding4ever’s Blog

Just coding… coding… and coding… because coding should be fun :)

Persiapan Membangun Server CI (Continuous Integration) Di Windows Untuk Platform .NET Bagian #1

| Comments

Continuous Integration, biar gampang nyebutnya kita sebut CI aja ya, yang 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.

Sebenarnya membangun server CI itu gambang, hanya melakukan instalasi dilanjutkan dengan konfigurasi plus menuliskan beberapa skrip sederhana (batch commands) kita sudah bisa membangun server CI. Hanya saja ada beberapa tool/software yang perlu kita ketahui cara penggunaannya agar proses membangun server CInya jadi lebih gampang.

Berikut adalah daftarnya :

  • Git – ini merupakan tool untuk source/version control, kita bisa saja menggunakan version control lainnya seperti svn.
  • TortoiseGit – aplikasi git client berbasis windows, kita bisa saja menggunakan aplikasi git client lainnya.
  • Bonobo Git Server – aplikasi web gratis untuk membangun server repository Git berbasis Windows/IIS
  • NuGet - package manager untuk mempermudah kita menginstall library pihak ketiga
  • NUnit – untuk keperluan testing otomatis
  • MSBuild – untuk keperluan proses build
  • Package Installer – untuk keperluan proses deploy/pembuatan paket installer, kita bisa menggunakan yang gratis seperti Inno Setup atau NSIS

Untuk bagian #1 ini kita bahas terlebih dulu tentang Bonobo Git Server.

Kita sebagai software developer tentu sudah tidak asing lagi dengan namanya GitLab, GitHub dan Bitbucket. Ketiga website ini memberikan layanan untuk menghosting-kan repository git secara online/cloud. Git sendiri merupakan salah satu version control seperti halnya svn.

Dipostingan kali saya tidak akan membahas secara detil apa itu Git, apa bedanya dengan version control lainnya seperti svn, bagaimana cara menginstallnya dan bagaimana cara menggunakannya, sekali lagi tidak. Karena sudah banyak referensi di internet yang membahas masalah ini.

Tapi dipostingan kali ini kita akan membahas solusi jika ingin punya hosting/server sendiri untuk repository Git. Setelah mencoba beberapa software gratis untuk membuat server repository Git di lingkungan Windows, akhirnya pilihan saya jatuh ke Bonobo Git Server. Bonobo Git Server adalah layanan repository Git berbasis web, selain gratis Bonobo Git Server juga bersifat open source dibuat menggunakan ASP.NET MVC. Jadi untuk menjalankan Bonobo Git Server dibutuhkan web server IIS. Bonobo Git Server sampai saat ini baru mendukung dua jenis database yaitu SQLite dan SQL Server. Untuk petunjuk instalasinya bisa Anda cek di sini.

Tool yang digunakan

Berikut adalah tool yang digunakan untuk uji coba Bonobo Git Server

  • Bonobo Git Server - aplikasi web gratis untuk membangun server repository Git berbasis Windows/IIS
  • Git – tool untuk source/version control
  • TortoiseGit – aplikasi git klien berbasis windows

Membuat Repository

Setelah instalasi Bonobo Git Server, kita bisa langsung mengakses alamat Bonobo Git Server, sebagai contoh alamat/url yang saya gunakan adalah http://192.168.56.2/git-server

Untuk Username dan Password defaultnya adalah admin. Setelah login berhasil kita bisa melakukan beberapa konfigurasi seperti mengganti password default, membuat team, user dan repository.

Untuk membuat repository klik link Create new repository, setelah itu lengkapi input halaman New Repository

Pada saat membuat repository selain menentukan nama, group dan deskripsi repository, kita juga perlu mengatur role, user dan team (optional) yang berhak mengakses repository. Ada tiga jenis role yang disediakan oleh Bonobo Git Server yaitu :

  • Anonymous - setiap user bisa melihat, melakukan pull atau clone
  • Contributors - setiap user bisa melihat, melakukan push, pull atau clone
  • Administrators – akses penuh, termasuk menghapus repository

Terakhir klik tombol Create

Kemudian klik link Go to repository : Northwind

Perhatikan keterangan General Url, link tersebut akan kita gunakan pada saat melakukan proses push.

Push Source Code ke Server Repository Git

Sebelum menyimpan source code ke repository Git, ada beberapa hal atau langkah-langkah yang perlu kita lakukan yaitu :

Langkah 1: Membuat repository lokal – Git termasuk dalam kategori Distributed Version Control System, jadi selain mempunyai repository pusat/server juga mempunyai repository lokal. Bisa jadi hal ini yang menjadi salah satu daya tarik git, yang memungkinkan kita untuk melakukan commit tanpa harus terkoneksi ke Server Repository Git. Untuk membuat repository lokal, tinggal klik kanan folder project (folder kerja) -> Git Create repository here…

Non aktifkan pilihan Make it Bare … kemudian pilih Ok

Langkah 2: Menambahkan file .gitignore - Dalam mengerjakan project, ada file-file yang ada di folder kerja, tapi tidak kita masukkan ke repository. Misalnya file hasil kompilasi, setting IDE, dan sebagainya. File dan folder hasil generate ini biasanya kita daftarkan di ignore list, supaya tidak ikut dicommit ke repository.

Untuk contoh file .gitignore, bisa Anda cek disini

Langkah 3: Add – Menambahkan perubahan dalam folder kerja ke staging area (index) repository lokal, sebelum melakukan proses commit. Caranya klik kanan folder kerja -> Git Add..

Langkah 4: Commit – Untuk menyimpan perubahan (staging area) ke repository lokal. Caranya klik kanan folder kerja -> Git Commit -> ..

Langkah 4: Push – Untuk mengirim/menguplod perubahan repository lokal ke server/remote repository. Caranya klik kanan folder kerja -> Git Push..

Sebelum melakukan proses push, kita harus mendaftarkan terlebih dulu alamat dari repository server dengan mengklik tombol Manage.

Link URL : http://192.168.56.2/git-server/Northwind.git di atas kita dapatkan pada saat membuat repository. Setelah klik tombol Ok, kita akan kembali ke dialog push …

Langsung saja klik tombol Ok, jika kita belum pernah melakukan push/clone biasanya akan diminta untuk menginputkan user dan password login Bonobo Git Server

Yuph, push source code berhasil :-)

Mengecek Hasil Push Source Code

Akses link server Bonobo Git Server, kemudian login.

Kemudian klik link repository

Lanjutkan dengan mengklik link Commits

Setelah itu akan tampil histori commit

Untuk melihat detil masing-masing commit, kita tinggal klik link komentar seperti gambar di atas.

Selamat Mencoba :-)

Comments