Настройте значение удержания подов плагина jenkins kubernetes с помощью Groovy

Попытка настроить значение удержания подов для плагина Jenkins Kubernetes с помощью Groovy-скрипта. Метод kubernetes.setPodRetention(org.csanchez.jenkins.plugins.kubernetes.pod.retention.Podretention.Never()) не удается настроить из-за ошибки ниже:

Недопустимое значение, указанное в основной конфигурации. Нет сигнатуры метода: static org.csanchez.jenkins.plugins.kubernetes.pod.retention.PodRetention.Never() применимо для типов аргументов: () значения: []

попробовал настроить, используя разные значения для метода: kubernetes.setPodRetention(org.csanchez.jenkins.plugins.kubernetes.pod.retention.Never)

Ошибка при использовании указанного выше значения.

Пожалуйста, помогите мне с этим, так как я был поражен этим с самого начала.

Ниже приведен код:


    import java.util.logging.Logger
    import hudson.*
    import hudson.model.*
    import java.io.PrintWriter
    import java.io.StringWriter
    import jenkins.*
    import jenkins.install.InstallState
    import jenkins.model.*
    import jenkins.util.xml.*
    import javax.xml.xpath.*
    import com.cloudbees.plugins.credentials.*
    import com.cloudbees.plugins.credentials.impl.*
    import com.cloudbees.plugins.credentials.common.*
    import com.cloudbees.plugins.credentials.domains.*
    import com.cloudbees.jenkins.plugins.sshcredentials.impl.*
    import org.jenkinsci.plugins.plaincredentials.impl.*
    import org.jenkinsci.plugins.docker.commons.credentials.*
    import org.csanchez.jenkins.plugins.kubernetes.*
    import org.csanchez.jenkins.plugins.kubernetes.pod.retention.PodRetention

    KubernetesCloud kubernetes = new KubernetesCloud('test')
    kubernetes.setServerUrl('http://test_url')
    kubernetes.setMaxRequestsPerHostStr(20)
    kubernetes.setPodRetention(org.csanchez.jenkins.plugins.kubernetes.pod.retention.PodRetention.Never())
    kubernetes.setWaitForPodSec(90)

// ссылка на документацию

https://javadoc.jenkins.io/plugin/kubernetes/

// Используемый метод setPodRetention(PodRetention podRetention) Устанавливает глобальную политику хранения подов для плагина.

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

1 ответ

Вам не хватает нового ключевого слова, необходимого для создания объекта. Линия

    kubernetes.setPodRetention(org.csanchez.jenkins.plugins.kubernetes.pod.retention.PodRetention.Never())

Должно быть

    kubernetes.setPodRetention(new org.csanchez.jenkins.plugins.kubernetes.pod.retention.PodRetention.Never())

Чтобы настроить глобальную политику хранения подов, перейдите по https://jenkins_url/configure (или https://jenkins_url/configureClouds в последней lts-версии jenkins) и обновите конфигурацию "Pod Retention", сгруппированную в Kubernetes Cloud.

Другие вопросы по тегам