Проверьте версию Java через Ansible playbook

2

Ниже моя пьеса:

---
- hosts: UAT
  gather_facts: false
  remote_user: xxxx
  become_method: sudo
  become: yes
  become_user: sudo_user
  tasks:
   - name: Fetch Java version
     command: java -version
     register: java_result
     ignore_errors: True
   - debug: "msg={{ java_result.stdout }}"
...

И я получаю следующую ошибку:

fatal: [ma-dsast-lapp10]: FAILED! => {
    "changed": false,
    "cmd": "java -version '2>&1' '|' grep version",
    "failed": true,
    "invocation": {
        "module_args": {
            "_raw_params": "java -version 2>&1 | grep version",
            "_uses_shell": false,
            "chdir": null,
            "creates": null,
            "executable": null,
            "removes": null,
            "warn": true
        }
    },
    "msg": "[Errno 2] No such file or directory",
    "rc": 2
}

Я получаю: нет такого файла или ошибка каталога

В чем может быть проблема с этим? Пожалуйста помоги мне с этим.

  • 0
    --- - hosts: UAT collect_facts: false remote_user: c1473247 становиться_методом: sudo становиться: да становиться_пользователем: задачи dsservt: - имя: извлекать оболочку версии Java: 'java -version 2> & 1 | grep version '# становиться_пользователем:' {{global_vars.user_session}} '// регистр сеанса пользователя: java_result ignore_errors: True - отладка: "msg = {{java_result.stdout}}" ...
  • 0
    Вы уверены, что Java установлена на рассматриваемом компьютере и находится в dsservt пользователя ( dsservt )?
Теги:
scripting
ansible
version

1 ответ

0

Я запустил ваш скрипт на моей машине, и он тоже не сработал. Я немного его модифицировал

---

- hosts: localhost
  gather_facts: False

  tasks:
   - name: Fetch Java version
     shell: java -version 2>&1 | grep version | awk '{print $3}' | sed 's/"//g'                                                                                                                                   
     changed_when: False
     register: java_result

   - debug:
       msg: "{{ java_result.stdout }}"

И я получил

TASK [debug] *******************************************************************************************
ok: [localhost] => {
    "msg": "1.8.0_181"
}
  • 0
    @nwinkler да java установлен по указанному пути.
  • 0
    @nwinkler - я попробовал твои изменения. Я все еще сталкиваюсь с той же проблемой. Я считаю, что могут быть некоторые проблемы с доступом.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню