include_role & import_role saat Runtime
Panggil role secara dinamis di tengah play.
include_role & import_role saat Runtime adalah pelajaran Ansible Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Ansible Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ansible Academy mencakup 4 pelajaran total.
Melampaui Daftar roles
Daftar roles tingkat atas menerapkan role sebelum tugas apa pun dijalankan. Terkadang Anda memerlukan role di tengah play, tepat di tempat sebuah tugas berada.
Panggil Role sebagai Tugas
include_role dan import_role sama-sama memungkinkan Anda memanggil role dari dalam bagian tugas, sebaris dengan langkah-langkah lainnya.
tasks:
- import_role:
name: nginximport_role Bersifat Statis
import_role diproses saat playbook diuraikan, sebelum eksekusi dimulai. Tugasnya disisipkan sejak awal, sehingga tidak dapat bergantung pada data saat berjalan.
include_role Bersifat Dinamis
include_role diproses selama eksekusi, tepat saat tugas tersebut dicapai. Kata kunci ini dapat bereaksi terhadap fakta dan hasil yang disimpan.
tasks:
- include_role:
name: backup
when: do_backupLakukan Loop pada Role
Karena include_role dijalankan secara dinamis, Anda dapat menempatkannya dalam loop dan menerapkan role yang sama dengan variabel berbeda pada setiap putaran.
- include_role:
name: deploy_app
loop: "{{ app_list }}"import_role Tidak Dapat Menggunakan Loop
Karena import_role diselesaikan saat penguraian, kata kunci ini tidak mendukung loop. Gunakan include_role kapan pun Anda perlu mengulangi sebuah role.
Perbedaan Perilaku when
when pada import_role menyalin kondisi ke setiap tugas di dalamnya. when pada include_role mengendalikan seluruh role sebagai satu kesatuan.
Teruskan Variabel dengan Cara Apa Pun
Kedua bentuk tersebut menerima vars untuk memberikan parameter pada role, sama seperti daftar roles. Nilai-nilai tersebut langsung diteruskan ke role yang disertakan.
- include_role:
name: web
vars:
http_port: 8080Tag dan Statis vs Dinamis
Dengan import_role, tag pada tugas yang diimpor terlihat oleh --list-tags. Dengan include_role, Anda harus menerapkan tag pada include itu sendiri.
Pilih Alat yang Tepat
Gunakan import_role untuk struktur yang dapat diprediksi dan selalu dijalankan. Gunakan include_role ketika role harus dijalankan secara bersyarat atau dalam loop.
Pola yang Sama, Dua Tingkatan
Ansible menyediakan pembagian statis-versus-dinamis yang sama untuk berkas tugas: import_tasks dan include_tasks mencerminkan kata kunci role ini secara tepat.
Pemeriksaan Singkat
Ingat kata kunci mana yang dapat menerapkan role di dalam loop.
Ringkasan
Gunakan import_role untuk struktur statis saat penguraian, dan include_role untuk pemanggilan dinamis saat berjalan dengan loop dan kondisi. 🔁
Pertanyaan yang Sering Diajukan
Apakah pelajaran “include_role & import_role saat Runtime” gratis?
Ya — teks lengkap “include_role & import_role saat Runtime” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ansible Academy, upgrade ke CoddyKit PRO. Kursus Ansible Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “include_role & import_role saat Runtime”?
Panggil role secara dinamis di tengah play. Kamu berlatih Ansible Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Ansible Academy?
Tidak diperlukan pengalaman sebelumnya. Ansible Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “include_role & import_role saat Runtime” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Ansible Academy ini?
Ya. Setiap pelajaran Ansible Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dependensi Role dalam meta/main.yml
- defaults vs vars: Urutan Override
- include_role & import_role saat Runtime
- allow_duplicates & Idempotensi Role