Penerapan Jenkins Berkelanjutan [Dengan Contoh Praktis]
Diterbitkan: 2020-12-28Penerapan Jenkins adalah proses percepatan pengembangan perangkat lunak otomatis yang kompleks. Artikel ini menjelaskan bagaimana Jenkins mengintegrasikan semua proses siklus hidup pengembangan atau tahapan DevOps seperti membangun, mendokumentasikan, menguji, mengemas, staging, penerapan, analisis statis, dan banyak lagi, yang dipraktikkan di beberapa organisasi.
Saat ini, banyak organisasi mengadopsi DevOps dalam penawaran mereka. Dalam siklus hidup pengembangan perangkat lunak, Anda harus merilis perangkat lunak secara terus menerus sebagai bagian dari proyek.
Alat seperti Jenkins sangat populer karena potensinya untuk memungkinkan integrasi dan pengiriman berkelanjutan aplikasi terlepas dari platformnya. Jenkins adalah alat sumber gratis dan satu-satunya yang dapat menangani segala jenis build dalam penerapan Jenkins , yang akan dibahas dalam artikel.
Jenkins dapat diintegrasikan dengan banyak teknologi pengujian dan penerapan. Artikel ini menjelaskan bagaimana Jenkins digunakan untuk membangun dan menguji proyek perangkat lunak Anda secara terus-menerus.
Pelajari kursus online Rekayasa Perangkat Lunak dari Universitas top Dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.
Jadi, sebelum mempelajari cara kerja Jenkins, kita perlu memahami topik-topik berikut yang menjadi dasar untuk mempelajari Jenkins:

- Penyebaran berkelanjutan
- Pengiriman berkelanjutan vs penerapan berkelanjutan
- Contoh praktis penerapan Jenkins
- Manfaat penerapan Jenkins
Mari kita lihat semuanya satu per satu!
Daftar isi
Penerapan Berkelanjutan
Dalam penyebaran berkelanjutan, perangkat lunak dirilis pada server produksi secara terus menerus dengan otomatisasi. Kode melewati tahapan seperti kompilasi kode sumber, validasi, peninjauan, pengemasan aplikasi dan melakukan pengujian unit dan pengujian integrasi.
Kode tersebut kemudian disebarkan di server uji saat uji penerimaan pengguna dilakukan. Perangkat lunak akan digunakan pada server produksi untuk rilis perangkat lunak. Baca tentang integrasi berkelanjutan dengan jenkins.
Pengiriman Berkelanjutan vs. Penerapan Berkelanjutan
Pengiriman berkelanjutan dan penerapan berkelanjutan adalah dua tahap penting dari SDLC di mana pengiriman berkelanjutan tidak diterapkan ke produksi untuk perubahan apa pun. Pengembang perlu memastikan bahwa kode selalu dapat diterapkan dan menyebarkannya kapan pun diperlukan.
Kredit Gambar
Penerapan berkelanjutan membutuhkan setiap perubahan yang diterapkan secara otomatis, tanpa arbitrase manusia.
Dalam diagram di atas, setelah tahap integrasi berkelanjutan selesai, aplikasi yang dibangun secara otomatis digunakan di server produksi, yang tidak lain adalah penyebaran konstan.
Atau, jika kami memerlukan persetujuan manusia untuk menerapkan versi yang lebih baru untuk mengotomatisasi semuanya, kami menjalankan pengiriman berkelanjutan.
Karena perbedaan inti ini, ada beberapa implikasi yang membuat setiap proses cocok untuk keadaan yang berbeda.
Jenkins
Jenkins adalah alat sumber terbuka yang mempercepat proses perangkat lunak melalui server otomatisasi yang digunakan untuk terus membangun dan menguji proyek perangkat lunak, memungkinkan lingkungan CI/CD untuk pengembang. Itu ditulis dalam Java sehingga sangat portabel.
Jenkins memiliki ribuan plugin dan integrasi. Oleh karena itu, sangat cocok untuk proyek besar yang membutuhkan banyak penyesuaian. Ini mendukung alat kontrol versi seperti Git, Maven, Mercurial, dan Subversion.
Contoh praktis penerapan Jenkins
Sekarang setelah kita mempelajari tentang jenis alat Jenkins dan dapat diterapkan untuk proses pengembangan perangkat lunak untuk penerapan berkelanjutan, sekarang mari kita lihat cara kerjanya di lingkungan produksi.
Pertama, Jenkins diatur di server dan proyek klien ditambahkan untuk pembangunan dan pengujian. Klien kemudian dapat mengunduh aplikasi yang telah menjalani pengujian. Menyebarkan aset proyek ke lokasi baru di server bisa jadi rumit.

