java.lang.InterruptedException, когда я жду доступности узла на Jenkins - PullRequest
0 голосов
/ 24 июня 2019

Я создал метод, похожий на myWaitNodeMethod('some name'):

def call(String nodeName) {
    def computer = Jenkins.getInstance().getComputer(nodeName).getNode().toComputer()
    computer.waitUntilOnline()
}

, который вызывается в начале конвейера, ожидающего полной доступности узла.Узел сконфигурирован в jenkins-ip:8080/computer

@Library('my-library') _

pipeline {
    agent {
        node {
            'master'
        }
    }
    environment { ... }
    parameters { ... }
    options { parallelsAlwaysFailFast() }

    stages {
        stage('Check status') {
            steps {
                script {
                    // start an EC2 instance as slave node and wait until it is fully available
                    myWaitNodeMethod('name-of-the-slave')
                }
            }
        }

Этот метод, однако, иногда дает сбой с ошибкой типа:

java.lang.InterruptedException
    at java.lang.Object.wait(Native Method)
    at hudson.model.Computer.waitUntilOnline(Computer.java:1560)
    ...

Возможно, поток потока на самом деле не захватывается из моегометод?Есть идеи, как это исправить?

...