Почему я не могу запустить командный файл в конвейере jenkins, работающем в Windows 10? - PullRequest
0 голосов
/ 05 ноября 2018

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

stage('batchscript') {
 steps{
bat 'start cmd.exe /c C:\\Program Files (x86)\\Jenkins\\workspace\\jenkins Project\\batchfile.bat'\
}
}

когда я создаю задание, оно должно открыть новое командное окно и запустить мой командный файл в новой командной строке, выполнив все команды bat. Сборка прошла успешно, но окно команд не открывается. Любое предложение будет полезным

1 Ответ

0 голосов
/ 05 ноября 2018

Jenkins предназначен для выполнения команд оболочки в режиме background , а не в режиме интерактивный .

Одна строка

Если вам нужно выполнить простые командные команды с jenkins:

stage('build') {
      cmd_exec('echo "Buils starting..."')
      cmd_exec('echo "dir /a /b"')
}

def cmd_exec(command) {
    return bat(returnStdout: true, script: "${command}").trim()
}

Вот расширенный пример:

Многострочный

steps {
  echo 'Deploy to staging environment'

  // Launch tomcat
  bat """
    cd c:\\qa\\bin
    dir /a /b
    startup
  """

  bat """
    cd c:\\qa\\bin
    startup
  """

  // Code to move WAR to Tomcat
  bat "xcopy /y c:\\webapp\\target\\webapp.war ..."
  bat "xcopy /y c:\\webapp\\target\\webapp.war ..."
}
* * Пример тысяча двадцать-один: * * 1 022

Вызвать пакетный файл

Если вам нужно выполнить командный файл с jenkins:

stage('build') {
  dir("build_folder"){
      bat "run_build_windows.bat"
  }
}

или

stage('build') {
  bat "c://some/folder/run_build_windows.bat"
}

Пути к Windows иногда странные: с. В любом случае, linux - лучший выбор для размещения jenkins.

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