При подключении к Jenkins с помощью Jenkins CLI – оно завершается с ошибкой.
Т.е. в консоли ничего не выводится, но если после подключения выполнить echo $?
, что бы вывести код последней команды – то там был, кажется, 255 ответ. Происходило пару дней тому, не записал в черновик.
Подключение выглядит так:
[simterm]
$ java -jar jenkins-cli.jar -auth admin:pass -s https://ci.example.com/ version
[/simterm]
А в логах Jenkins-а – ошибки вида:
Mar 13 13:36:00 jenkins-production docker-compose[31411]: jenkins_1 | Mar 13, 2019 1:36:00 PM hudson.init.impl.InstallUncaughtExceptionHandler lambda$init$0
Mar 13 13:36:00 jenkins-production docker-compose[31411]: jenkins_1 | WARNING: null
Mar 13 13:36:00 jenkins-production docker-compose[31411]: jenkins_1 | java.io.IOException: HTTP full-duplex channel timeout: 1686b472-6d0b-467b-b26b-ca990999c4c5
Решение нагуглилось тут>>>: помогло отключение буферизации – proxy_request_buffering
и proxy_buffering
:
... location / { proxy_http_version 1.1; proxy_request_buffering off; proxy_buffering off; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://jenkins$request_uri; } ...
Повторяем запрос:
[simterm]
$ java -jar jenkins-cli.jar -auth admin:pass -s https://ci.example.com/ version 2.150.3
[/simterm]
Готово.