2016-04-18 10 views
1

У меня есть некоторые большие Баш скрипты в моей работе файлов Dsl что я объявляющие, какПоложитесь на другие файлы из Дженкинс работы Dsl сценария

String script = ''' 
    # large script 
''' 

и призывающих его от метода shell

shell(script) 

Как когда-либо, я хотел бы вырвать скрипты в файлы оболочки. Я попытался объявить

String script = new File('script.sh').text 

Но работа, которую выполняет Dsl сценарий Дженкинс работы не появляется, чтобы найти файл, на самом деле я не уверен, какое место она даже исполнение из.

ответ

1

Используйте readFileFromWorkspace, чтобы прочитать содержимое файла из рабочей области.

Путь указан относительно корня рабочей области.

Второй пример в связанных API-документах выше для пакетного файла, но замените пакет с оболочкой, и у вас есть решение для вашего дела.

def runScript = readFileFromWorkspace('script.sh') 
job('example-2') { 
    steps { 
     shell(runScript) 
    } 
} 
+0

Супер! Работает как шарм! :) – Theodor