Travis-ci dan Jenkins, sementara keduanya adalah alat untuk integrasi berkelanjutan sangat berbeda.
Travis adalah layanan yang di-host (gratis untuk sumber terbuka) sementara Anda harus meng-host, menginstal dan mengkonfigurasi Jenkins.
Travis tidak memiliki pekerjaan seperti di Jenkins. Perintah untuk menjalankan untuk menguji kode diambil dari file bernama.travis.yml
yang berada di sepanjang kode proyek Anda. Ini membuatnya mudah untuk memiliki kode tes yang berbeda per cabang karena setiap cabang dapat memiliki versi file .travis.yml sendiri.
Anda dapat memiliki fitur serupa dengan Jenkins jika Anda menggunakan salah satu plugin berikut:
- Plugin Travis YML - peringatan: tampaknya tidak populer, mungkin tidak lengkap fitur dibandingkan dengan Travis nyata.
- Jervis - modifikasi Jenkins untuk membuatnya membaca menciptakan pekerjaan dari
.jervis.yml
file yang ditemukan di root kode proyek. Jika .jervis.yml
tidak ada, itu akan kembali menggunakan .travis.yml
file sebagai gantinya.
Ada layanan lain yang dihosting yang mungkin Anda pertimbangkan untuk integrasi berkelanjutan (daftar tidak lengkap):
Bagaimana memilih?
Anda mungkin ingin tetap dengan Jenkins karena Anda terbiasa atau tidak ingin bergantung pada pihak ke-3 untuk sistem integrasi berkelanjutan Anda. Kalau tidak, saya akan meninggalkan Jenkins dan pergi dengan salah satu layanan CI yang di-host gratis karena mereka menghemat banyak masalah (host, instal, konfigurasikan, siapkan pekerjaan)
Bergantung pada tempat penyimpanan kode Anda dihosting, saya akan membuat pilihan berikut:
- di rumah → Jenkins atau gitlab-ci
- Github.com → Travis-CI
Untuk mengatur Travis-CI pada proyek github, yang harus Anda lakukan adalah:
- tambahkan file .travis.yml di root proyek Anda
- buat akun di travis-ci.com dan aktifkan proyek Anda
Fitur yang Anda dapatkan adalah:
- Travis akan menjalankan tes Anda untuk setiap dorongan yang dilakukan pada repo Anda
- Travis akan menjalankan tes Anda pada setiap permintaan penarikan yang akan dibuat oleh kontributor
.travis.yml
!) Saya punya beberapa proyek github yang saya jalankan untuk Jenkins saya sendiri, dan saya tidak menyesal sedikit pun. Jika Anda memiliki kemampuan untuk menjalankan Jenkins Anda sendiri, saya akan sangat mendorong opsi itu. Sangat menyenangkan memiliki kendali 100% terhadap lingkungan CI Anda.Saya mengerjakan Travis dan Jenkins: Saya akan mencantumkan beberapa fitur dari keduanya:
Atur CI untuk suatu proyek
Travis berada di tempat pertama. Pengaturannya sangat mudah. Memakan waktu kurang dari satu menit untuk pengaturan dengan GitHub.
Jenkins:
Menjalankan kembali pembuatan
Travis: Siapa pun yang memiliki akses tulis di GitHub dapat menjalankan ulang pembangunan dengan mengklik `restart build
Jenkins: Menjalankan ulang build berdasarkan frasa. Anda memberikan teks frasa dalam deskripsi PR / commit, seperti
reverify jenkins
.Mengontrol lingkungan
Travis: Travis menyediakan lingkungan yang dihosting. Ini menginstal perangkat lunak yang diperlukan untuk setiap bangunan. Ini proses yang menghabiskan waktu.
Jenkins: Pengaturan satu kali. Instal semua perangkat lunak yang diperlukan pada mesin node / slave, dan kemudian bangun / uji pada lingkungan yang sudah diinstal sebelumnya.
Buat Log:
Travis: Mendukung pembuatan log untuk ditempatkan di Amazon S3.
Jenkins: Mudah diatur dengan membangun artefak plugin.
sumber
Saya akan menyarankan proyek Travis untuk Open source. Sederhana saja untuk mengkonfigurasi dan menggunakan.
Langkah-langkah sederhana untuk menyiapkan:
.travis.yml
file di root proyek Anda. Tambahkan Travis sebagai layanan di halaman pengaturan repositori Anda.Sekarang setiap kali Anda komit ke dalam repositori Anda, Travis akan membangun proyek Anda. Anda dapat mengikuti langkah-langkah sederhana untuk memulai dengan Travis CI.
sumber