Ansible - переменная среды playbook - PullRequest
0 голосов
/ 18 февраля 2020

Мне нужно установить среду на целевой машине. Переменные среды присутствуют в файле с именем .env. Внутри этого файла есть несколько переменных, таких как

export AB_HOME=/tl/dev/abinit/abinit-V3  #/gcc3p32   # for 32-bit
export PATH=${AB_HOME}/bin:${PATH}

. Я пытался описать приведенную ниже таблицу воспроизведения, чтобы установить среду и зарегистрировать переменные среды, чтобы использовать их в ключевом слове среды

- hosts: dev
  gather_facts: false
  tasks:   
    - name: set the environment
      shell: 'su <user_id> & . ./.env'
      args:
        chdir: /path for the file
      register: output1

    - debug: var=output1

Но я не могу найти экспортированные переменные окружения в переменной реестра.

"changed": true, 
        "cmd": ". ./.env", 
        "delta": "0:00:00.049610", 
        "end": "2020-02-18 09:22:16.912490", 
        "failed": false, 
        "rc": 0, 
        "start": "2020-02-18 09:22:16.862880", 
        "stderr": "", 
        "stderr_lines": [], 
        "stdout": "", 
        "stdout_lines": [], 

Я попробовал cat файл и мне удалось найти список переменных, но я не знаю, как использовать это в playbook. Файл также содержит # при запуске, а также после некоторых переменных, как показано ниже.

export AB_HOME=/tl/dev/abinit/abinit-V3  #/gcc3p32   # for 32-bit
...