Kem Intensif DevOps · Pelajaran

Pipeline Jenkins sebagai Kod dengan Jenkinsfile

Tentukan peringkat binaan, ujian dan penggunaan secara deklaratif dalam Jenkinsfile yang disimpan dalam repositori anda supaya pipeline itu sendiri mempunyai versi bersama aplikasi.

Pelajaran 4 daripada 413 langkah

Pipeline Jenkins sebagai Kod dengan Jenkinsfile ialah pelajaran Kem Intensif DevOps percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kem Intensif DevOps, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kem Intensif DevOps merangkumi sejumlah 4 pelajaran.

Pipeline sebagai Kod

Daripada mengkonfigurasi kerja secara manual dalam antara muka Jenkins, terangkan keseluruhan pipeline dalam Jenkinsfile yang disimpan dalam repositori Anda. Pipeline menjadi kod: disemak, berversi dan mudah alih.

Deklaratif berbanding Berskrip

Jenkins menawarkan dua sintaks. Pipeline deklaratif berstruktur dan mesra pemula; pipeline berskrip menggunakan Groovy sepenuhnya. Kami akan memberi tumpuan kepada pendekatan deklaratif.

Blok pipeline

Setiap Jenkinsfile deklaratif bermula dengan blok pipeline yang mengandungi agent (tempat ia dijalankan) dan stages.

pipeline {
  agent any
  stages {
    stage('Build') {
      steps { echo 'Building...' }
    }
  }
}

Menentukan Peringkat

Setiap stage mengumpulkan steps yang berkaitan. Peringkat dipaparkan sebagai lajur dalam antara muka Jenkins, memberikan gambaran visual yang jelas tentang kemajuan pipeline.

stages {
  stage('Build') { steps { sh 'make build' } }
  stage('Test')  { steps { sh 'make test' } }
}

Menjalankan Langkah Cangkerang

Langkah sh menjalankan arahan cangkerang pada ejen. Gunakannya untuk menyusun kod, menjalankan ujian atau membina imej Docker.

steps {
  sh 'docker build -t myapp:${BUILD_NUMBER} .'
}

Pemboleh Ubah Persekitaran

Blok environment mentakrifkan pemboleh ubah untuk semua langkah. Jenkins juga menyediakan nilai terbina dalam seperti BUILD_NUMBER dan GIT_COMMIT.

environment {
  REGISTRY = 'registry.example.com'
  IMAGE    = 'myapp'
}

Pengikatan Kelayakan

Jangan sekali-kali menulis rahsia secara terus dalam kod. Simpan rahsia tersebut dalam kelayakan Jenkins dan ambilnya dengan pembantu credentials() supaya rahsia itu disembunyikan dalam log.

environment {
  REG_PASS = credentials('registry-password')
}

Tindakan Selepas

Blok post dijalankan selepas peringkat selesai, berdasarkan keputusan. Ia sesuai untuk pemberitahuan dan pembersihan.

post {
  success { echo 'Pipeline succeeded' }
  failure { echo 'Pipeline failed' }
  always  { sh 'docker image prune -f' }
}

Peringkat Selari

Percepatkan proses dengan menjalankan kerja bebas dalam parallel - contohnya ujian unit dan ujian integrasi pada masa yang sama.

stage('Tests') {
  parallel {
    stage('Unit') { steps { sh 'make unit' } }
    stage('Integration') { steps { sh 'make int' } }
  }
}

Peringkat Bersyarat

Arahan when menjalankan sesuatu peringkat hanya jika syarat dipenuhi - contohnya, gunakan hanya pada cabang utama.

stage('Deploy') {
  when { branch 'main' }
  steps { sh './deploy.sh' }
}

Pipeline Berbilang Cabang

Arahkan Jenkins kepada repositori dan Jenkins akan menemui setiap cabang yang mempunyai Jenkinsfile, lalu mencipta satu pipeline bagi setiap cabang secara automatik. Cabang ciri mendapat CI secara percuma.

Semakan Pantas

Di manakah definisi pipeline deklaratif disimpan?

Imbas Kembali

Anda telah belajar mentakrifkan pipeline sebagai kod:

  • pipeline { agent; stages } ialah rangka deklaratif
  • Langkah sh menjalankan arahan; environment dan credentials() mengurus konfigurasi
  • post, parallel dan when menambah keupayaan
  • Pipeline berbilang cabang memberikan CI secara automatik kepada setiap cabang

Jenkinsfile disimpan bersama kod Anda dan berkembang bersamanya.

Percuma untuk bermula

Pelajari Kem Intensif DevOps dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
142
Pelajaran
568

Soalan Lazim

Adakah pelajaran “Pipeline Jenkins sebagai Kod dengan Jenkinsfile” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Kem Intensif DevOps, termasuk “Pipeline Jenkins sebagai Kod dengan Jenkinsfile”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Kem Intensif DevOps merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Pipeline Jenkins sebagai Kod dengan Jenkinsfile”?

Tentukan peringkat binaan, ujian dan penggunaan secara deklaratif dalam Jenkinsfile yang disimpan dalam repositori anda supaya pipeline itu sendiri mempunyai versi bersama aplikasi. Anda berlatih Kem Intensif DevOps menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Kem Intensif DevOps?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Kem Intensif DevOps di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.

Berapa lamakah pelajaran “Pipeline Jenkins sebagai Kod dengan Jenkinsfile” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kem Intensif DevOps ini?

Ya. Setiap pelajaran Kem Intensif DevOps menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Pengenalan kepada Jenkins
  2. Membina Imej Docker dengan Jenkins
  3. Pelaksanaan Automatik dengan Jenkins
  4. Pipeline Jenkins sebagai Kod dengan Jenkinsfile
← Kembali ke Kem Intensif DevOps