Comment puis-je effectuer shell-safe s'échapper sur une variable dans Ansible?

0

La question

Considérez les points suivants Ansible tâche:

- name: "Install Python packages"
  ansible.builtin.pip:
    name:
      - "foobar"
    extra_args: "--no-index --find-links=file://{{ role_path }}/files/pip/"

Cette tâche installe un paquet Python à partir d'un pré-package téléchargé le fichier qui est stocké avec l'Ansible rôle.

Cependant, il y a un piège: si le chemin d'accès sur le disque où l'Ansible rôle est situé contient des espaces ou une barre oblique inverse, l' --find-links l'argument sera analysé de manière incorrecte.

Ce dont j'ai besoin est une certaine forme de filtre ou de la fonction qui va appliquer l'équivalent de printf '%q' à l' {{ role_path }} variable, échappant à tous les espaces, ni de caractères spéciaux. Existe-t-il une fonction dans Ansible ou Jinja2?

ansible jinja2 python
2021-11-23 22:58:16
1

La meilleure réponse

0

Trouvé: {{ role_path | quote }}

2021-11-23 23:04:40

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................