Jenkins


Apa itu Jenkins???

Jenkins merupakan tools untuk mengotomatisasi proses pembuatan, pengujian, dan penerapan software.

Jika kita menilik atau melihat langsung dari situs resminya, Jenkins merupakan sebuah tool yang mampu membantu melakukan otomatisasi proses pembuatan, pengujian, dan penerapan software, proses ini biasanya disebut dengan CI/CD.

Mengutip dari webiste cloudbees, Jenkins awalnya dikembangkan untuk melakukan Continuous Integration (CI), saat ini Jenkins mengatur seluruh jalur pengiriman software – yang disebut Continuous Delivery (CD). Bagi beberapa organisasi, otomasi diperluas lebih jauh lagi, hingga Continuous Deployment (CD). Continuous Delivery (CD), ditambah dengan budaya DevOps, untuk mempercepat pengiriman software secara signifikan. Jenkins adalah solusi yang paling banyak diadopsi untuk Continuous Delivery (CD), berkat ekstensibilitasnya dan komunitas yang dinamis serta aktif. Komunitas Jenkins menawarkan lebih dari 1.700 plugin yang memungkinkan Jenkins berintegrasi dengan hampir semua alat, membuat Jenkins menjadi solusi terbaik untuk proses Continuous Delivery (CD). Jenkins terus berkembang sebagai solusi dominan untuk otomatisasi proses perangkat lunak, integrasi berkelanjutan, dan pengiriman berkelanjutan.

Jenkins ini bersifat open source. Jenkins ini juga sudah menyediakan ratusan plugin yang sangat membantu dalam mengimplementasikan alur kerja CI/CD, yang disebut pipeline.

Jenkins dapat diinstall melalui paket sistem asli, Docker, atau bahkan dijalankan secara mandiri oleh mesin apa pun yang menginstal Java Runtime Environment (JRE).

Persyaratan

Setelah sedikit mengenal dengan Jenkins, kita lanjut ke tahap instalasi saja, kali ini kita akan melakukan instalasi di sistem operasi Linux Ubuntu. Sebelum itu berikut beberapa persyaratan yang diperlukan sebelum melakukan instalasi Jenkins.

Persyaratan hardware minimum:

  1. RAM 256 MB
  2. Ruang drive 1 GB (walaupun 10 GB adalah jumlah minimum yang disarankan jika menjalankan Jenkins sebagai wadah Docker)

Konfigurasi perangkat keras yang disarankan untuk tim dengan skala kecil :

  1. RAM 4GB +
  2. 50 GB + ruang drive

Software yang diperlukan:

  1. Jawa 11, 17, atau 21
  2. Docker (untuk menginstalasinya gunakan link ini)

Instalasi

Berikut langkah – langkah untuk menginstall Jenkins :

Cek dahulu apakah Java sudah terinstal pada sistem operasi atau belum, dengan mengetikan perintah :

java --version

Jika Java belum terinstal, install dengan menggunakan perintah :

sudo apt install default-jdk

Selanjutnya masukan perintah dibawah ini, untuk mengunduh kunci GPG (GNU Privacy Guard) terbaru dari server Jenkins dan menyimpannya di direktori /usr/share/keyrings dengan nama file jenkins-keyring.asc.

curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee \
  /usr/share/keyrings/jenkins-keyring.asc > /dev/null

Selanjutkan masukan perintah dibawah ini untuk menambahkan repository Jenkins ke daftar sumber paket (sources.list) pada sistem Debian/Ubuntu. Ini memungkinkan Anda untuk menginstal Jenkins dan menerima pembaruan dari repositori Jenkins.

echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list > /dev/null


Masuk ke langkah selanjutnya, masukan perintah dibawah ini untuk menginstal Jenkins pada sistem Debian/Ubuntu :

sudo apt update
sudo apt install jenkins

Setelah proses instalasi selesai, buka Jenkins dengan menggunakan Web Browser dengan URL : http://localhost:8080/, maka tampilannya akan seperti dibawah ini.

Akan tertampil tampilan Getting Started seperti diatas, yang meminta kita untuk memasukan Administrator Password terlebih dahulu. Jadi Jenkins baru bisa digunakan setelah kita memasukan Administrator Password yang ada pada direktori /var/lib/jenkins/secrets/initialAdminPassword.

Untuk mendapatkan Administrator Password masukan perintah dibawah ini :

cat /var/lib/jenkins/secrets/initialAdminPassword

atau bisa juga dengan menggunakan

nano /var/lib/jenkins/secrets/initialAdminPassword

Masukan kode yang didapatkan ke dalam kolom dibawah Administrator Password, lalu klik Continue.

Setelah itu, akan muncul tampilan baru seperti dibawah ini.

Berikut 2 buah penjelasa dari 2 menu yang ada diatas :

  1. Install sugested plugins : menginstal plugin-plugin yang disarankan oleh Jenkins. Plugin-plugin ini mencakup berbagai fitur dan alat yang umumnya digunakan dalam berbagai skenario pengembangan perangkat lunak, seperti manajemen kode, otomatisasi build, integrasi dengan alat pengujian, dll.
  2. Select plugins to install : memilih plugin secara manual yang ingin Anda instal. Opsi ini memberikan kontrol lebih besar terhadap plugin yang akan diinstal, terutama jika Anda hanya memerlukan sebagian kecil dari plugin yang disarankan.

Pilih sesuai dengan kebutuhan, lalu tunggu hingga proses instalasi plugins selesai.

Setelah plugins berhasil diinstal, maka akan tertampil seperti gambar dibawah ini, klik Start using jenkins.

Maka kita sudah sampai di akhir langkah instalasi Jenkins. Jenkins sudah siap untuk digunakan.


Diakhir, ini saya sampaikan beberapa kekurangan dari Jenkins yang dapat dijadikan bahan pertimbangan sebelum melakukan instalasi, dibawah ini beberapa kekurangannya :

  1. Beberapa orang yang sudah melakukan instalasi Jenkins menilai bahwa  tools ini sulit untuk digunakan, karena dalam beberapa aspek tampilannya masih kurang ramah pengguna dan masih bergantung pada arsitektur dan teknologi Java yang lama.
  2. Untuk melakukan manajemen Jenkins dinilai juga cukup sulit, karena membutuhkan keterampilan sebagai administrator server untuk memantau seluruh aktivitas yang ada.
  3. Pipeline rumit, dan proses integrasi berkelanjutan sering terjadi masalah ketika terdapat perubahan dalam pengaturan.