как передать один ди git в следующую команду - PullRequest
0 голосов
/ 01 февраля 2020

Я пытаюсь передать версию RHEL следующей команде, но не могу:

мой скрипт ниже:

### To Create Repo File

    - name: Check for the presence of the DIR. below
      stat: path=/etc/yum.repos.d
      register: dir
    - shell: mkdir -p /etc/yum.repos.d
      when: not dir.stat.exists
    - name: To get the RHEL Release
      shell: cat /etc/redhat-release | awk '{ print $7 }' |cut -c1
      register: RH_REL
#
    - shell: touch /etc/yum.repos.d/patch.repo
    - shell: echo [RHEL-{{ RH_REL }}-2020_{{ WW }}-OS] > /etc/yum.repos.d/patch.repo

вывод отладочной информации, которую я получаю, ниже :

ok: [dmzpnet6.wellsfargo.net] => {
    "RH_REL.stdout": "7"
}

но мне нужно только получить 6 или 7 в выводе, чтобы передать этот сингл-ди git, как я могу это сделать, или, может быть, я могу использовать что-то другое вместо «регистр»?

Спасибо.

Майкл

1 Ответ

0 голосов
/ 01 февраля 2020

Q: "Мне нужно только получить 6 или 7 ... или, может быть, я могу использовать что-то другое вместо 'register'?"

A : Да. Возможно, вы захотите использовать переменную ansible_distribution_major_version, созданную модулем setup . Нет необходимости запускать его явно. Факты будут собраны по умолчанию при запуске, если вы не попросите gather_facts: false. Например,

- hosts: remote_hosts
  gather_facts: true
  tasks:
    - debug:
        var: ansible_distribution_major_version
    - shell: "echo {{ ansible_distribution_major_version }} > /tmp/my_ansible_test.txt"

См. Содержимое файла /tmp/my_ansible_test.txt в remote_hosts.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...