Я использую Jenkins Pipeline с песочницей Groovy. И я пытаюсь запустить сценарий оболочки в функции groovy sh.
Оригинальный сценарий оболочки
sed -i 's/sometext/'"${othertext}"'/' filename
Я пытаюсь заменить определенный текст другим текстом (взятым динамически). Скрипт отлично работает при прямом выполнении. Но я хочу использовать его в функции jenkins groovy sh.
sh(script: '<above shell script>', returnStdout:false)
Но есть проблема с экранированием символов. Я пробовал этот способ экранирования персонажа
sh (script: '''sed -i 's/sometext/othertext/' filename''', returnStdout:false)
Он отлично работает, но othertext
не берется динамически. Может ли кто-нибудь помочь мне в экранировании символов с помощью оригинального сценария? Или, пожалуйста, предложите любой другой способ сделать это.