моя работа на рабочем месте не позволяет мне передавать все параметры, только один, и мне нужны все - PullRequest
0 голосов
/ 20 марта 2020

Я использую это, но получаю только ОДИН ПАРАМЕТР, переданный заданию rundeck:

... $ {option.ticketnumber} ...

Я хочу ВСЕ параметры (не только ОДИН), чтобы я мог разобрать их в своем коде бесплатно и CLEAR of Rundeck.

Кто-нибудь хочет комментировать там?

Ответы [ 2 ]

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

Я запрограммировал все это, чтобы избежать ограничений интерфейса.

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

Вы можете обернуть свои шаги, используя данные ключ / значение с помощью регулярного выражения, чтобы сгенерировать набор переменных данных, таких как this для использования в вашем рабочем процессе (таким образом вы избегаете определения отдельных опций для передачи позже) , Вот пример определения задания:

Задание, которое генерирует значения данных:

<joblist>
  <job>
    <defaultTab>nodes</defaultTab>
    <description>Regex and data passing demo.</description>
    <executionEnabled>true</executionEnabled>
    <id>a0daf1e3-e918-43dc-b232-bc46a7a287b6</id>
    <loglevel>INFO</loglevel>
    <name>Regex</name>
    <nodeFilterEditable>false</nodeFilterEditable>
    <scheduleEnabled>true</scheduleEnabled>
    <sequence keepgoing='false' strategy='node-first'>
      <command>
        <exec>env</exec>
      </command>
      <command>
        <exec>echo ${data.SHELL}</exec>
      </command>
      <command>
        <exec>echo ${data.USER}</exec>
      </command>
      <command>
        <exec>echo ${data.PWD}</exec>
      </command>
      <command>
        <jobref name='AnotherJob' nodeStep='true'>
          <arg line='-option1 ${data.USER}' />
          <uuid>4932f9c7-a435-4332-8b1a-5ade41da9edd</uuid>
        </jobref>
      </command>
      <pluginConfig>
        <LogFilter type='key-value-data'>
          <config>
            <logData>true</logData>
            <regex>^(SHELL|USER|PWD)\s*=\s*(.+)$</regex>
          </config>
        </LogFilter>
      </pluginConfig>
    </sequence>
    <uuid>a0daf1e3-e918-43dc-b232-bc46a7a287b6</uuid>
  </job>
</joblist>

Задание, которое получает значения данных:

<joblist>
  <job>
    <context>
      <options preserveOrder='true'>
        <option name='option1' />
      </options>
    </context>
    <defaultTab>nodes</defaultTab>
    <description></description>
    <executionEnabled>true</executionEnabled>
    <id>4932f9c7-a435-4332-8b1a-5ade41da9edd</id>
    <loglevel>INFO</loglevel>
    <name>AnotherJob</name>
    <nodeFilterEditable>false</nodeFilterEditable>
    <scheduleEnabled>true</scheduleEnabled>
    <sequence keepgoing='false' strategy='node-first'>
      <command>
        <exec>echo "the user from Regex Job is ${option.option1}"</exec>
      </command>
    </sequence>
    <uuid>4932f9c7-a435-4332-8b1a-5ade41da9edd</uuid>
  </job>
</joblist>

Но чтобы получить его (передача) из другой работы, вам нужно установить отдельные опции, используя шаг задания с опцией в качестве аргументов.

...