XL-Deploy: Как получить информацию о шаге Exection Plan?

В TaskBlockService есть GET вызов извлекает информацию о данном шаге /tasks/v2/{taskid}/step/{stepPath},

Вопрос Как указать значение для stepPath?

2 ответа

Решение

Во-первых, давайте посмотрим, какие блоки у нас внутри данной задачи.

Предположим, b9f5b44c-1754-4689-9129-e79376268d21 это идентификатор задачи. Ниже приведен вызов REST. + Изменить localhost:4516 на свой собственный хост XLD: порт.

http://localhost:4516/deployit/tasks/v2/b9f5b44c-1754-4689-9129-e79376268d21/

Он вернет подробности об этой самой задаче. Я только вставляю соответствующую часть, т.е. список блоков в этой задаче.

<block id="0" state="FAILED" description="" hasSteps="true" root="true">
        <block id="0_1" state="FAILED" description="Deploy" hasSteps="true" phase="true">
            <block id="0_1_1" state="FAILED" description="Deploy MySQL 1.0 on MySQL" hasSteps="true"/></block>
        <block id="0_2" state="PENDING" description="" hasSteps="true" phase="true">
            <block id="0_2_1" state="PENDING" description="Register changes for MySQL" hasSteps="true"/></block>
    </block>

Блок ID 0 означает родительский блок. Внутри него мы видим несколько дочерних блоков, а именно. 0_1 и 0_2. И внутри этих дочерних блоков есть 2 шага, а именно. 0_1_1 & 0_1_2.

Итак, чтобы увидеть подробности об этих шагах, введите префикс step/0_1_1_1 выше выше вызов.

Обратите внимание, выше, что я указал 0_1_1_1, который является stepPath внутри 0_1_1. Это дает вывод, аналогичный приведенному ниже.

<step failures="0" state="DONE">
    <description>Run 01-CreateTable.sql on MySQLClient</description>
    <startDate>2017-04-26T05:26:30.044+0000</startDate>
    <completionDate>2017-04-26T05:26:32.568+0000</completionDate>
    <log>Uploading artifact [/tmp/ot-20170426T072630452.1/Archive.zip]
 </step>

Точно так же, если я заменю step/0_1_1_1 с step/0_1_1_2 в приведенном выше вызове REST, я вижу детали других stepPath т.е. 0_1_1_2,

<step failures="1" state="FAILED">
    <description>Run 02-CreateUser.sql on MySQLClient</description>
    <startDate>2017-04-26T05:26:32.618+0000</startDate>
    <completionDate>2017-04-26T05:26:34.424+0000</completionDate>
    <log>Uploading artifact [/tmp/ot-20170426T072632621.1/Archive.zip]
</step>

Надеюсь, это проясняет, как указать значение для stepPath в XL Deploy.

Подход заключается в том, чтобы сначала получить блоки задач:

curl -uadmin:password http://localhost:4516/deployit/tasks/v2/28830810-5104-4ab9-9826-22f66dee265d

Оттуда вы можете использовать идентификатор блока, чтобы перечислить шаги для определенного блока:

curl -uadmin:password http://local6/deployit/tasks/v2/28830810-5104-4ab9-9826-22f66dee265d/block/0_1_1/step

Там будут перечислены шаги, и вы можете использовать порядок этого списка для определения пути шага, т.е. шаги нумеруются внутри блока, начиная с 1.

Таким образом, первый шаг в блоке 0_1_1 имеет путь 0_1_1_1.

Другие вопросы по тегам