Как мне прочитать строки из файла и сохранить их в массиве groovy? - PullRequest
0 голосов
/ 07 июня 2019

Я пытался прочитать IPADDRESSES / HOSTNAMES из файла и сохранить каждый IP-адрес в отдельном элементе массива в Jenkinsfile.Какие шаги я попробовал, ниже.

def absoluteFilePath = "/root/myhosts"
def fileContent = readFile(absoluteFilePath)
String[] listOfServers = fileContent.split('\n')            
for (int i = 0; i < listOfServers.size(); i++) 
{                           
def remote = [:]    
remote.host = "${listOfServers[i]}"    
remote.name = "node-1"    
remote.allowAnyHosts = true    
sh 'ping -c 4 ${listOfServers[i]}'    
}

*Also:   hudson.remoting.Channel$CallSiteStackTrace: Remote call to Anurag_CentOS
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1741)
at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:357)
at hudson.remoting.Channel.call(Channel.java:955)
at org.jenkinsci.plugins.sshsteps.steps.CommandStep$Execution.run(CommandStep.java:71)
at org.jenkinsci.plugins.sshsteps.util.SSHStepExecution$1.call(SSHStepExecution.java:73)
at hudson.security.ACL.impersonate(ACL.java:290)
at org.jenkinsci.plugins.sshsteps.util.SSHStepExecution.lambda$start$0(SSHStepExecution.java:68)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
com.jcraft.jsch.JSchException: Auth fail
at com.jcraft.jsch.Session.connect(Session.java:519)
at com.jcraft.jsch.Session.connect(Session.java:183)
at com.jcraft.jsch.Session$connect$1.call(Unknown Source)
at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1022)
at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:69)
at java.lang.Thread.run(Thread.java:748)
Finished: FAILURE*
...