Size: a a a

2020 September 14

DS

Dmitry Sergeev in jenkins_ru
myname mylastname
Есть такой кусок кода проверки SMTP - Jenkins не может распарсить переменную ${shared_id_email} - она всегда нулевая:

sh('''
   spawn telnet smtp.site.com 25
   expect -re ".*>"
   send "ehlo site.com\r"
   expect -re ".*>"
   send "mail from:${shared_id_email}\r"
...

Как правильно ее прописать, чтобы Jenkins ее понял?
так переменная то есть или нет? Чему равна? С bash знаком? Что значит нулевая? это null, 0 или ""?
источник

mm

myname mylastname in jenkins_ru
Dmitry Sergeev
так переменная то есть или нет? Чему равна? С bash знаком? Что значит нулевая? это null, 0 или ""?
Определена. ""
источник

DS

Dmitry Sergeev in jenkins_ru
myname mylastname
Определена. ""
ну значит будет у тебя send mail from:
источник

E

Elenhil in jenkins_ru
unixshaman
Можно как-то узнать, кто выключил проект? Т.е. нажал на кнопку disable в pipeline?
Надо плагин джоб хистори
источник

u

unixshaman in jenkins_ru
Elenhil
Надо плагин джоб хистори
Спасибо большое! Попробую.
источник

VD

Viacheslav Dubrovsky... in jenkins_ru
myname mylastname
Есть такой кусок кода проверки SMTP - Jenkins не может распарсить переменную ${shared_id_email} - она всегда нулевая:

sh('''
   spawn telnet smtp.site.com 25
   expect -re ".*>"
   send "ehlo site.com\r"
   expect -re ".*>"
   send "mail from:${shared_id_email}\r"
...

Как правильно ее прописать, чтобы Jenkins ее понял?
кавычки ''' на """ заменить
источник

mm

myname mylastname in jenkins_ru
Viacheslav Dubrovskyi
кавычки ''' на """ заменить
Спасибо, да, это могло бы быть причиной, но оказалась в силу нескольких несвязанных ошибок, а именно: spawn is an expect command. It will not work if your interpreter is /bin/bash.
источник
2020 September 15

NG

Nick Galko in jenkins_ru
Igor Scherbovich
Я нашел информацию о том, что Jenkins приветствует настройку агента специально под проект.
Но мне кажется такой подход сомнительным
Я так использую. Но это скорее связано тем, что у меня время доставки Билла большое
источник

M

Max.d 🤖 in jenkins_ru
Nick Galko
Я так использую. Но это скорее связано тем, что у меня время доставки Билла большое
Какого Билла?
источник

NG

Nick Galko in jenkins_ru
Max.d 🤖
Какого Билла?
Было *
источник

M

Max.d 🤖 in jenkins_ru
А, лол
источник

NS

N S in jenkins_ru
Hi I need help
источник

NS

N S in jenkins_ru
In groovy script
источник

NS

N S in jenkins_ru
I have clean build which cleans job builds
источник

NS

N S in jenkins_ru
import jenkins.*
import jenkins.model.*
import hudson.*
import hudson.model.*
import groovy.time.TimeCategory
use ( TimeCategory ) {
 // e.g. find jobs not run in last 3 months
 sometimeago = (new Date() - 2.days)
 println(sometimeago)
}

//helper variables
jobs = Jenkins.instance.getAllItems()
lastabort = null
job2delete = []
night = false

//files to write
file_result = new FilePath(build.workspace, 'job_result.txt')
file = new FilePath(build.workspace, 'job_to_delete.txt')

//getting times for night calculation
nBegin = Integer.parseInt(nightlybegin)
nEnd = Integer.parseInt(nightlyend)
current = new Date()

//Checking for night hours
if (current.getHours() >= nBegin){
night = true
}
if (current.getHours() < nEnd ) {
night = true
}

//running through jobs
jobs.each { j ->
 
  if (j.fullName.contains(ProjectPrefix+'preRel')) {
   check=true
 }
 else if (j.fullName.contains(ProjectPrefix+'preInt')) {
   check=true
 }  
 else {
   check=false
 }
 
 if (check) {
   numbuilds = j.builds.size()
   if (numbuilds == 0) {
       println 'JOB: ' + j.fullName
       println '  -> no build'
       if(!night) {
           println '    -> it is day : Job will not be deleted yet'
       }
       if(night) {
         if(j.isBuilding()) {
        println 'Job is building, I do not delete it'
       } else {
        job2delete.add(j.fullName)
        }
       }
       return
   }

   lastbuild = j.lastBuild
   println(lastbuild.timestamp.getTime())
   if (lastbuild.timestamp.getTime() < sometimeago) {
     println 'JOB: ' + j.fullName
     println '  -> lastbuild: ' + lastbuild.displayName + ' = ' + lastbuild.result + ', time: ' + lastbuild.timestampString2
     if(j.isBuilding()) {
      println 'Job is building, I do not delete it'
     } else {
      job2delete.add(j.fullName)
     }
     return
   }
 }
}

if (job2delete.size() > 0) {
  listOfJobsAsString = ""
job2delete.each {
      job = "$it"
 println "wrote: $job to job to delete"
 listOfJobsAsString = listOfJobsAsString + "$job\n"
}
  file.write("$listOfJobsAsString", null)
   file_result.write("NUMBER_OF_JOBS=" + job2delete.size(), null)
}
else {
 file.write('JOB2DELETE=NONE', null)
 file_result.write('NUMBER_OF_JOBS=0',null)
}
источник

NS

N S in jenkins_ru
If the job fail or slave offline clean build job stops
источник

NS

N S in jenkins_ru
If slave node is offline it should to other node and clean the build jobs
источник

NS

N S in jenkins_ru
Here my job if the job fail incase any reason it stops
источник

NS

N S in jenkins_ru
Cleaning other jobs
источник

NS

N S in jenkins_ru
How to write the logic in groovy script
источник