Untuk itu, sebelumnya, mari kita asumsikan proyek klien diatur di Jenkins, ditautkan ke sistem kontrol versi Anda.
Langkah 1: Membuat Item Jenkins
Dari menu utama, pilih 'Item baru' dan beri nama. Ini akan mengekspor file dari proyek klien Anda ke folder server.
Langkah 2: Membuat tindakan pasca-pembuatan
Buka proyek klien dan pilih konfigurasikan. Sekarang, buat tindakan pasca-pembuatan dan pilih 'artifak arsip' dari menu tarik-turun. Tambahkan jenis file yang akan diarsipkan dan diekspor.
Setelah ini, tambahkan tindakan post-build lainnya, 'Build other project' dan masukkan item build yang dibuat sebelumnya.
Arsip
Langkah 3: Memasang plugin 'Copy Artefak'
Pada langkah ketiga, Anda akan menginstal 'Plugin Salin Artefak' Jenkins.
Buka 'Nama proyek' untuk mengonfigurasi dan menambahkan langkah pembuatan. Saat plugin Salin Artefak diinstal, Anda akan melihat opsi 'salin artefak dari proyek lain'. Tentukan folder untuk menyalin artefak dan mengatur jalur lokasi.
Setel lokasi ke “var/www/clients/..” . Ini akan membuat folder baru di server. Tentukan jalur dengan alamat HTTP (!).
Menyimpan Proyek
Langkah 4: Melakukan Pengujian
Setelah tahap utama, sekarang saatnya untuk menguji aplikasi.
Untuk ini, mulai membangun dari proyek klien. Ini akan meminta build baru. Periksa folder penyebaran di server. Di sini, Anda akan melihat file yang digunakan.
Namun, bahkan setelah semua tindakan, pembangunan gagal dan Anda mendapatkan kesalahan 'FileException'.
Mengapa?
Kemungkinan alasannya bisa:
- Jenkins tidak memiliki izin untuk menulis ke folder dan tidak dapat menerapkan file.
- Tautkan SSH ke server.
- Periksa izin folder keluaran.
- Anda akan tahu, kami menghadapi masalah.
Lakukan langkah-langkah berikut untuk mengatasinya:
- Tambahkan Jenkins ke grup, di sini, grup 'www-data'.
- Mengubah kepemilikan folder output ke grup 'www-data' dengan perintah sudo chown – R : klien 'www – data'.
- Izinkan akses tulis pada folder dengan perintah sudo chmod .
- Mulai ulang server dan lihat aplikasi digunakan
Apa Manfaat yang Ditawarkan Jenkins?
- Jenkins adalah alat sumber terbuka dan menyediakan dukungan komunitas yang sangat baik.
- Jenkins relatif mudah dipasang.
- Jenkins memiliki 1000+ plugin. Jika plugin tidak tersedia, Anda dapat mengkodekannya dengan mudah.
- Jenkins bebas biaya.
- Jenkins dibangun dengan Java; karenanya, portabel untuk semua platform utama.
Baca Juga: Ide & Topik Proyek Jenkins

Kata-kata terakhir
Jenkins adalah alat otomatisasi tertulis Java yang kuat yang telah banyak digunakan untuk Integrasi Berkelanjutan. Dengan Jenkins, lebih mudah untuk membangun dan menguji proyek perangkat lunak secara terus menerus dengan apa yang tertulis. Ini adalah alat utama untuk memberikan perangkat lunak Anda selalu dengan mengintegrasikan dengan sejumlah besar teknologi pengujian dan penyebaran.
Mempelajari pengembangan perangkat lunak – DevOps dengan upGrad
upGrad menawarkan Program PG Eksekutif dalam Pengembangan Perangkat Lunak – Spesialisasi dalam DevOps di mana Anda akan belajar memberikan aplikasi dan layanan dengan kecepatan sangat tinggi dalam organisasi. Staf pengajar di upGrad akan mengajari Anda setiap seluk beluk DevOps dan mengapa mempelajarinya akan menjadikan karier yang menguntungkan bagi Anda.
Diploma PG upGrad dalam Spesialisasi Pengembangan Perangkat Lunak dalam Sorotan Program DevOps:
Kursus online 12 bulan yang diperpanjang ini menawarkan fitur-fitur berikut:
- Sesi Online Berpengetahuan dengan Kuliah Langsung
- Akses ke konten berharga dalam Ilmu Data & Pembelajaran Mesin secara gratis
- Bekerja di 7+ Proyek dan Tugas langsung
- Mempelajari sepuluh Bahasa & Alat Pemrograman
- Jaminan Penempatan Dijamin
- Dukungan Karir 360° dengan bantuan pekerjaan