ansible
ansible copied to clipboard
node_exporter role failing with 'AnsibleUnicode' object is not callable
TASK [prometheus.prometheus.node_exporter : Copy the node_exporter systemd service file] ************************************************************************************************************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ): 'AnsibleUnicode' object is not callable. 'AnsibleUnicode' object is not callable
fatal: [agn-an-afg-prod-republisher]: FAILED! => changed=false
msg: |-
AnsibleError: Unexpected templating type error occurred on ({{ ansible_managed | comment }}
[Unit]
Description=Prometheus Node Exporter
After=network-online.target
[Service]
Type=simple
User={{ node_exporter_system_user }}
Group={{ node_exporter_system_group }}
ExecStart={{ node_exporter_binary_install_dir }}/node_exporter \
{% for collector in node_exporter_enabled_collectors -%}
{% if not collector is mapping %}
'--collector.{{ collector }}' \
{% else -%}
{% set name, options = (collector.items()|list)[0] -%}
'--collector.{{ name }}' \
{% for k,v in options|dictsort %}
'--collector.{{ name }}.{{ k }}={{ v }}' \
{% endfor -%}
{% endif -%}
{% endfor -%}
{% for collector in node_exporter_disabled_collectors %}
'--no-collector.{{ collector }}' \
{% endfor %}
{% if node_exporter_tls_server_config | length > 0 or node_exporter_http_server_config | length > 0 or node_exporter_basic_auth_users | length > 0 %}
{% if node_exporter_version is version('1.5.0', '>=') %}
'--web.config.file=/etc/node_exporter/config.yaml' \
{% else %}
'--web.config=/etc/node_exporter/config.yaml' \
{% endif %}
{% endif %}
'--web.listen-address={{ node_exporter_web_listen_address }}' \
'--web.telemetry-path={{ node_exporter_web_telemetry_path }}'
SyslogIdentifier=node_exporter
Restart=always
RestartSec=1
StartLimitInterval=0
{% set ns = namespace(protect_home = 'yes') %}
{% for m in ansible_mounts if m.mount.startswith('/home') %}
{% set ns.protect_home = 'read-only' %}
{% endfor %}
{% if node_exporter_textfile_dir.startswith('/home') %}
{% set ns.protect_home = 'read-only' %}
{% endif %}
ProtectHome={{ ns.protect_home }}
NoNewPrivileges=yes
{% if (ansible_facts.packages.systemd | first).version is version('232', '>=') %}
ProtectSystem=strict
ProtectControlGroups=true
ProtectKernelModules=true
ProtectKernelTunables=yes
{% else %}
ProtectSystem=full
{% endif %}
[Install]
WantedBy=multi-user.target
): 'AnsibleUnicode' object is not callable. 'AnsibleUnicode' object is not callable
Version:
ansible [core 2.15.2]
config file = /workspace/myproject/ansible.cfg
configured module search path = ['/home/gitpod/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /workspace/myproject/collections
executable location = /usr/bin/ansible
python version = 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0] (/usr/bin/python3)
jinja version = 3.0.3
libyaml = True
Collection version: 0.7.0
node_exporter variables I am defining:
node_exporter_version: latest
Is this still a issue?