ansible diff игнорирует порядок строк - PullRequest
0 голосов
/ 05 декабря 2018

Команда diff, введенная непосредственно из Ubuntu, обеспечивает ожидаемый результат, но при вводе через playbook выдает следующие ошибки:

ubuntu@ubuntu:~$ diff <(sort CSR1_route.txt) <(sort CSR2_route.txt) >> delta1.txt ubuntu@ubuntu:~$ more delta1.txt 13c13 < O        2.2.2.2 [110/2] via 192.168.255.134, 01:36:31, GigabitEthernet1
---
> O        1.2.2.2 [110/2] via 192.168.255.134, 01:36:31, GigabitEthernet1


- name: testing_diff   shell: diff <(sort CSR1_route.txt) <(sort CSR2_route.txt) >> delta4.txt

fatal: [CSR1]: FAILED! => {
    "changed": true,
    "cmd": "diff <(sort CSR1_route.txt) <(sort CSR2_route.txt) >> delta4.txt",
    "delta": "0:00:00.001697",
    "end": "2018-12-05 16:34:59.665114",
    "invocation": {
        "module_args": {
            "_raw_params": "diff <(sort CSR1_route.txt) <(sort CSR2_route.txt) >> delta4.txt",
            "_uses_shell": true,
            "argv": null,
            "chdir": null,
            "creates": null,
            "executable": null,
            "removes": null,
            "stdin": null,
            "warn": true
        }
    },
    "msg": "non-zero return code",
    "rc": 2,
    "start": "2018-12-05 16:34:59.663417",
    "stderr": "/bin/sh: 1: Syntax error: \"(\" unexpected",
    "stderr_lines": [
        "/bin/sh: 1: Syntax error: \"(\" unexpected"
    ],
    "stdout": "",
    "stdout_lines": []

1 Ответ

0 голосов
/ 06 декабря 2018

Решение 1 -

- name: testing_diff   
  shell: |
    diff file1 file2 >> delta4.txt

Решение 2 -

- name: testing_diff   
  shell: |
    diff file1 file2 >> delta4.txt
  args:
    executable: /bin/bash

Решение 3 - Если нет, попробуйте командный модуль.

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