2012-06-25 1 views
3

Я пытаюсь создать Jenkins (v1.47), чтобы построить проект, используя ClearCase UCM (v1.1.2) plugin.Почему модуль ClearCase UCM в Jenkins не может найти какой-либо исходный код?

С следующей конфигурации (имена изменены, чтобы защитить невинных):

Stream: [email protected]\company_pvob<br/> 
Component: [email protected]\company_pvob<br/> 
Promotion level: INITIAL 

я получаю следующий результат:

[CCUCM] * Stream: [email protected]\company_pvob 
[CCUCM] * Component: [email protected]\company_pvob 
[CCUCM] * Promotion level: INITIAL 
[CCUCM] Removed 45 of 45 Baselines. 
[CCUCM] No valid baselines found 

я могу увидеть в моем ClearCase клиента, что существует ровно 45 базовые линии, все в уровне продвижения INITIAL, для этого потока и компонента.
Так что плагин, очевидно, находит, а затем отбрасывает их.

Но почему?
Я ожидал, что последний будет поднят, почему все они отвергнуты?
Следует отметить, что если я изменю конфигурацию с «INITIAL» на «ALL», это не имеет значения, происходит то же самое.

ответ

3

Это сообщение продуцируется net.praqma.hudson.scm.CCUCMScm#pollStream() method

Он называет filterBaselines(), которые удалены все «deliver.xxx» базовые уровни или немаркированные исходные условия.

private int filterBaselines(List<Baseline> baselines) { 

    int pruned = 0; 

    /* Remove deliver baselines */ 
    Iterator<Baseline> it = baselines.iterator(); 
    while(it.hasNext()) { 
    Baseline baseline = it.next(); 
    if(baseline.getShortname().startsWith("deliverbl.") || baseline.getLabelStatus().equals(LabelStatus.UNLABLED)) { 
     it.remove(); 
     pruned++; 
    } 
    } 
    return pruned; 
} 

Если все исходные данные были получены путем доставить операции, что бы объяснить, почему плагин удаляет их из возможных исходных линий, чтобы выбрать для сборки.

+0

Спасибо VonC, они действительно все начинают с «доставитьbl.». Но (и это вопрос новичка ClearCase), почему он не может использовать какой-либо базовый уровень, созданный с помощью операций доставки? –

+0

@YannisLionis - это технические * немеченые * базовые линии, установленные ClearCase в начале операции доставки, в основном для неясного понятия «временной шкалы» и для связывания действий (которые должны быть доставлены) вместе. Так как они немечены, они не подходят для переустановки. См., Например, пункт 3 из http://www-01.ibm.com/support/docview.wss?uid=swg21255440. – VonC

+0

@YannisLionis, как упоминалось в http://stackoverflow.com/a/1644109/6309, эта временная шкала, созданная с помощью базовой линии (включая те немеченые «базовые линии« deliverbl.xxx ») имеет некоторый неудачный побочный эффект (в перспективе вам разрешено доставлять: в некоторых случаях у вас нет другого выбора, кроме как доставить * все * из них) ... – VonC

Смежные вопросы