Почему атрибут по умолчанию для числовых полей не работает для конфигураций Jenkins jelly?

Я работаю над плагином Jenkins, где мы делаем вызов удаленной службе, используя Spring RestTemplate. Чтобы настроить значения времени ожидания, я настраиваю некоторые поля в глобальной конфигурации, используя файл global.jelly для плагинов Jenkins, используя числовое поле, как показано здесь:

<f:entry title="Read Timeout" field="readTimeout" description="Read timeout in ms.">
    <f:number default="3000"/>
</f:entry>

Теперь это работает, чтобы сохранить значения и получить значения без проблем, поэтому похоже, что все настроено правильно для моего BuildStepDescriptor. Однако, когда я впервые устанавливаю обновление для экземпляра Jenkins, вместо 3000 в поле по умолчанию, как я ожидал, вместо этого я получаю 0. Это то же самое для всех полей, которые я использую.

Учитывая, что справочная библиотека тегов Jelly говорит, что этот атрибут должен быть значением по умолчанию, почему я продолжаю видеть 0 при первой установке плагина?

Есть ли еще какой-то код Java, который нужно добавить в мой плагин, чтобы связать значение по умолчанию в Jelly с глобальной конфигурацией?


person Hazok    schedule 18.06.2015    source источник


Ответы (1)


Я думаю, что когда Jenkins запускается, он получает XML-файл конфигурации плагина, но не может найти значение и устанавливает его по умолчанию равным 0.

Я обошел это в прошлом, установив значение по умолчанию в дескрипторе (в groovy), тогда это значение будет сохранено в глобальной конфигурации в первый раз, а также будет доступно, если пользователь никогда не посещает страницу конфигурации.

@Extension
static class DescriptorImpl extends AxisDescriptor {
    final String displayName = 'Selenium Capability Axis'

    String server = 'http://localhost:4444'

    Boolean sauceLabs = false
    String sauceLabsName
    Secret sauceLabsPwd
    String sauceLabsAPIURL = 
           'http://saucelabs.com/rest/v1/info/platforms/webdriver'
    String sauceLabsURL = 'http://ondemand.saucelabs.com:80'

из здесь< /а>

person KeepCalmAndCarryOn    schedule 18.06.2015