Rocket.chat.ansible: "AnsibleUndefinedVariable: 'objeto dict' não tem atributo 'iteritems'" arquivo de serviço de reimplantação

Criado em 28 fev. 2019  ·  4Comentários  ·  Fonte: RocketChat/Rocket.Chat.Ansible

Implantando no CentOS 7:

TASK [RocketChat.Server : Deploy the Rocket.Chat service file]
fatal: [rocketchat.mydomain.com]: FAILED! => {
    "changed": false,
    "msg": "AnsibleUndefinedVariable: 'dict object' has no attribute 'iteritems'"
}

Alguma sugestão para a causa / correção?

Comentários muito úteis

Também recebo este erro e minha versão do ansible é executada em Python 3 no MacOS, instalado via homebrew:

$ ansible --version
ansible 2.8.1
  config file = /Users/tanc/Documents/Projects/agile-ansible/ansible.cfg
  configured module search path = ['/Users/tanc/.local/lib/python2.7/site-packages/ara/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/2.8.1/libexec/lib/python3.7/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.7.3 (default, Mar 27 2019, 09:23:15) [Clang 10.0.1 (clang-1001.0.46.3)]

Todos 4 comentários

Isso se relaciona com o nº 74 de alguma forma?

A tarefa 'Implantar o arquivo de serviço Rocket.Chat' usando rocketchat.service.j2:

{% for variable, value in rocket_chat_service_environment.iteritems() %}
Environment={{ variable }}={{ value }}
{% endfor -%}

Alterá-lo para usar rocket_chat_service_environment.items() pareceu resolver o problema.

Isso parece ser um problema com a remoção de iteritem () no Python 3.
https://stackoverflow.com/questions/30418481/error-dict-object-has-no-attribute-iteritems

Também recebo este erro e minha versão do ansible é executada em Python 3 no MacOS, instalado via homebrew:

$ ansible --version
ansible 2.8.1
  config file = /Users/tanc/Documents/Projects/agile-ansible/ansible.cfg
  configured module search path = ['/Users/tanc/.local/lib/python2.7/site-packages/ara/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/2.8.1/libexec/lib/python3.7/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.7.3 (default, Mar 27 2019, 09:23:15) [Clang 10.0.1 (clang-1001.0.46.3)]

Também recebo este erro e minha versão do ansible é executada em Python 3 no MacOS, instalado via homebrew:

$ ansible --version
ansible 2.8.1
  config file = /Users/tanc/Documents/Projects/agile-ansible/ansible.cfg
  configured module search path = ['/Users/tanc/.local/lib/python2.7/site-packages/ara/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/2.8.1/libexec/lib/python3.7/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.7.3 (default, Mar 27 2019, 09:23:15) [Clang 10.0.1 (clang-1001.0.46.3)]

Muito valioso, acabei de pesquisar este erro e não estou usando rocketchat ou homebrew, mas estou usando pyenv junto com o virtualenvironment e tinha a versão definida para 2.7.x, mas não importa o que eu fiz com o pyenv o virtualenvironment continuou usando o padrão do sistema. A solução final foi usar pyenv-virtualenvironment .

Esta página foi útil?
0 / 5 - 0 avaliações