Как экспортировать страницу слияния в PDF в задании Jenkins? - PullRequest
0 голосов
/ 23 апреля 2019

Я пишу задание Jenkins с помощью сценария оболочки, чтобы экспортировать страницу в Confluence в PDF и сохранить ее как вывод после сборки. Как мне этого добиться?

Ответы [ 2 ]

0 голосов
/ 25 апреля 2019

Наконец-то нашли решение:

curl -D- -u user:password -X GET -H "Content-Type: application/json" "<confluence_ url>/spaces/flyingpdf/pdfpageexport.action?pageId=123456789" > curl_ouput.txt
## Read response and extract URL for downloading file
FILE_LOCATION=$(grep "Location: " curl_ouput.txt | sed 's/Location: //g')
## Remove newline character at the end of the url
FILE_LOCATION=${FILE_LOCATION%?}
## Download PDF file
curl -D- -u user:password -X GET -H "Content-Type: text/html;charset=UTF-8" <confluence_url>${FILE_LOCATION} --output fileName.pdf
rm -f curl_ouput.txt
0 голосов
/ 23 апреля 2019

Используйте wkhtmltopdf для выполнения преобразования из html в pdf.

Вы также можете преобразовать существующий веб-сайт в PDF

$wkhtmltopdf  https://wiki.jenkins.io/display/JENKINS/Confluence+Publisher+Plugin#space-menu-link-content demo.pdf

Примечание: технически механизм рендеринга Google Chrome - Blink, то естьвилка Webkit.Существует более 90% общего кода между Blink и Webkit, поэтому вы должны получить аналогичный результат.

если вы получаете ошибку

QXcbConnection: Could not connect to display 
Aborted (core dumped)

попытайтесь установить

sudo apt-get install xvfb

и попробуйте это

 xvfb-run wkhtmltopdf  https://wiki.jenkins.io/display/JENKINS/Confluence+Publisher+Plugin#space-menu-link-content demo.pdf

Затем вы найдете этот PDF-файл как вывод в рабочей области jenkins.

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