Fournir un environnement proxy aux tâches distantes d'Ansible
Réutilisez les variables proxy de l'inventaire en les appliquant explicitement aux actions distantes qui en ont besoin.
Enregistrez une correspondance proxy réutilisable dans le fichier group_vars approprié :
proxy_env:
http_proxy: http://gateway.example:8080
https_proxy: http://gateway.example:8080Appliquez-la à l'action distante :
- name: Download the managed artifact
ansible.builtin.get_url:
url: https://downloads.example/artifact.txt
dest: /tmp/artifact.txt
mode: '0644'
environment: "{{ proxy_env }}"Pour l'exemple de l'artefact public sur une route autorisant des intermédiaires publics non authentifiés, prenez des URL de proxy HTTP candidates dans la liste de proxys HTTP et définissez l'URL de l'artefact séparément. Le module reçoit l'environnement dans son contexte d'exécution réel ; get_url, avec son use_proxy documenté, peut désactiver la mise en proxy issue de l'environnement pour une tâche directe voulue. Une exportation dans un .bashrc interactif ne garantit pas les mêmes entrées. Si la tâche voit une correspondance vide, vérifiez si une variable play remplace la valeur de l'inventaire.
Utilisez l'environnement block/play lorsque la même politique doit couvrir davantage d'actions pour le même utilisateur. Cette portée ne reconfigure pas les recherches du contrôleur, les plugins de filtre ni les connexions propres d'Ansible.
Gérez séparément les préférences persistantes de connexion ou de service. L'environnement de la tâche se termine avec son action ; un service ultérieur obtient son environnement de sa propre configuration de démarrage.