Инструменты пользователя

Инструменты сайта


jenkins:pipeline

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
jenkins:pipeline [2025/02/02 12:05]
admin
jenkins:pipeline [2025/02/12 04:29] (текущий)
admin
Строка 24: Строка 24:
 Объявление через объект **"env.<MY_VAR>"** создает переменную окружения причем сразу **глобальную**\\  Объявление через объект **"env.<MY_VAR>"** создает переменную окружения причем сразу **глобальную**\\ 
  
 +**Тип переменной**
 +<code groovy>
 +script {
 +  def variable="dcdcd"
 +  println variable.getClass()
 +  sh "echo ${variable.getClass()}"
 +  //println $variable.getClass() - error
 +  //println ${variable}.getClass() - error
 +}   
 +</code>
  
  
 ===== Sh ===== ===== Sh =====
 +Выполнение команд совместно с **echo**\\
 +<code groovy>
 +// Работают все три варианта
 +sh """
 +  echo "`pwd` myvar1 - ${my_var}"
 +  echo `pwd`" myvar2 - ${my_var}"
 +  echo "\$(pwd) myvar3 - ${my_var}"
 +"""
 +</code>
  
-==== Переменные ==== 
  
 +
 +==== Переменные ====
 Нужно экранировать знак **$** при использовании локальных переменных\\ Нужно экранировать знак **$** при использовании локальных переменных\\
 <code groovy> <code groovy>
Строка 46: Строка 66:
 """ """
 </code> </code>
 +
 +
 +Переменные в подоболочке (выполнение команд с подключением по ssh)\\
 +В таком случае доступны только переменные из Groovy, объявленые в блоке "sh" недоступны\\
 +<code groovy>
 +script {
 +  MY_VAR1="groovy-my-var"
 +  sh """
 +    MY_VAR2="shell-my-var"
 +    echo "pre - $MY_VAR1 - \$MY_VAR2"
 +    ssh user1@1.1.1.1 'echo "$MY_VAR1 - \$MY_VAR2"'  # Здесь доступна только $MY_VAR1
 +  """
 +}
 +</code>
 +
  
  
jenkins/pipeline.1738497933.txt.gz · Последнее изменение: 2025/02/02 12:05 — admin