Ansible-role-nginx-config: Konfigurasi nginx.conf dengan nilai default gagal dengan nginx_config_main_template_enable disetel ke true

Dibuat pada 17 Jun 2021  ·  4Komentar  ·  Sumber: nginxinc/ansible-role-nginx-config

Jelaskan bugnya

Saya mencoba mengganti hanya satu pengaturan ( server_names_hash_bucket_size ) di templat utama default.
Komentar dalam status file "# Default adalah nilai yang ditemukan dalam instalasi NGINX baru." jadi saya pikir mengaktifkan nginx_config_main_template_enable dan hanya mengganti subkunci yang tepat akan berhasil karena akan menjaga nilai yang lain.

Ini tidak berhasil, jadi saya mengomentari modifikasi saya tentang pengaturan khusus dan mencoba menerapkan peran hanya dengan nginx_config_main_template_enable disetel ke true tetapi gagal juga.

Menggunakan peran dengan nginx_config_main_template_enable disetel ke true gagal dengan nilai peran default.

Untuk mereproduksi

Langkah-langkah untuk mereproduksi perilaku:

  1. Terapkan peran NGINX Config menggunakan playbook.yml
- name: NGINX
  hosts: nginx
  debugger: on_failed
  become: true

  pre_tasks:
  - name: Enabling nginx_config_main_template
    set_fact:
      nginx_config_main_template_enable: true
  roles:
  - role: nginxinc.nginx
  - role: nginxinc.nginx-config
  1. Kesalahan keluaran adalah (dengan opsi -vvv untuk verbositas)
TASK [nginxinc.nginx-config : Dynamically generate NGINX main configuration file] ***********************************************************************************************************
task path: /home/xxx/ansible/yyy/roles/nginxinc.nginx-config/tasks/config/template-config.yml:37
fatal: [nginx_0]: FAILED! => {
    "changed": false,
    "msg": "AnsibleUndefinedVariable: 'dict object' has no attribute 'dest'"
}

Saya tidak memiliki info lebih lanjut tentang 'objek dict' mana yang gagal, karena tugas Dynamically generate NGINX main configuration file memiliki nilai default mundur untuk file dest ( /etc/nginx/nginx.conf ) dan karenanya tidak boleh gagal.

Perilaku yang diharapkan

Komentar mengatakan "# Default adalah nilai yang ditemukan di instalasi NGINX baru." jadi itu harus membuat file nginx.conf standar dengan nilai default.

Lingkungan Anda:

  • utama
  • Versi Ansible: ansible 2.9.17
  • Versi Jinja2: 2.11.2
  • Platform penerapan target: Debian Buster
bug

Semua 4 komentar

Menemukan bug, dan seperti tradisi, menemukan beberapa bug lain saat melakukannya. Salah satunya adalah bahwa komentar # Defaults are the values found in a fresh NGINX installation tidak lagi berlaku. Saya berharap untuk memiliki PR siap secepatnya. Pernyataan default mungkin masih tidak sepenuhnya benar setelah perbaikan, tetapi seharusnya lebih dekat dari yang sekarang

Sempurna, awasi ini kalau begitu :)

148 seharusnya memperbaiki masalah ini. Lihat dan lmk! 😄

Halo, PR tampaknya memang memperbaiki masalah (hanya harus memastikan untuk memperbarui pengguna ke www-data karena ini adalah pengguna www default di Debian dan pengguna nginx tidak ada di sistem saya). Terima kasih untuk perbaikan cepat :)

Apakah halaman ini membantu?
0 / 5 - 0 peringkat