Как я могу прочитать переменную конвейера Jenkins в многострочной оболочке?

Я пытаюсь создать конвейер Jenkins, в котором мне нужно выполнять многострочные команды оболочки.

stage ('Test'){
name="myserver"
sh '''
    "ssh -o StrictHostKeyChecking=no ${myserver} 'rm -rf temp && mkdir -p temp && mkdir -p real'"
'''

}

Но всегда выдает ошибку "команда не найдена". Если я запускаю то же самое с

sh "ssh -o StrictHostKeyChecking=no ${myserver} 'rm -rf temp && mkdir -p temp && mkdir -p real' "

Есть ли другой способ доступа к переменной в многострочной оболочке?


person Sreehari    schedule 18.06.2018    source источник
comment
Возможный дубликат В чем разница строк в одинарных или двойных кавычках в groovy?   -  person mkobit    schedule 18.06.2018


Ответы (1)


Вам нужно использовать """ следующим образом:

sh """
    "ssh -o StrictHostKeyChecking=no ${myserver} 'rm -rf temp && mkdir -p temp && mkdir -p real'"
"""
person Tomas Bjerre    schedule 18.06.2018