Size: a a a

2021 February 10

E

Elenhil in Ansible
Да, спасибо! Пока спрашивал уже сам нашел :D
источник
2021 February 11

AD

Alex Domoradov in Ansible
Alex Domoradov
а может кто подсказать, почему не работает такой таск


- name: Upload new config descriptor
 uri:
   url: "{{ jfrt_base_url }}/api/system/configuration"
   method: POST
   src: /opt/config-descriptor.xml
   remote_src: yes
   headers:
       Content-Type: application/xml
   return_content: yes
   user: admin
   password: password


Возвращает connection timeout. При этом порт естественно открыт и доступен. Проверял другим таском. Такое ощущение что remorte_src как то странно работает


fatal: [jfrt]: FAILED! => changed=false


msg: 'Status code was -1 and not [200]: Connection failure: timed out'
 redirected: false
 status: -1
 url: http://localhost:8082/api/system/configuration
@tnt4brain  никаких идей нет случайно ?
источник

SP

Sergey Pechenkó in Ansible
Alex Domoradov
@tnt4brain  никаких идей нет случайно ?
Не особо. Ну в смысе "всё, что угодно": разница Python2/Python3; использование локалхоста в паре с каким-нибудь контейнером; переменные типа PROXY_PASS, установленные при курлыкании, и отсутствующие при работе модуля; в общем. сплошное лечение зубов по фотографии.
источник

AD

Alex Domoradov in Ansible
Sergey Pechenkó
Не особо. Ну в смысе "всё, что угодно": разница Python2/Python3; использование локалхоста в паре с каким-нибудь контейнером; переменные типа PROXY_PASS, установленные при курлыкании, и отсутствующие при работе модуля; в общем. сплошное лечение зубов по фотографии.
если я рядом добавляю еще один таск. но просто другой endpoint, то все работает
источник

AD

Alex Domoradov in Ansible
Т.е. GET на url: "{{ jfrt_base_url }}/api/system/health" отрабатывает без проблем, что говорит о том что проблема не в настройках proxy_pass/фаерволе и т.п.
источник

PG

Pavel Gassan in Ansible
глянуть логи приложения\прокси?
источник

SP

Sergey Pechenkó in Ansible
+++ ^^^
источник

PG

Pavel Gassan in Ansible
и у тебя разные методы, в курле гет, в таске пост, может быть важно
источник

AD

Alex Domoradov in Ansible
Pavel Gassan
и у тебя разные методы, в курле гет, в таске пост, может быть важно
в curl у меня тоже post
источник

PG

Pavel Gassan in Ansible
Alex Domoradov
в curl у меня тоже post
а, сори, я про
Т.е. GET на url: "{{ jfrt_base_url }}/api/system/health"
источник

AD

Alex Domoradov in Ansible
на curl запрос выглядит так и отрабатывает нормально

$ curl -i -X POST -u admin:password http://localhost:8081/api/system/configuration -H "Content-Type: application/xml" --data "@config-descriptor.xml"
источник

AD

Alex Domoradov in Ansible
Pavel Gassan
глянуть логи приложения\прокси?
нет никаких прокси, в приложении в логах тишина
источник

PG

Pavel Gassan in Ansible
поснифать трафик и посмотреть разницу, как вариант
источник

TG

Timur Gadiev in Ansible
Maksim Sharov
почему ansible-lint возвращает ошибки при использование полного названия модуля типа community.general.docker_network или community.general.docker_container, а например, ansible.builtin.copy  -  нет

версия линтера 4.2.0
The error appears to be in '<unicode string>': line 4, column 3, but may
be elsewhere in the file depending on the exact syntax problem.


если сократить названия до docker_network или docker_container ошибка исчезает

и разумно ли вообще использовать линтеры, если при прогоне все валидируется?
На ансибле 2.9 гоняете?
источник

TG

Timur Gadiev in Ansible
Вообще для устранения проблем с FQCN можно не использовать его в плейбуке, а префиксы коллекций выносить в директиву плея или роли
источник

TG

Timur Gadiev in Ansible
Тогда линт точно ругаться не будет
источник

TG

Timur Gadiev in Ansible
Alex Domoradov
а может кто подсказать, почему не работает такой таск


- name: Upload new config descriptor
 uri:
   url: "{{ jfrt_base_url }}/api/system/configuration"
   method: POST
   src: /opt/config-descriptor.xml
   remote_src: yes
   headers:
       Content-Type: application/xml
   return_content: yes
   user: admin
   password: password


Возвращает connection timeout. При этом порт естественно открыт и доступен. Проверял другим таском. Такое ощущение что remorte_src как то странно работает


fatal: [jfrt]: FAILED! => changed=false


msg: 'Status code was -1 and not [200]: Connection failure: timed out'
 redirected: false
 status: -1
 url: http://localhost:8082/api/system/configuration
А какой статус возвращает при обычном запросе курлом?
источник

TG

Timur Gadiev in Ansible
200 или что-то типа 201,203 и т.п.?
источник

TG

Timur Gadiev in Ansible
Alex Domoradov
на curl запрос выглядит так и отрабатывает нормально

$ curl -i -X POST -u admin:password http://localhost:8081/api/system/configuration -H "Content-Type: application/xml" --data "@config-descriptor.xml"
Код ответа какой?
источник

TG

Timur Gadiev in Ansible
Alex Domoradov
нет никаких прокси, в приложении в логах тишина
В смысле - тишина? Т.е. приложение вообще не видит запроса?
источник