IFraming удаленный контент на странице проекта (из URL в consoleoutput)?

Все,

У нас есть тестовое приложение, которое создает свои собственные отчеты в веб-панели, которые мы хотели бы добавить на страницу проекта Hudson для сборок. В настоящее время приложение выводит URL-адрес этой страницы в журнал консоли.

То, что я хотел бы сделать, это извлечь URL из журнала консоли, а затем добавить содержимое в конечной точке URL на страницу проекта для этой сборки (возможно, IFrame?).

Есть ли простой способ сделать это? Существующий плагин возможно? Возможно, конфиг, который я пропустил? Я приезжаю в Гудзон из Cruisecontrol, и я все еще сталкиваюсь с различиями.

Благодарю.

2 ответа

Решение

В итоге я решил создать собственный плагин, который проанализировал журнал консоли, создав ArrayList URL-адресов, и добавил "действие" в верхний левый столбец. Оттуда я мог бы извлечь каждый URL из моего 'bean' (эффективно упаковщика ArrayList). После этого это был просто кусок Jelly для создания каждого iFrame на странице Jenkins. Однако я добавил немного Javascript на страницу Jelly, поскольку высота iFrames по умолчанию мне не пригодилась.

Желе:

<script type="text/javascript">
 function resizeFrame(f) {
  var i = document.getElementById(f);
  var s;
  s = 100;
  i.style.height = s;
  s = i.document.body.clientHeight;
  //Some odd Javascript re-sizing here, works fine in the debugger..
  var ss = s/2.5;
  i.style.height = ss+"px";
}
</script>

<table width='100%'>
   <j:forEach items="${it.result.getHtmlLogPath()}" var="i" indexVar="index">
    <tr>
       <td width='100%'>    
         <iframe id="myFrame${index}" src="${i}" width="100%" frameborder="0" onload="resizeFrame('myFrame${index}');"/>
       </td>
    </tr>
  </j:forEach>
</table>    

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

Должна быть возможность создания сценария редактирования описания сборки по HTTP POST: в форме ${BUILD_URL}/submitDescription:

curl --data description="<a href=\"http://foo.bar.com\">foo</a>" ${BUILD_URL}/submitDescription

Описание сборки будет отображаться в истории сборки слева, поэтому вы можете захотеть сделать ее короткой.

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