OEPUOUNBNTHTFZVDXREGBQCKFRCWMVP2MDVK4OA47VK2DBKEWVYAC VRDK2P3XKHNQLIIOTLWHTJXIYAYV7ZSAA2P4AUKGQAD3UTRLWJNAC 23QNCJF2MINQEAMVPD5KMI4GY2BEUMP57G7TG7HPIII2XZY4GZIAC 2RGAZCKYYYPTVBTQRLUY6PLOAKRVIXA2M3BMCHTXWUY3F7KOKXHAC JLICHVE674VIYYLAKDWYO7RZ7YREVPDYR3DRRJ57DXR2OVHP34CQC PUIJ66FVMETVDWZFJ4OFXHD3Q4BGDQNAHIJK4NRQ44Y7TOYHXEGQC 6VPKJTKNRNLESJOV66ZUJSGN6YNI3UDRBFE2FV35LD2OR64CQDPAC JLVKTWLTT2KEQJ4VCUHWKKC5MZIX4O3Z2OOGCYEDNT5AJ3TFR3LAC SMTMFEKEB3YQU3X7NUA5FZ7KEW2BVTLNV2SF3SJFZ5XLU57QGYFAC BIZEPF2TVVOBPLUDU7BOUYRUXVQDGWI3IBAQKXRLNXPSCSK47BUQC 3JBUMW3ECBQ5OARJEWPD7U5LIAIVGVMZUB7VG3ZLEWA3AV5EXDKQC LL36GPHADRAVU6XM5J2QXBSG5YXXETVTIA3EAINY67W7ECMKN6IQC ULNQG7OXOB4IALHAAMKP4E6WTBDHRZDBMYL6M6MC3TUJBVFXRKZAC 7G5RWHB7MRELVG2X5VXQE2T2JROZQNUQPTUIIVOHUQIIXBZIDZOAC IZWCANCVXLEUV3EGHYLAOOANLCZI3YC5WJTFUZT6JRTBDOWKVA4QC 63A26BM2AJI2N4MHB7B4TNJJYB7CYG5VSSWVKTYTTEH3XE2PJ2KAC L7NUCXKSELV2XQBSETAN2KSXN5ONX3ESJDHZL6737LMK4KPGQANQC XZJFZSCJFIKTKKZ6ZMR4RVZTGLN6M34I75PQIJ35ANWC3OV6U2XAC FV2M6MOTAP4BJMEKU5XUDVEACWEJGEIRCCE2MRY3F6SF2SFOE3MQC ZWCTAZGLJZQNTYWTC2XQUKMILJF6JGDL5IND6QNYWK4FIGMLRFXAC HI6VU2PNPFLYN5MEQOOQ53UQAO4GOJMUYRO4NZJA7ENI777JRDHAC 67NFGL7DFEKIS7D7HC72XJ5CET6SE6AOE5F37XXFTBU6GZAZ64HQC CEARA7OHINXEQLCVPJ3SP5NJLGMFYXH5UEPDZ5BQ57SBJXHLQESAC ZI535LI6PJMKSOBJE33B3RRZ5S2JVTR3XPUDTSXJW6BZNTAHS3GQC J5UVLXOK6EDIL5I7VKWH4V2QDS4DPD7FHRK6XBWSXFRQS4JKXFZQC ZDF42B24QLJDMNGUA47MROKMM3HNJTBWYSTRAKIHTBMWOKVMOFJQC 3SQCOHZNX4XUQU3KW6DXP65EQ2KHYZN6LTKVSKBXPTY4J3FKU2JQC 2R7GHSA4NUXPRWRPVXYDYWFIVVJGSUWUI2IPJGFN6ILZIAZGXGCAC JBUTIGW7Y5NVOPIGB3XXT74O6QG7HGRM6YQPE7JTFOFLUSSTXREAC 22JB5HNESA5OX5ABFISGCJCO6R7GF3AUTXDHGAT3PM7IDVIBKWWAC LQNG45RTWXKVR3NGXI42LHG3PPUPVP3RAPSHMVSNG6TGB747ATCQC TW5ZQX5ZT5EZP4ZQYB5Y53YC6VDOXC56ZDX5IFQIMO47OEGHR5ZAC KAZWI5G4DN2WUW7L2KWZR3D3QQJON4ISQYP7CRLC5HAOPIDYQGRQC XHK7IGYISKWLHOOM3ZQAVLSRUNS2SV43TTKRX4XLPZZJ4DP3RWYAC CLJQCY2XHIDNNMFBJ5PK3GQEN6RFALEFKXBJRWZPEIKR4PR5ZQ5AC 67P45PY4GTWQXZRCMR734D5YYN2OERZM57NBB2CZXEULQT2GRFNAC VCOSLZRPLRS3ITD2JIPKZPMTCEPHN4WEFKTE5TKH3RAZ7WJKMQ4AC TCXFZZFNJAO6UBBRHJLBXHDPCCKTXIPVFJ3YCDIBS4W7ZJTAI4NAC BHZXGT2HWAMFNVBUDG7VR5HNA2SUJBUSMWB7EHTECB4QJ5HVYANAC WRIU3S5EO3RB3IM5PUDNHLOOMUPD5UKWNUL4YMAKD3C6O4KELJCAC U4TD3AIQXBJFFUORTMIC4IHZTVBORRKL2TZ2FSP4G665ECZOEMNAC IK53RV4VGOHLCZGQCCIKPB45M3C7M7YMNBOJFBGZJ4LWIZNU4QNQC JLDUSNUOOQNL63BOPXIWZOWFRQ5X35RWG33PJB3J3KMR6QR7TN7QC ODNCGFQ5FPKFI624BVMLW7PJ2EFJOR3TY66OCZM42UNNTWBCF2TQC X5OIC5FFAUJDDVTBXUEVTLXHMT4PI2HSLO6YK7NPJLZHHRQIL3KAC SMCOU72FKTPFNCDXFJAILVUWFE4DY33CJJE4436H5POKENFFDFFAC TMP2FRIWXSSLCWOODKHRCVVCF26O7IXGB5KERZNOL5P5L26SHKMQC G6HJY2V4CSSZF6BPIMRMRAJYRKPLTCBUFTJWZWK3BSNT235CZQ6QC 75XUS62YF7OK4S45RCZ5OOASXEBIEDNDBYEEMOCBDHVXV4GA3NLQC QL55ECJ6KMMBUOWQ6LKSOVN7L43CH4S6SPE2AQ3VX3KSGC32RP4AC HUH62VDLCGY5OZWD6SZG7I2EUKDS5HCL4DKOLXDTFTVR3PHIMV6QC AKAXJDMWEPMXMUY5R53AOVYAGSV42ZZ53URH7HAPUB5KZZV56TPAC G5YSUSNZCQCKYKR267EZ63E3KIW42R2YZPY2CMIJPYAHPNW3KY3QC TJPIS3UPRE4ZIPXGRO7B4KOPR7P6UDYWUKCNY6UHJQEQDXWS4XVAC ELABMHJIZYVLS4JFM36XS4YS4UP32NPFCTUWX5XOKBL6S5FIB3UQC RSEGBU6CIEDRNTL7R6Q7RF2IZGCN3HH6VTPGFBKD77LSHEUD6EKAC YTSIRIMKV2EN6CMO6LFX5J3NBJJYWBJKYDU3Z53CGXCIWP3FYI2QC BA46C5LNEQ57N52IJTCEXW4J74F33KKNYHYXE6ZJLQ5ARMCJPUHAC QB3LWT7NPX4I44HRXBVRHSCBXW3AVA5EW3ICGJCT4TXDDRRRDWYAC F2YSY4BKQD4Y5XSSIOHAZVH5OQOEYDZJDXCY2JHHFPNRSUIUULSAC YJAHR4FUF7HYQXY4BAXJ6DSSFA4FQS6WCHO3XSYC6AVGD36WEU4AC FKK2ZSTL6YIE5HYVRYIKFSXETHD2S6R32QGPAQPVGVW5FFQZBUSAC HRAFVVOEGQJQS4XQNZSMNYN2SUZGKEGPSJUDZUBMI2IN32WFNQ4QC UVMFS73TI6RARMAAGY2UVS5LCPZUKLQECXQQVER4F7S4BNUXQQ3AC LP66DSH2TK3MGDWBBRPWZ6H2DCTT5LS7HU34NKNSNTFZYOMONNNAC HJLYC7537T37E5AQ4Y4PYDBRLVIZVWYS4R7WPSLGO6SJPS6M6LMAC GN3JXNQSF2TQARUPPZJQUP5P4WQRIELDSVQYTIUFJ5KJKO5HXXSQC 4JPNFWRBFCFER74NDL3XZXNQ25YQCPD7E4XKYKF7VCWIESE56G4AC GCHNNFZPCYM3BPOCU5GASALJ6ONWMEVEEGVD7KKLTWC7YQKJ5KZAC TQKGQ5R36VOLLJ3SR2WWIQ6VSN245N3QG4JHI2ZCP5T6RXN3PJWAC JK2QWPH6EOQXGCADV7C5HSYRVWC5M53LAKVN26EMTLY65IKU3AEQC S66BOMVUACAUDSGSDWP7ZIXVMZSQHWXOZYVTB7ILUCWZ7DDFAKVAC SZYDW2DG5Z7BR3ICKWDXVUNSMCDSXMYZUB6FQ4W2B2FVZJD6PULQC JFZNAYJXKCMXYHGCLTRH7Q6TOFGJ4BT6332GONCWVYRLNMDDG3KAC GPRYAAFPVGMT7TMZILMR22FFUBB436CDM5GYVQJ7GL2H6J7WFH5QC NUIKDEHLDR4ANFZFRCWBAWZGFVMHCZ7PSMPPFVQJ3AAAAWAQQD4AC W6DC6K4INJQOJYR553ISCKZV7YIOGHEM3FZQPOLAPSZQ3KSJDMRQC 7YBYT2LQML2PKEO6UO4444AGSASS664UCDXW2YO3ALB7THQHCEBQC UWVMQIAC2HQNSG2JQOPZGUOCQ5V2JFP2F7RCTF3WJLK7NHSD5PAAC PC6UOHH72AUR64GFBIXXLKGP2CLEUWCI3E3QMKNYCZHRMNCHUDVAC SGNXIOI4SO56F4YCGVMGZZO3AYXGPDL4FL75RDXAK5Y22IYWPPAQC QTFVCDIFHTF36AGU4UGNCTWSHQYTM2KERXS26TPAJK7IDJHL7BVAC Z6MDQIGODVE7RXX5U5D64EEC2ZDEZ36Z4ZMPFYIHWBG42IXUDYFQC RBNQKATLSAKTGW2IRNB5CRV3SEH5F6E4BPVWX4BII7MH5TCIPINQC SIIXRVUE4G4HNIRGHVO7AUQMRRTVRGBPDMWER6LB63VFV4CWX2OAC HK32XC42XOS7JKJMFT3XJKPXVSI44SFGKUUSJIL5VGPIHYNNWXLAC JRU2LRPZ7PB2GHIY5FY2YW7KGFWPOMPGS6QGK7TE5HFHQQQ4YQIAC L7LFU6IQA7XLRG67U34INTUSYIWP66LFFJE43J6S3GMMQHXXFKRAC 2AUODJBTW2UJ47UB3SREZ7O7UTTJDQ4AGUQMPZAI4F3Y6BUF6LUQC PRNGXWJ3RSR67M5S6RLDAYRFGPBT3K2VR2BKDMPIUU7SRCC5RU7QC EFWN7JBV7YIHNMCA6ZGFRSHZIUQJ2EX57SWYGVT7ZRJCHPIM2R3QC FZVIDIEPIRHU47NWD47ORSVMCEJP6LLTFPVRFEOPONZSHUHF5R2AC BD3GRK4BQUGRQGTAILUITIH3RRSVUH6AKINVMMKYLBAAHAAUSB4AC JD27RBKM7ROBUKBEQDFSCPO3MDE2AFZ6DSSKFUPJ7IC2MCGDVFGAC H7CNGK4OJNRYZQGPLBGR72DULLEPFQ5UISF5J24D7IMA7SYW5LGQC DVNWJXWWZAR4LGE3FGGY64EW5U6GWH6MXXAALWPO3EMI4NO42ZXAC B72GLND4UQKSGNGIY4FA6HLQNFS42SKRXV5NHTHADUJRU73NELAAC SZZ3PFYFHYC6YUGS3VMTUZ7CKKKJHRBTA52P7ONZRSDJWW23SO5QC 2GK5DOU7ODF4WBSN3QTD3WIO52VTL2LOAXKGCDEMMAQPTEO4A4HAC MOCEUXZAS4CNZL2QDKGVTZCRZ6AMOO2WSFHJ4VPZPPPAXHANG4NAC MMDLWWZ2W2XVHHOTG2S5XCPITVNIJQ6F7GLCF2MKQANFNFEID7DAC K5BEBWKMPMTXDZTZECMJ32LCL354WMOM3RPEFWGHJFB3QH7FH6WAC I35CIZI7RMBRNCRF2Z3WWFWNMDSSDKU7YMBHGPPGZKPZ6PSRTV7AC YTZOC7C5N3JI3AOFPLT2UM7567XIKPSCMFKSESB6J4LNVVW3DOCAC GPHLV42M5EGNMSMFVZ54H3LY6QD5R4FE43565A7HJMI3V23FPDCAC A52HEFHQNVNF2OUSWDSUYVVXLYR2UFCGOORPCN27CJJYA4UDJA3AC KSVD6RAPQW57PJEN3VY5XFMSHMLKC5JN6BVVNA4GFNXTVGG3FZKQC QT4FO2HPUPOS72Y5UTILN5AOV7S47AGG7V32CT24NA7TOVP76NAQC FHF6IZJQPUQHY5QWQYRPZVDBRLHREWRHGNKVQDT7F3GQKKLZXJKQC PPJN6SDP3BIWOB5LB3B2F3HEWM4IG7WZMG7JICERVBR7CDMBOPOQC OZ5UBJEKYFW5WXAJ72IKTEZC7Z3FFFNCIBDPIDNM2CLINFSPYTTAC mkdir -p $(hydradir)/static/bootstrapcp -prvd $(srcdir)/static/bootstrap/* $(hydradir)/static/bootstrap
<ul><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Project').action_for('create')) content = "Create project" %]</li><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('users')) content = "Manage users" %]</li><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('news')) content = "Manage news" %]</li><li>Queue<ul><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('clear_queue')) content = "Clear all non-running builds from queue." confirmmsg = "Are you sure you want to clear the queue?" %]</li><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('clear_queue_non_current')) content = "Clear all non-running old builds from queue." confirmmsg = "Are you sure you want to clear the queue?" %]</li></ul></li><li>Caching<ul><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('clearfailedcache')) content = "Clear failed builds cache" confirmmsg = "Are you sure you want to clear the failed builds cache?" %]</li><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('clearvcscache')) content = "Clear VCS caches" confirmmsg = "Are you sure you want to clear the VCS caches?" %]</li></ul></li></ul>
<div id="generic-tabs"><ul><li><a href="#tabs-summary">Summary</a></li><li><a href="#tabs-information">Information</a></li><li><a href="#tabs-buildinputs">Build Inputs</a></li>[% IF relatedbuilds %]<li><a href="#tabs-relatedbuilds">Related builds</a></li>[% END %][% IF build.buildsteps %]<li><a href="#tabs-buildsteps">Build Steps</a></li>[% END %][% IF build.dependents %]<li><a href="#tabs-usedby">Used by</a></li>[% END%][% IF prevBuilds %]<li><a href="#tabs-history">History chart</a></li>[% END %]
<ul id="tab" class="nav nav-tabs"><li><a href="#tabs-summary" data-toggle="tab">Summary</a></li><li><a href="#tabs-information" data-toggle="tab">Information</a></li><li><a href="#tabs-buildinputs" data-toggle="tab">Build Inputs</a></li>[% IF relatedbuilds %]<li><a href="#tabs-relatedbuilds" data-toggle="tab">Related builds</a></li>[% END %][% IF build.buildsteps %]<li><a href="#tabs-buildsteps" data-toggle="tab">Build Steps</a></li>[% END %][% IF build.dependents %]<li><a href="#tabs-usedby" data-toggle="tab">Used by</a></li>[% END%][% IF prevBuilds %]<li><a href="#tabs-history" data-toggle="tab">History chart</a></li>[% END %]
<td valign="center">[% INCLUDE renderBuildStatusIcon build=prevSuccessfulBuild size=32 %] [% INCLUDE renderFullBuildLink build=prevSuccessfulBuild %]</td>[% IF prevSuccessfulBuild && firstBrokenBuild && firstBrokenBuild.id != build.id %]<td valign="center">[% INCLUDE renderBuildStatusIcon build=firstBrokenBuild size=32 %] [% INCLUDE renderFullBuildLink build=firstBrokenBuild %]</td>[% END %]<td>[% INCLUDE renderBuildStatusIcon build=build size=32 %] [% INCLUDE renderFullBuildLink build=build %]</td>
<td valign="center">[% INCLUDE renderBuildStatusIcon build=prevSuccessfulBuild size=32 %] [% INCLUDE renderFullBuildLink build=prevSuccessfulBuild, hideProjectName=1, hideJobsetName=1 %]</td>[% IF prevSuccessfulBuild && firstBrokenBuild && firstBrokenBuild.id != build.id %]<td valign="center">[% INCLUDE renderBuildStatusIcon build=firstBrokenBuild size=32 %] [% INCLUDE renderFullBuildLink build=firstBrokenBuild, hideProjectName=1, hideJobsetName=1 %]</td>[% END %]<td>[% INCLUDE renderBuildStatusIcon build=build size=32 %] [% INCLUDE renderFullBuildLink build=build, hideProjectName=1, hideJobsetName=1 %]</td>
<table class="buildList [% IF !unsortable %]tablesorter[% END %] [% IF !showSchedulingInfo %] clean[% END %]">
<table class="buildList table table-striped table-condensed [% IF !unsortable %]tablesorter[% END %] [% IF !showSchedulingInfo %] clean[% END %]">
<ul class="pagination"><li><a href="[% "$baseUri?page=1" %]">First</a></li><li [% IF page == 1 %]class="disabled"[% END %]><a href="[% "$baseUri?page="; (page - 1) %]">Previous</a></li><li [% IF page * resultsPerPage < total %]class="disabled"[% END %]><a href="[% "$baseUri?page="; (page + 1) %]">Next</a></li><li><a href="[% "$baseUri?page="; (total - 1) div resultsPerPage + 1 %]">Last</a></li></ul><!--
<h1>Job <tt>[% INCLUDE renderLinkuri = c.uri_for(c.controller('Project').action_for('view'), [project.name])title = project.name %]:[% INCLUDE renderLinkuri = c.uri_for(c.controller('Jobset').action_for('index'), [project.name, jobset.name])title = jobset.name %]:[% job.name %]</tt></h1><div id="generic-tabs"><ul><li><a href="#tabs-status">Status</a></li><li><a href="#tabs-channels">Channels</a></li><li><a href="#tabs-latestbuilds">Latest builds</a></li><!-- <li><a href="#tabs-statistics">Statistics</a></li> -->
<ul id="tab" class="nav nav-tabs"><li><a href="#tabs-status" data-toggle="tab">Status</a></li><li><a href="#tabs-channels" data-toggle="tab">Channels</a></li><li><a href="#tabs-latestbuilds" data-toggle="tab">Latest builds</a></li>
[% eval.get_column('nrSucceeded') %] / [% eval.get_column('nrBuilds') %]
<span class="label label-success">[% eval.get_column('nrSucceeded') %]</span><span class="label label-important">[% eval.get_column('nrBuilds') - eval.get_column('nrSucceeded') - eval.get_column('nrScheduled') %]</span>
<li><a href="#tabs-information">Jobset</a></li>[% IF jobset.errormsg -%]<li><a href="#tabs-errors">Evaluation errors</a></li>[% END %]<li><a href="#tabs-jobs">Jobs ([% activeJobs.size %])</a></li>
<li><a href="#tabs-information" data-toggle="tab">Jobset</a></li>[% IF jobset.errormsg -%]<li><a href="#tabs-errors" data-toggle="tab">Evaluation errors</a></li>[% END %]<li><a href="#tabs-jobs" data-toggle="tab">Jobs ([% activeJobs.size %])</a></li>
[% IF !edit && c.user_exists %]<p>[ <a href="[% c.uri_for('/jobset' project.name jobset.name 'edit') %]">Edit</a> | <a href="[% c.uri_for('/jobset' project.name jobset.name 'clone') %]">Clone</a> ]</p>[% END %]
[%#<div id="tabs-statistics"><h2>Statistics</h2>[% INCLUDE showBuildStats % ]</div>%]
<link type="text/css" href="/static/js/jquery/css/smoothness/jquery-ui-1.8.5.custom.css" rel="Stylesheet" /><link rel="stylesheet" href="/static/css/hydra.css" type="text/css" /><link rel="stylesheet" href="/static/css/nixos-site.css" type="text/css" /><link rel="stylesheet" href="/static/css/logfile.css" type="text/css" /><script type="text/javascript" src="/static/js/jquery/js/jquery-1.4.2.min.js"></script><script type="text/javascript" src="/static/js/jquery/js/jquery-ui-1.8.5.custom.min.js"></script><script type="text/javascript" src="/static/js/tablesorter/jquery.tablesorter.js"></script>
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.css" type="text/css" /><style>body {padding-top: 60px; /* 60px to make the container go all the way to the bottom of the topbar */padding-bottom: 60px; /* 60px to make the container go all the way to the bottom of the topbar */}</style><link rel="stylesheet" href="/static/bootstrap/css/bootstrap-responsive.css" type="text/css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script><script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script><script type="text/javascript" src="/static/bootstrap/js/bootstrap-dropdown.js"></script><script type="text/javascript" src="/static/bootstrap/js/bootstrap-tab.js"></script><script type="text/javascript" src="/static/bootstrap/js/bootstrap-alert.js"></script><!--<script type="text/javascript" src="/static/js/tablesorter/jquery.tablesorter.js"></script>-->
<div id="header"><div id="logo"><a class="no-hover" href="/"><img src="[% logo %]" alt="Hydra Logo" /></a></div>[% PROCESS topbar.tt %][% PROCESS contextbar.tt %]
<div class="navbar navbar-fixed-top"><div class="navbar-inner"><div class="container"><a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></a><a class="brand" href="[% c.uri_for(c.controller('Root').action_for('index')) %]">Hydra</a><div class="nav-collapse">[% PROCESS topbar.tt %]</div><!--/.nav-collapse --></div>
[% BLOCK makeLinkWrapped %]<li [% IF curUri == uri %]class="active"[% END %]><div class="title"><a href="[% uri %]">[% title %]</a></div>[% content %]</li>[% END %][% BLOCK menuItem %]<li [% IF "${root}${curUri}" == uri %]class="active"[% END %]><a href="[% uri %]">[% title %]</a></li>[% END %][% BLOCK makeLink -%][% INCLUDE makeLinkWrapped content="" -%][% END %][% BLOCK makeSubMenu %][% extra = collapsed ? "collapsed" : "" %]<div id="left-title">[% title %]</div><ul id="left-menu">[% content %]</ul>[% END %][% IF project || admin %]<div id="left-bar">[% IF project %][% WRAPPER makeSubMenu title="Project" collapsed=(jobset || job) %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('view'), [project.name]) title = "Overview" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('releases'), [project.name]) title = "Releases" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('all'), [project.name]) title = "All builds" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('jobstatus'), [project.name]) title = "Job status" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('errors'), [project.name]) title = "Errors" %][% END %][% END %][% IF jobset %][% WRAPPER makeSubMenu title="Jobset" collapsed=job %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('index'), [project.name, jobset.name])title = "Overview" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('evals'), [project.name, jobset.name])title = "Evaluations" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('all'), [project.name, jobset.name])title = "All builds" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('jobstatus'), [project.name, jobset.name])title = "Job status" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('errors'), [project.name, jobset.name])title = "Errors" %][% END %][% END %][% IF job %][% WRAPPER makeSubMenu title="Job" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('overview'), [project.name, jobset.name, job.name])title = "Overview" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('all'), [project.name, jobset.name, job.name])title = "All builds" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('jobstatus'), [project.name, jobset.name, job.name])title = "Job status" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('errors'), [project.name, jobset.name, job.name])title = "Errors" %][% END %][% END %][% IF admin %][% WRAPPER makeSubMenu title="Admin" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Admin').action_for('machines'))title = "Machines" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Admin').action_for('managenews'))title = "News" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Admin').action_for('users'))title = "Users" %][% END %][% END %]</div>[% END %]
<p><b>[% INCLUDE renderDateTime timestamp=i.createtime %]</b> <tt>by [% i.author.fullname %]</tt> <br/>[% contents.replace('\n','<br />\n') %]
<h4 class="alert-heading">[% INCLUDE renderDateTime timestamp=i.createtime %] by [% i.author.fullname %]</h4>[% contents.replace('\n','<br />\n') %]
[% IF create %]<h1>New Project</h1>[% ELSE %]<h1>Project <tt>[% project.name %]</tt></h1>[% END %]<div id="generic-tabs"><ul>
<ul id="tab" class="nav nav-tabs">
<li><a href="#tabs-views">Views</a></li><li><a href="#tabs-channels">Channels</a></li><!-- <li><a href="#tabs-statistics">Statistics</a></li> -->
<li><a href="#tabs-views" data-toggle="tab">Views</a></li><li><a href="#tabs-channels" data-toggle="tab">Channels</a></li>
<td align="right"><div class="[% class %]">[% successrate FILTER format('%d') %]%</div>
<td><span class="[% class %]">[% successrate FILTER format('%d') %]%</span></td><td>[% IF j.get_column('nrsucceeded') > 0 %]<span class="label label-success">[% j.get_column('nrsucceeded') %]</span>[% END %][% IF j.get_column('nrfailed') > 0 %]<span class="label label-important">[% j.get_column('nrfailed') %]</span>[% END %]
<td>[ [% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('force_eval'), project.name, j.name) content = "Evaluate" confirmmsg = ("Are you sure you want to force evaluation of jobset " _ project.name _ ":" _ j.name _ "?") %]| [% IF j.hidden %][% INCLUDE maybeLink uri = c.uri_for('/jobset' project.name j.name 'unhide') content = "Unhide" %]
<td>[% INCLUDE maybeButton uri = c.uri_for(c.controller('Admin').action_for('force_eval'), project.name, j.name) content = "Evaluate" confirmmsg = ("Are you sure you want to force evaluation of jobset " _ project.name _ ":" _ j.name _ "?") %][% IF j.hidden %][% INCLUDE maybeButton uri = c.uri_for('/jobset' project.name j.name 'unhide') content = "Unhide" %]
[%#<div id="tabs-statistics"><h2>Statistics</h2>[% INCLUDE showBuildStats % ]</div>%]
body {font-family: sans-serif;background: white;margin: 2em 1em 2em 1em;}#logo img {height: 6em;}img {border-style: none;}a { text-decoration: none;}a:link { color: #0048b3; }a:visited { color: #002a6a; }a.no-hover:hover { background: none; }a:hover, a:visited:hover { text-decoration: underline;}a.smallLink {font-size: 60%;vertical-align: top;}a#error-link {color: red;}table {empty-cells: show;border-collapse: collapse;text-align: left;}th, td {border: 1px solid #dddddd;vertical-align: top;}th {background-color: #E6EEEE;}th.subheader {background-color: #f0f0f8;font-size: 120%;text-align: center;font-weight: normal;}table.tablesorter:not(.clean) tr:nth-child(even) {background-color: #efefef;}table.tablesorter:not(.clean) tr:nth-child(odd) {background-color: #ffffff;}tr.clickable:hover {background-color: #E6EEFF;cursor: pointer;}td.centered {text-align: center;}td.right {text-align: right;}.layoutTable td, .layoutTable th {border-style: none;}table.tablesorter thead tr .header {background-image: url(/static/js/tablesorter/themes/blue/bg.gif);background-repeat: no-repeat;background-position: center right;cursor: pointer;}table.tablesorter thead tr .headerSortUp {background-image: url(/static/js/tablesorter/themes/blue/asc.gif);}table.tablesorter thead tr .headerSortDown {background-image: url(/static/js/tablesorter/themes/blue/desc.gif);}table.tablesorter thead tr .headerSortDown, table.tablesorter thead tr .headerSortUp {background-color: #D6DDDD;}table.tablesorter thead tr th {padding-right: 1.5em;}#generic-tabs li {height : 30px;font-size : 90%;}#generic-tabs div {font-size : 90%;}h1, h2, h3 {font-weight: bold;color: #002a70;}ul.productList {list-style: none;padding-left: 1em;}ul.productList li {margin-top: 1em;}.productDetails {display: none;margin-top: 1em;margin-bottom: 1em;margin-left: 3em;}tr:nth-child(even).runningBuild {background-color: #d8ffd8 !important;}tr:nth-child(odd).runningBuild {background-color: #e8ffe8 !important;}.disabledBuild {background-color: #ffc0c0 !important;}.error-msg {color: red;white-space: pre-wrap;}.error {color: red;font-weight: bold;}pre {margin-left: 1.5em;margin-right: 1.5em;}pre.buildlog {border: 1px solid black;padding: 0.3em;white-space: pre-wrap;}pre.taillog {border: 3px solid darkblue;padding: 0.3em;white-space: pre-wrap;background: black;color: #ffffff;}div.buildlog {border: 1px solid black;padding: 0.3em;}.multiLineMsg {padding: 0em;margin: 0em;white-space: pre-wrap;}.template {display: none;}div.help {border: solid black 1px;padding-left: 1em;padding-right: 1em;}div.help pre {padding-left: 1.5em;color: #400000;}th.releaseSetJobName {font-size: 60%;padding: 0 0 0 0;}input.string {font-family: sans-serif;font-size: 100%;background-color: #fffff0;width: 20em;}input.shortString {width: 7em;}input.longString {width: 40em;
.logTreeToggle {text-decoration: none;font-family: monospace;font-size: larger;
select {background-color: #fffff0;}button {background-color: #f0f0e0;}form.inline {display: inline;}.red {color: red;}.orange {color: orange;}.green {color: green;}.newsbar {background-color:#D9E3EA;border:1px solid #999999;float:right;font-size:x-small;margin:0 0 0.5em 0.5em;overflow:hidden;padding:0.5em;width:30em;}
[% WRAPPER makeSubMenu title="Hydra" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Root').action_for('index'))title = "Projects" %]
[% BLOCK makeLinkWrapped %]<li [% IF curUri == uri %]class="active"[% END %]><a href="[% uri %]">[% title %]</a>[% content %]</li>[% END %][% BLOCK makeLink -%][% INCLUDE makeLinkWrapped content="" -%][% END %]<ul class="nav" id="top-menu">
title = "All builds" %][% IF project || admin %][% IF project %][% WRAPPER makeSubMenu title=("Project: " _ project.name) collapsed=(jobset || job) %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('view'), [project.name]) title = "Overview" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('releases'), [project.name]) title = "Releases" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('all'), [project.name]) title = "All builds" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('jobstatus'), [project.name]) title = "Job status" %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('errors'), [project.name]) title = "Errors" %][% IF c.check_user_roles('admin') %]<li class="divider"></li>[% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('create_jobset'), [project.name]) title = "Create new jobset" %][% INCLUDE menuItem uri = c.uri_for('/project' project.name 'edit') title="Edit project" %][% END %][% END %][% END %][% IF jobset %][% WRAPPER makeSubMenu title=("Jobset: " _ jobset.name) collapsed=job %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('index'), [project.name, jobset.name])title = "Overview" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('evals'), [project.name, jobset.name])title = "Evaluations" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('all'), [project.name, jobset.name])title = "All builds" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('jobstatus'), [project.name, jobset.name])title = "Job status" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Jobset').action_for('errors'), [project.name, jobset.name])title = "Errors" %][% IF c.check_user_roles('admin') %]<li class="divider"></li>[% INCLUDE menuItem uri = c.uri_for('/jobset' project.name jobset.name 'edit') title="Edit jobset" %][% INCLUDE menuItem uri = c.uri_for('/jobset' project.name jobset.name 'clone') title="Clone jobset" %][% END %][% END %][% END %][% IF job %][% WRAPPER makeSubMenu title=("Job: " _ job.name) %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('overview'), [project.name, jobset.name, job.name])title = "Overview" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('all'), [project.name, jobset.name, job.name])
[% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('jobstatus'), [project.name, jobset.name, job.name])title = "Job status" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Job').action_for('errors'), [project.name, jobset.name, job.name])title = "Errors" %]<li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('users')) content = "Manage users" %]</li><li>[% INCLUDE maybeLink uri = c.uri_for(c.controller('Admin').action_for('news')) content = "Manage news" %]</li>[% END %][% END %][% END %][% IF c.user_exists %][% IF c.check_user_roles('admin') %][% WRAPPER makeSubMenu title="Admin" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Admin').action_for('index'))title = "Machine status" %]<li class="divider"></li>[% INCLUDE makeLinkuri = c.uri_for(c.controller('Admin').action_for('machines'))title = "Manage machines" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Admin').action_for('managenews'))title = "Manage news" %][% INCLUDE makeLinkuri = c.uri_for(c.controller('Admin').action_for('users'))title = "Manage users" %]<li class="divider"></li>[% INCLUDE maybeLinkuri = c.uri_for(c.controller('Admin').action_for('clearfailedcache'))content = "Clear failed builds cache"confirmmsg = "Are you sure you want to clear the failed builds cache?" %][% INCLUDE maybeLinkuri = c.uri_for(c.controller('Admin').action_for('clear_queue_non_current'))content = "Clear all non-running old builds from queue."confirmmsg = "Are you sure you want to clear the queue?"%]<li class="divider"></li>[% IF c.check_user_roles('admin') %][% INCLUDE menuItem uri = c.uri_for(c.controller('Project').action_for('create')) title = "Create new project" %][% END %][% END %][% END %][% END %]
</ul>