Bagaimana cara mencetak nama host saat ini dari suatu host yang mungkin


12

Saya menulis peran untuk mengedit motd ketika pengguna masuk ke mesin, tapi saya ingin mempersonalisasi motd untuk mencetak nama host mesin

Variabel apa yang saya gunakan? atau bagaimana saya melakukan ini? templat? bagaimana? Saya menggunakan copy moduleuntuk file motd

Jadi misalnya saya ingin bisa mengucapkan "selamat datang ke $ hostname" jadi bagaimana cara mengurai nama host ini menggunakan ansible?

Jawaban:


20

Anda harus menggunakan -module template untuk ini.

Berikut ini contoh tugas:

- name: Create motd
  template: src="motd.j2" dest="/etc/motd"

File motd.j2 (ditempatkan di templates -subdirectory dari peran Anda) dapat terlihat seperti ini:

Welcome to host {{ansible_hostname}}!

{{ansible_hostname}} kemudian akan diganti dengan nama host.

Pastikan untuk " mengumpulkan fakta " dalam peran Anda, atau variabelnya akan kosong.


Bagaimana cara saya "mengumpulkan fakta"? .. terima kasih
berikan penjahit

bekerja terima kasih..tapi apa yang Anda maksud dengan "mengumpulkan fakta"?
berikan penjahit

Saya menambahkan dua tautan ke dokumentasi untuk mengumpulkan fakta.
rndmh3ro

1
ansible_eth0.ipv4.addressmengetahuinya setelah beberapa pencarian serius .. yang menyebalkan ... mungkin harus tahu ada variabel yang sangat penting yang harus lebih mudah ditemukan dan disebutkan dengan jelas di situs dokumen
penjahit hibah

1
Jika Anda mencari "alamat ip" di dokumen yang memungkinkan, Anda dapat dengan mudah menemukannya di tautan pertama. Bahkan ada seluruh paragraf yang menunjukkan dua cara berbeda tentang cara mendapatkan alamat host!
rndmh3ro
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.