باستخدام extra_settings ، لا يمكن تعيين قيم السلسلة لمفاتيح إعداد AWX لأنها لا تشمل قيمة السلسلة في علامات الاقتباس مما يؤدي إلى حدوث خطأ في لغة python حيث يعاملها settings.py على أنها اسم متغير مما يؤدي إلى فشل إحضار حاويات الويب والمهام.
تعيين أدناه extra_settings في قالب المشغل ،
spec:
extra_settings:
- setting: AUTH_LDAP_BIND_DN
value: "cn=admin,dc=example,dc=com"
قم بتطبيق القالب لنشر AWX في مساحة أسماء kubenetes.
kubectl تطبيق -f
يجب على المشغل تحليل الإعدادات الإضافية بأمان لإضافة السطر أدناه إلى /etc/tower/settings.py
AUTH_LDAP_BIND_DN = "cn = المسؤول ، dc = مثال ، dc = com"
ويجب أن تكون حاويات AWX قادرة على قراءة هذا المفتاح والعمل بشكل جيد دون أي أخطاء.
لا يضيف المشغل علامات اقتباس حول سلسلة DN وبالتالي يتسبب في فشل تنفيذ Python مع الخطأ أدناه.
ملف "/var/lib/awx/venv/awx/lib64/python3.8/site-packages/awx/asgi.py" ، السطر 12 ، في
Prepar_env () # NOQA
ملف "/var/lib/awx/venv/awx/lib64/python3.8/site-packages/awx/__init__.py" ، السطر 103 ، في Prepar_env
إن لم يكن الإعدادات. Debug: # pragma: لا يوجد غطاء
ملف "/var/lib/awx/venv/awx/lib64/python3.8/site-packages/django/conf/__init__.py" ، السطر 79 ، في __getattr__
self._setup (الاسم)
ملف "/var/lib/awx/venv/awx/lib64/python3.8/site-packages/django/conf/__init__.py" ، السطر 66 ، في _setup
self._wrapped = الإعدادات (settings_module)
ملف "/var/lib/awx/venv/awx/lib64/python3.8/site-packages/django/conf/__init__.py" ، السطر 157 ، في __init__
mod = importlib.import_module (self.SETTINGS_MODULE)
ملف "/usr/lib64/python3.8/importlib/__init__.py" ، السطر 127 ، في import_module
إرجاع _bootstrap._gcd_import (الاسم [المستوى:] ، الحزمة ، المستوى)
ملف "
ملف "
ملف "
ملف "
ملف "
ملف "
ملف "/var/lib/awx/venv/awx/lib64/python3.8/site-packages/awx/settings/production.py" ، السطر 62 ، في
تشمل (ملف_الإعدادات ، اختياري (إعدادات_الملفات) ، النطاق = السكان المحليون ())
ملف "/var/lib/awx/venv/awx/lib64/python3.8/site-packages/split_settings/tools.py" ، السطر 107 ، في التضمين
exec (compiled_code، domain) # noqa: S102، WPS421
ملف "/etc/tower/settings.py" ، السطر 75 ، بتنسيق
AUTH_LDAP_BIND_DN = cn = admin ، dc = مثال ، dc = com
NameError: الاسم "com" غير محدد
لا يوجد خطأ في سجلات المشغل حيث يمر تقييم خريطة التكوين بشكل جيد دون أي مشاكل - https://github.com/ansible/awx-operator/blob/0.13.0/roles/installer/templates/config.yaml.j2#L93
يبدو أن هذا أثر جانبي غير مقصود لـ # 432. إذا لم يكن هناك شيء آخر ، فيجب تحديث الوثائق (README) لإظهار اقتباس القيم بشكل صحيح ، لأن المثال الحالي لا يعمل.
المثال الوارد في وصف العلاقات العامة لا يبدو أنه yaml صالحًا. أظن أن هناك نوعًا أفضل من التحقق من النوع يمكننا القيام به هنا.
تقصد المثال في وصف _issue_؟ نعم ، هناك خطأ مطبعي ، بدون الزائد "، يجب أن يكون:
spec:
extra_settings:
- setting: AUTH_LDAP_BIND_DN
value: "cn=admin,dc=example,dc=com"
للتسجيل ، على الرغم من استخدام اقتباس كتلة YAML يعمل:
spec:
extra_settings:
- setting: AUTH_LDAP_BIND_DN
value: >-
"cn=admin,dc=example,dc=com"
... هذا ليس بديهيًا حقًا ، حيث أن القيمة في المثال الأول عبارة عن سلسلة بالفعل - لا ينبغي علينا اقتباس علامات الاقتباس.
تقصد المثال في وصف _issue_؟ نعم ، هناك خطأ مطبعي ، بدون الزائد "، يجب أن يكون:
spec: extra_settings: - setting: AUTH_LDAP_BIND_DN value: "cn=admin,dc=example,dc=com"
للتسجيل ، على الرغم من استخدام اقتباس كتلة YAML يعمل:
spec: extra_settings: - setting: AUTH_LDAP_BIND_DN value: >- "cn=admin,dc=example,dc=com"
... هذا ليس بديهيًا حقًا ، حيث إن القيمة في المثال الأول عبارة عن سلسلة بالفعل - لا ينبغي علينا اقتباس
المثال الوارد في وصف العلاقات العامة لا يبدو أنه yaml صالحًا. أظن أن هناك نوعًا أفضل من التحقق من النوع يمكننا القيام به هنا.
تصحيح الخطأ المطبعي ، شكرًا shanemcd
تقصد المثال في وصف _issue_؟ نعم ، هناك خطأ مطبعي ، بدون الزائد "، يجب أن يكون:
spec: extra_settings: - setting: AUTH_LDAP_BIND_DN value: "cn=admin,dc=example,dc=com"
للتسجيل ، على الرغم من استخدام اقتباس كتلة YAML يعمل:
spec: extra_settings: - setting: AUTH_LDAP_BIND_DN value: >- "cn=admin,dc=example,dc=com"
... هذا ليس بديهيًا حقًا ، حيث أن القيمة في المثال الأول عبارة عن سلسلة بالفعل - لا ينبغي علينا اقتباس علامات الاقتباس.
شكرا ، هذا يعمل. قد يكون من الجيد إذا قمنا بتحديث README في الوقت الحالي حتى لا يواجه الآخرون نفس المشكلة.
التعليق الأكثر فائدة
يبدو أن هذا أثر جانبي غير مقصود لـ # 432. إذا لم يكن هناك شيء آخر ، فيجب تحديث الوثائق (README) لإظهار اقتباس القيم بشكل صحيح ، لأن المثال الحالي لا يعمل.