Как передать переменную стадии конвейера в makefile - PullRequest
0 голосов
/ 24 апреля 2019

Я вычисляю значение локальной переменной (S_STACK_ID) внутри динамической стадии конвейера Дженкинса Мне нужно передать переменную S_STACK_ID в make-файл, чтобы его можно было использовать в make-файле для уникальной идентификации стека ECS, который будет развернут

Я попробовал приведенный ниже код, но он пропускает пустое 'ARGS' в makefile

stage('build') {
            steps {
                script {
                    def stages = [failFast:true]
                    for (int i=1; i<5; i++) {
                            stages["LG ${i}"]={
                                stage ("LG ${i}"){
                                    S_STACK_ID=env.STACK_ID+i
                                    withCredentials([[
                                        sh 'make ARGS="${S_STACK_ID}" build'                                        
                                    }
                                }
                            }
                    }
                        parallel stages
                }
            }
        }

 sh 'make ARGS="myStack" build'  //This correclty passes "myStack" to makefile 

 sh 'make ARGS="${S_STACK_ID}" build' // Passess blank to makefile and not the value of S_STACK_ID which is an issue for me

Спасибо

1 Ответ

0 голосов
/ 29 апреля 2019

Это работает как "", необходимые для команд оболочки для интерполяции строковых литералов

sh "make clean \" ARGS = $ {S_STACK_ID} \ ""

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...