Rundeck - HTTP-шаг API рабочего процесса - PullRequest
0 голосов
/ 27 марта 2020

В Rundeck у меня есть ряд шагов рабочего процесса HTTP POST. Есть ли способ сохранить токен API от начального шага входа в систему до последующих запросов? Можно ли это как-то сделать с фильтрами журналов?

1 Ответ

0 голосов
/ 27 марта 2020

Вы можете использовать значения данных для этого и вызывать их, используя ${data.MYDATAKEY} для шагов и @data.MYDATAKEY@ для встроенных скриптов.

Вот вам пример:

<joblist>
  <job>
    <defaultTab>nodes</defaultTab>
    <description></description>
    <executionEnabled>true</executionEnabled>
    <id>f9b4b925-3078-4668-bdf5-79e25173a183</id>
    <loglevel>INFO</loglevel>
    <name>HiWorld</name>
    <nodeFilterEditable>false</nodeFilterEditable>
    <plugins />
    <scheduleEnabled>true</scheduleEnabled>
    <sequence keepgoing='false' strategy='node-first'>
      <command>
        <description>generate token step</description>
        <fileExtension>.sh</fileExtension>
        <plugins>
          <LogFilter type='key-value-data'>
            <config>
              <logData>true</logData>
              <regex>^(MYTOKEN)\s*=\s*(.+)$</regex>
            </config>
          </LogFilter>
        </plugins>
        <script><![CDATA[echo "MYTOKEN=12345"]]></script>
        <scriptargs />
        <scriptinterpreter>/bin/bash</scriptinterpreter>
      </command>
      <command>
        <description>print token or use on any step</description>
        <fileExtension>.sh</fileExtension>
        <script><![CDATA[echo "the token is @data.MYTOKEN@"]]></script>
        <scriptargs />
        <scriptinterpreter>/bin/bash</scriptinterpreter>
      </command>
    </sequence>
    <uuid>f9b4b925-3078-4668-bdf5-79e25173a183</uuid>
  </job>
</joblist>

Таким образом, вы можете использовать тот же токен API, определенный в качестве опции данных в вашем определении задания. Проверьте this , чтобы узнать больше о том, как работать.

ОБНОВЛЕНИЕ: я изменил пример определения задания, теперь генерирую токен (смоделированный) и использую его позже на любом шаге рабочего процесса.

...